## Memo
- [[OpenTracing]]
## Abstract
今日、ソフトウェア業界では、大規模なソフトウェア・プロジェクトをマイクロサービス・ベースのアーキテクチャによって疎結合のモジュールに分割する傾向がこれまで以上に顕著になっている。これは、スケーラビリティ、独立性、デプロイの小規模化と高速化、障害分離の向上、柔軟性などの利点があるためだ。その一方で、マイクロサービス・アーキテクチャの成長に伴い、新たな複雑性が生じていることにも留意する必要がある。システムの保守・サポートに伴う複雑さ、すなわち機能的・非機能的モニタリング(異常監視・検知)に対応するためには、成熟したDevOpsチームが必要だ。この課題は、ソフトウェア開発の多くの時間を監視と異常の特定に費やすことにつながる。既存のアプローチは、異常を特定するのに十分な精度がなく、また、特定できたとしても、異常のカテゴリーを特定することができない。本研究における我々のアプローチは、機械学習アルゴリズムの助けを借りて分散トレースを使用し、パフォーマンス異常、各異常の正確な位置、およびそのカテゴリを予測することである。本研究では、マイクロサービスアーキテクチャに基づくソフトウェアを実装し、提案モデルを評価できるように、経時的な様々な異常(物理リソース、仮想リソース、データベース、アプリケーションなど)を作成した。得られたデータセットは公開されている。シミュレーションの結果、提案モデルは98%の精度で異常を特定でき、99%の精度でそのカテゴリを特定できた。