ElasticはElastic Common Schema(ECS)をOpenTelemetry(OTel)に供与、OTelベースのオブザーバビリティとセキュリティの導入促進に貢献

著者

Ken Exner

ecs-otel-announcement-1.jpeg

現在、スキーマが異なる複数のソースのデータがあると、ソフトウェアの問題を特定することや、問題の根本原因を把握することが困難になります。共通スキーマはデータの正規化に役立ち、オブザーバビリティソリューションとセキュリティソリューションにおけるデータの分析、視覚化、相関付けを改善できるため、根本原因分析の円滑化につながります。お客様やコミュニティ全体が標準化の恩恵を受けられるように、ElasticはElastic Common Schema(ECS)およびOpenTelemetry(OTel)に基づくメトリック、ログ、トレース、セキュリティイベントの共通スキーマを開発することを決定しました。  

ElasticはECSをOTelに供与し、共通スキーマの共同開発に取り組んでまいります。OTelはCloud Native Computing Foundation(CNCF)における2番目に優先されるプロジェクトであり、ソフトウェアのパフォーマンスと挙動を把握するためのテレメトリデータ(メトリック、ログ、トレース)を生成、収集、処理、エクスポートするために使用されるツール、API、SDKをまとめて提供します。Elasticは長年にわたり、オープンスタンダードを支持してきました。今回の貢献を通じて、Elasticは今後もコミュニティへの関与を継続し、拡大していきます。OpenTelemetryへのECSの供与によって、広く普及しているElastic Common Schemaに基づき、メトリック、ログ、トレース、セキュリティイベントに対応する完成度の高い実証済みのスキーマをOTelで実現したいと考えています。Elasticは今後もOTelと協力して、この共通スキーマを開発し、サポートしてまいります。

オープンソースコミュニティにもたらされる価値

ECSは、Elasticユーザーコミュニティの支援を受けて開発されたオープンソース仕様であり、Elasticsearchでイベントデータを格納する際に使用される共通フィールドセットを定義します。ECSを利用することで、管理コストとストレージコストを削減し、データの重複を防ぎ、運用効率を高めることができます。

同様に、OTelのセマンティック命名規則(SemConv)でも、さまざまな種類の運用やデータに対応する共通名が指定されています。OTel SemConvを使用するメリットは、共通の命名スキーマに従うことにあります。この命名スキーマを、OTelユーザーに対して、コードベース全体、複数のライブラリ、複数のプラットフォームで標準化することができます。

ECSとOTel SemConvの統合は、OTelの導入を促進し、オブザーバビリティとセキュリティの分野の継続的な進化と統合を促すことになります。 

オープンスタンダードに対する取り組み

共通スキーマの共同開発の目標は、ほとんどの主要システムに対応する、ベンダーに縛られないセマンティック命名規則を定義することです。ベンダー作成のコンポーネントまたはオープンソースのコンポーネント(HTTPアクセスログ、ネットワークログ、システムアクセス/認証ログなど)のサポートによって、OTelの相関付けがこのような新しいデータタイプにも拡張されます。ECSのコントリビューターによって、セマンティック命名規則の統合セットを定義する作業の大部分が既に完了しており、これをOTelに採用することができます。

ECSの供与によって、このエコシステムに次の優位性が生まれます。

  • オープンソースログに加えてベンダー生成ログにも対応する、標準性と統一性に優れたフォーマットを実現できる
  • OTel互換のオブザーバビリティおよびセキュリティを備えた製品やサービスに完全に対応した、すぐに活用できるログ統合をユーザーに提供できる
  • Kubernetesアプリケーションログ、システムログ、アプリケーションイントロスペクションイベントを十全にサポートすることで、OTelサポートをインフラストラクチャーにまで拡張する
  • アプリケーションとインフラストラクチャーにおけるオブザーバビリティテレメトリの定義を標準化し、オブザーバビリティのベンダー中立性を実現する

OTelがECSを採用したことで、OTelコレクターログレシーバーの作成者はメッセージで詳細なデータ定義を行えるようになり、データ品質を高め、OTelコレクターを業界におけるログコレクターのデファクトスタンダードとして確立するために貢献できます。.

ECSは、複数のユーザーから多数のタイプのテレメトリを収集するというユーザーニーズに対応できるよう進化しました。ECSの採用により、OTelのユーティリティがDevSecOpsまで大幅に拡張されます。

Elasticでは現在、Kubernetes(K8S)、Prometheus、Fluentd、Fluent Bit、Istioを始め、多数のCNCFプロジェクトをサポートしています。さらにElasticのアプリケーションパフォーマンス監視(APM)でもOTelがネイティブサポートされたことで、ElasticエージェントでもOTelエージェントでも、この双方の組み合わせでも、すべてのAPM機能を確実に利用することができます。ECSの供与、OTel SemConvとの継続的協力関係に加えて、Elasticでは言語SDK(OTel Swift、OTel Go、OTel Ruby、その他)など他のOTelプロジェクトにも継続的に貢献しており、OTelをオブザーバビリティとセキュリティのスタンダードとして確立することを目的として複数のSIG(Special Interest Group)に参加しています。

ElasticはOTelとの協力関係を強化し、ElasticコミュニティだけでなくOTelコミュニティ全体に利益をもたらすような方法でスキーマを統合する機会を得ることができました。

ElasticのOpenTelemetryサポートの詳細については、こちらを参照してください。また、プロジェクトへの貢献についてはこちらを参照してください。OpenTelemetryへのECSの供与についての詳細は、こちらのFAQを参照してください。