<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>ブログ on OpenTelemetry</title><link>https://opentelemetry.io/ja/blog/</link><description>Recent content in ブログ on OpenTelemetry</description><generator>Hugo</generator><language>ja</language><atom:link href="https://opentelemetry.io/ja/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>OpenTelemetry Goのコンパイル時の計装v1の発表</title><link>https://opentelemetry.io/ja/blog/2026/go-compile-time-instrumentation-v1/</link><pubDate>Mon, 20 Jul 2026 21:41:39 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/go-compile-time-instrumentation-v1/</guid><description>&lt;p&gt;Java、Python、Node.js、.NETで開発している場合、コードを編集せずにOpenTelemetryをアプリケーションへ追加することが長年可能で、起動時にエージェントをアタッチすれば、テレメトリーの送信が始まります。
Goは例外でした。
Goプログラムは、起動時にフックできるランタイムを持たない単一の静的バイナリにコンパイルされるため、Go開発者は手動で計装するか、プロセス外のeBPFエージェントを使用する必要がありました。&lt;/p&gt;
&lt;p&gt;この隔たりは埋まりつつあります。
OpenTelemetryコミュニティは、&lt;a href="https://github.com/open-telemetry/opentelemetry-go-compile-instrumentation" target="_blank" rel="noopener" class="external-link"&gt;OpenTelemetry Go Compile-Time Instrumentation&lt;/a&gt;の最初の安定版リリースを発表します。
2025年の初めに&lt;a href="https://opentelemetry.io/blog/2025/go-compile-time-instrumentation/"&gt;このSIGを発表&lt;/a&gt;した際、AlibabaとDatadogは、Goをビルド時に計装する統一されたベンダー中立の方法を構築するために協力しました。
v1はこのプロジェクトにとって最初の安定版リリースです。&lt;/p&gt;
&lt;p&gt;Goサービスをビルドして実行している場合、バイナリまたはコンテナイメージのビルド方法を1行変更するだけで、コードを変更せずにアプリケーションとその依存関係のOpenTelemetryトレースとメトリクスを取得できます。
プラットフォームエンジニアやSREにとっては、各チームが独自にコードを計装するのを待たずに、フリート全体のサービスへオブザーバビリティを追加できることを意味します。&lt;/p&gt;
&lt;h2 id="what-is-go-compile-time-instrumentation"&gt;Goのコンパイル時の計装とは&lt;a class="td-heading-self-link" href="#what-is-go-compile-time-instrumentation" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Goは単一の静的バイナリにコンパイルされるため、長い間、インタプリタ言語よりも自動計装が困難でした。
このプロジェクトは、ビルド中に標準のGoツールチェーン（&lt;code&gt;-toolexec&lt;/code&gt;メカニズム経由）にフックし、コード、依存関係、標準ライブラリがコンパイルされる際にOpenTelemetry計装を注入します。
別個のエージェントはなく、ランタイムでアタッチするものもありません。&lt;/p&gt;
&lt;p&gt;つまり、ソースコードを変更せずにテレメトリーを取得でき、計装はバイナリに直接コンパイルされます。
アプリケーションコードは計装に関する懸念から解放され、自分が所有していないサードパーティライブラリもカバーされます。&lt;/p&gt;
&lt;h2 id="key-capabilities-in-v1"&gt;v1の主な機能&lt;a class="td-heading-self-link" href="#key-capabilities-in-v1" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ゼロコード計装&lt;/strong&gt;: 手動でコードを変更せずに、アプリケーションとその依存関係を計装します。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;コンパイル時の注入、ランタイムオーバーヘッドの追加なし&lt;/strong&gt;: 計装はランタイムでアタッチされるのではなく、バイナリに組み込まれます。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;サードパーティと標準ライブラリのカバレッジ&lt;/strong&gt;: 自分が所有していない依存関係と標準ライブラリパッケージを計装します。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;v1でサポートされる計装&lt;/strong&gt;: &lt;code&gt;net/http&lt;/code&gt;、&lt;code&gt;database/sql&lt;/code&gt;、gRPC、Redis、Goランタイムメトリクスを含む一般的なライブラリとフレームワークをサポートしており、さらに計装が定期的に追加されています。
完全な最新リストは、&lt;a href="https://opentelemetry.io/ja/docs/zero-code/go/compile-time/supported-libraries/"&gt;サポートされるライブラリ&lt;/a&gt;を参照してください。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ルールベースで拡張可能&lt;/strong&gt;: SIGの計装ルール形式を通じて、新しいライブラリのサポートを追加できます。
&lt;a href="https://github.com/open-telemetry/opentelemetry-go-compile-instrumentation/blob/v1.0.0/docs/instrument-guide.md" target="_blank" rel="noopener" class="external-link"&gt;計装ガイド&lt;/a&gt;と&lt;a href="https://github.com/open-telemetry/opentelemetry-go-compile-instrumentation/blob/v1.0.0/docs/rules.md" target="_blank" rel="noopener" class="external-link"&gt;ルールリファレンス&lt;/a&gt;を参照してください。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;セマンティック規約への準拠&lt;/strong&gt;: 送信されるテレメトリーは、現在のOpenTelemetryセマンティック規約に従います。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CI/CDに対応&lt;/strong&gt;: 開発時にツールを実行するか、ビルドパイプラインに組み込めます。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="getting-started"&gt;はじめに&lt;a class="td-heading-self-link" href="#getting-started" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;このプロジェクトは、標準のGoツールチェーンをラップする&lt;code&gt;otelc&lt;/code&gt;というコマンドラインツールを提供します。
ビルドの変更は1行だけで、以前 &lt;code&gt;go build&lt;/code&gt; を実行していた場所で &lt;code&gt;otelc go build&lt;/code&gt; を実行します。
&lt;code&gt;go&lt;/code&gt; の後に続くすべての引数はツールチェーンに転送されるため、ビルドの残りの部分は変わりません。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;go install&lt;/code&gt; でインストールします。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;go install go.opentelemetry.io/otelc/tool/cmd/otelc@latest
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;次に、これを介してアプリケーションをビルドします。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;otelc go build -o myapp .
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ビルドコマンドを変更したくない場合は、モジュールを準備するために一度 &lt;code&gt;otelc setup&lt;/code&gt; を実行し、続いて、&lt;code&gt;GOFLAGS&lt;/code&gt;を通じてGoツールチェーンを&lt;code&gt;otelc&lt;/code&gt;に向け、通常どおり&lt;code&gt;go build&lt;/code&gt;を実行します。&lt;/p&gt;</description></item><item><title>Dapr の非同期ワークフローオブザーバビリティの改善</title><link>https://opentelemetry.io/ja/blog/2026/dapr-workflow-observability/</link><pubDate>Sun, 19 Jul 2026 17:27:12 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/dapr-workflow-observability/</guid><description>&lt;p&gt;この記事では、クラウドネイティブコミュニティのコントリビューターたちが協力して &lt;a href="https://dapr.io/" target="_blank" rel="noopener" class="external-link"&gt;Dapr&lt;/a&gt; の OpenTelemetry 統合を強化した経緯、特に非同期ワークフローに関する取り組みについて紹介します。
また、&lt;a href="https://github.com/open-telemetry/weaver" target="_blank" rel="noopener" class="external-link"&gt;OpenTelemetry Weaver&lt;/a&gt; を使用して Dapr を OpenTelemetry セマンティック規約に準拠させる継続的な取り組みや、このコラボレーションが他の CNCF プロジェクトにとって有用な事例となりうることについても触れます。
この作業は正式なイニシアチブとして始まったわけではありません。
議論、実験、そしてテレメトリーをより理解しやすく、エコシステム全体でより一貫性のあるものにするという共通の目標を通じて生まれたものです。&lt;/p&gt;
&lt;h2 id="the-challenges-of-propagating-traces-throughout-complex-orchestrations"&gt;複雑なオーケストレーション全体にわたるトレース伝搬の課題&lt;a class="td-heading-self-link" href="#the-challenges-of-propagating-traces-throughout-complex-orchestrations" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://docs.dapr.io/developing-applications/building-blocks/workflow/workflow-overview/" target="_blank" rel="noopener" class="external-link"&gt;Dapr のワークフローエンジン&lt;/a&gt;は、長時間実行される同期・非同期オーケストレーションを実装するための簡単な方法を提供します。
ワークフローオーケストレーションは Dapr サイドカー内で実行され、ワークフローとアクティビティのコードは Dapr SDK を使用してアプリケーション内で実行されます。
これらの間の通信は、長時間維持される gRPC ストリームを介して行われます。&lt;/p&gt;
&lt;p&gt;これは効率的ですが、W3C Trace Contextの伝搬を困難にします。
HTTP やUnary gRPC 呼び出しは、各リクエストに traceparent および tracestate ヘッダーを自然に運びます。
長時間維持されるストリームはそうではありません。
ストリームが開かれると、ワークフローのステップは新しいメタデータを付与できません。
これは、ワークフローエンジンがサイドカー内で正しいコンテキストを持つスパンを作成できたとしても、アクティビティメッセージが親コンテキストなしでアプリケーションに到達することを意味します。
その結果、アクティビティ内のアウトバウンド呼び出しは独自のトレースを作成します。&lt;/p&gt;
&lt;p&gt;結果として断片化が生じます。
ワークフローのスパン、アクティビティのスパン、ユーザーレベルのスパンがトレーシングバックエンドに表示されますが、一貫した階層を形成しません。&lt;/p&gt;
&lt;img src="https://opentelemetry.io/blog/2026/dapr-workflow-observability/dapr-workflow.png" alt="Dapr ワークフロー gRPC ストリーミング"&gt;&lt;p&gt;この図は問題を示しています。
ワークフローエンジンがスパンを生成しているにもかかわらず、gRPC ストリーミング境界でコンテキストが途切れるため、アクティビティコードはワークフローのトレースに接続できません。&lt;/p&gt;
&lt;h2 id="the-complexities-of-a-typical-workflow-orchestration"&gt;典型的なワークフローオーケストレーションの複雑さ&lt;a class="td-heading-self-link" href="#the-complexities-of-a-typical-workflow-orchestration" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;ワークフローは表面上は単純に見えますが、トレースを始めると、構成要素の多さが明らかになります。
ワークフローは単一のリクエストではありません。
決定と状態遷移の長期にわたるシーケンスであり、それぞれが異なるダウンストリームシステムと連携する可能性があります。
これらの連携の一部は同期的です。
たとえば、アクティビティが外部サービスを呼び出して結果を待つ場合です。
その他は非同期的で、作業のスケジューリング、外部シグナルの待機、タイマーの発火待ちなどがあります。
これらの違いは、リクエストがシステムをどのように流れるかを変え、トレースがどのように見えるべきかを決定するため、重要です。&lt;/p&gt;
&lt;p&gt;すべてのワークフローは独自のアイデンティティも持っています。
ワークフローインスタンス ID は、時間的に離れていてもすべてのステップを概念的に結びつけます。
ワークフローは数秒から数時間にわたって実行される場合があります。
障害後に再ハイドレードされたり、サーバー再起動後に再開されたりすることもあります。
永続的実行とは、ワークフローエンジンが状態を永続化し、イベントをリプレイし、外部条件が変化したときにワークフローを進めることを意味します。
トレーシングの観点からすると、これは通常のリクエストやバックグラウンドジョブとは大きく異なります。
単一のワークフロー実行は、多くのネットワーク呼び出し、待機期間、リトライ、部分的な進行にまたがることがあります。&lt;/p&gt;</description></item><item><title>Adobe の OpenTelemetry パイプラインの内側: 大規模環境におけるシンプルさ</title><link>https://opentelemetry.io/ja/blog/2026/devex-adobe/</link><pubDate>Fri, 17 Jul 2026 17:10:25 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/devex-adobe/</guid><description>&lt;p&gt;Developer Experience SIG は継続的なシリーズの一環として、さまざまな組織の実際の OpenTelemetry Collector デプロイメントについてインタビューを行い、実践的な教訓をより広いコミュニティと共有しています。
この記事では Adobe を取り上げます。
Adobe はグローバルなソフトウェア企業であり、そのオブザーバビリティチームは大規模環境でのシンプルさを追求した OpenTelemetry ベースのテレメトリーパイプラインを構築しています。
シグナルの種類ごとに数千の Collector が同社のインフラストラクチャ全体で稼働しています。&lt;/p&gt;
&lt;h2 id="organizational-structure"&gt;組織構造&lt;a class="td-heading-self-link" href="#organizational-structure" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Adobe の中央オブザーバビリティチームは、全社にオブザーバビリティインフラストラクチャを提供する責任を担っています。
しかし、シニアソフトウェアエンジニアの &lt;a href="https://github.com/bogdan-st" target="_blank" rel="noopener" class="external-link"&gt;Bogdan Stancu&lt;/a&gt; が説明したように、Adobe の買収の歴史により、全体が完全に統合されているわけではありません。
一部の大規模プロダクトグループは専用のオブザーバビリティチームを持っており、中央チームは主要なプロバイダーとして機能しています。&lt;/p&gt;
&lt;p&gt;OpenTelemetry ベースのパイプラインは、主に新しいアプリケーションとデプロイメント向けに設計された新しい選択肢として、既存のモニタリングソリューションと並行して導入されました。
導入は任意であり、強制されていません。
既存のモニタリングが確立されたアプリケーションは移行されていません。&lt;/p&gt;
&lt;h2 id="opentelemetry-adoption"&gt;OpenTelemetry の導入&lt;a class="td-heading-self-link" href="#opentelemetry-adoption" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;OpenTelemetry を導入する決定は、プロジェクトの機能とチームの目標の一致によって推進されました。
オブザーバビリティチームは、Adobe の多様な技術ランドスケープに対応し、複数のバックエンドをサポートし、サービスチームが簡単に導入できるソリューションを必要としていました。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;「私たちが求めていたすべてと合致していました」と Bogdan は語りました。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href="https://opentelemetry.io/ja/docs/platforms/kubernetes/operator/"&gt;OpenTelemetry Operator&lt;/a&gt;、Collector のコンポーネントモデル、そしてコミュニティの Helm チャートが、個々のサービスチームに深い OpenTelemetry の専門知識を要求せずにスケールできる、プラットフォームレベルのオブザーバビリティ基盤の構成要素を提供しました。&lt;/p&gt;
&lt;h2 id="architecture-a-three-tier-collector-pipeline"&gt;アーキテクチャ: 3層の Collector パイプライン&lt;a class="td-heading-self-link" href="#architecture-a-three-tier-collector-pipeline" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Adobe の Collector アーキテクチャは 3 層設計に従っています。
2つの Collector を含むユーザー向け Helm チャート、シグナルごとの Collector デプロイメントを持つ集中管理の名前空間、そしてオブザーバビリティバックエンドです。&lt;/p&gt;
&lt;img src="https://opentelemetry.io/blog/2026/devex-adobe/adobe-architecture.png" alt="Adobe のアーキテクチャ図"&gt;&lt;h3 id="tier-1-the-user-helm-chart"&gt;第1層: ユーザー Helm チャート&lt;a class="td-heading-self-link" href="#tier-1-the-user-helm-chart" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;オブザーバビリティチームは、サービスチームが自身の名前空間にデプロイする Helm チャートを提供しています。
このチャートは2つの Collector を作成します。&lt;/p&gt;</description></item><item><title>10,000件の Slack メッセージが明らかにする OpenTelemetry 導入の課題</title><link>https://opentelemetry.io/ja/blog/2026/slack-community-insights/</link><pubDate>Fri, 17 Jul 2026 17:09:03 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/slack-community-insights/</guid><description>&lt;img src="https://opentelemetry.io/blog/2026/slack-community-insights/cover.png" alt="時間経過による Slack メッセージ量を示すカバー画像"&gt;&lt;p&gt;OpenTelemetry コミュニティはここ数年で大きく成長し、その成長とともにコミュニティの会話の中に貴重なインサイトが隠されています。
私たちは、&lt;a href="https://slack.cncf.io/" target="_blank" rel="noopener" class="external-link"&gt;CNCF Slack&lt;/a&gt; の &lt;a href="https://cloud-native.slack.com/archives/C01N6P7KR6W" target="_blank" rel="noopener" class="external-link"&gt;&lt;code&gt;#otel-collector&lt;/code&gt;&lt;/a&gt; チャンネルと &lt;a href="https://cloud-native.slack.com/archives/CJFCJHG4Q" target="_blank" rel="noopener" class="external-link"&gt;&lt;code&gt;#opentelemetry&lt;/code&gt;&lt;/a&gt; チャンネルから、2019年5月から2025年12月までの約10,000件のメッセージを分析しました。
ユーザーが最も頻繁に直面する課題、最も多くの議論を生むコンポーネント、そしてコミュニティがドキュメントやツールの改善を必要としている領域を明らかにすることが目的です。&lt;/p&gt;
&lt;h2 id="the-dataset"&gt;データセット&lt;a class="td-heading-self-link" href="#the-dataset" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;分析対象は、最もアクティブな2つの OpenTelemetry Slack チャンネルにまたがる9,966件のメッセージです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;#otel-collector&lt;/strong&gt;: 5,570件のメッセージ（56%）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;#opentelemetry&lt;/strong&gt;: 4,396件のメッセージ（44%）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;これらのメッセージはいくつかのカテゴリに分類されます。&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;カテゴリ&lt;/th&gt;
					&lt;th&gt;割合&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;質問&lt;/td&gt;
					&lt;td&gt;46.7%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;エラー報告&lt;/td&gt;
					&lt;td&gt;25.9%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;ディスカッション&lt;/td&gt;
					&lt;td&gt;23.3%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;設定&lt;/td&gt;
					&lt;td&gt;3.0%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;ヘルプ回答&lt;/td&gt;
					&lt;td&gt;1.0%&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;質問とエラー報告の割合が高く（合計72%超）、これらのチャンネルがコミュニティにとって重要なサポートリソースとして機能していることを示しています。
最も頻繁に登場するトピックは、実際の導入における課題を反映しています。&lt;/p&gt;
&lt;p&gt;類似メッセージをクラスタリングするために BERTopic を使用したトピックモデリングを適用し、次にセンチメントとフラストレーション指標を分析して、最も困難を引き起こすトピックを特定しました。
エラー報告、繰り返しのヘルプ要求、または混乱の表現を含むメッセージは、フラストレーション指標で高いスコアを記録しました。&lt;/p&gt;
&lt;h2 id="most-discussed-collector-components"&gt;最も議論された Collector コンポーネント&lt;a class="td-heading-self-link" href="#most-discussed-collector-components" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;トピックモデリングにより、コミュニティの議論を最も多く生む Collector コンポーネントについて明確なパターンが浮かび上がりました。
メッセージ量別の上位コンポーネントは次のとおりです。&lt;/p&gt;
&lt;h3 id="1-prometheus-receiver-and-exporter-498-messages-50"&gt;1. Prometheus レシーバーとエクスポーター（498件、5.0%）&lt;a class="td-heading-self-link" href="#1-prometheus-receiver-and-exporter-498-messages-50" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Prometheus との連携がコミュニティの議論を支配しています。
ユーザーからの質問が多いのは次の点です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;メトリクスをスクレイプするための Prometheus レシーバーの設定&lt;/li&gt;
&lt;li&gt;Prometheus リモートライトエクスポーターのセットアップ&lt;/li&gt;
&lt;li&gt;パイプラインにおけるメトリクスの型とメタデータの保持についての理解&lt;/li&gt;
&lt;li&gt;既存の Prometheus インフラストラクチャとの統合&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Prometheus が広く採用されていることを考えれば、これは当然のことです。
多くの組織が、既存の Prometheus セットアップと統合したり、そこから移行したりすることで OpenTelemetry への取り組みを始めています。
特にリモートライトエクスポーターは多用されており、チームが OpenTelemetry を収集と処理に採用しながら、引き続き Prometheus をストレージバックエンドとして使用できるようになります。&lt;/p&gt;</description></item><item><title>OpenTelemetry プロファイルがパブリックアルファに</title><link>https://opentelemetry.io/ja/blog/2026/profiles-alpha/</link><pubDate>Wed, 15 Jul 2026 20:56:30 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/profiles-alpha/</guid><description>&lt;p&gt;OpenTelemetry が初めてプロファイルを&lt;a href="https://opentelemetry.io/blog/2024/profiling/"&gt;紹介&lt;/a&gt;して以来、トレース、メトリクス、ログと並ぶ継続的な本番プロファイリングの統一された業界標準の構築に向けた勢いは増す一方です。
本日、Profiling SIG はプロファイルシグナルが正式に&lt;a href="https://github.com/open-telemetry/opentelemetry-specification/blob/v1.55.0/oteps/0232-maturity-of-otel.md#alpha" target="_blank" rel="noopener" class="external-link"&gt;パブリックアルファ&lt;/a&gt;に移行したことを発表します。
より広いコミュニティでの利用とフィードバックを受け入れる準備が整いました。&lt;/p&gt;
&lt;h2 id="production-profiling-for-all"&gt;すべての人に本番プロファイリングを&lt;a class="td-heading-self-link" href="#production-profiling-for-all" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;本番環境で低オーバーヘッドのパフォーマンスプロファイルを継続的に取得する手法は、&lt;a href="https://www.waldspurger.org/carl/papers/dcpi-sosp97.pdf" target="_blank" rel="noopener" class="external-link"&gt;数十年にわたって使われてきました&lt;/a&gt;。
本番インシデントのトラブルシューティングに役立ち、ソフトウェアを高速化することでユーザー体験を向上させ、同じ処理に必要なリソースを減らすことで計算コストを削減します。
歴史的に、JFR や pprof のようなフォーマットが普及していたにもかかわらず、継続的プロファイリングの共通フレームワークやプロトコルは業界に存在しませんでした。&lt;/p&gt;
&lt;p&gt;OpenTelemetry プロファイルにより、コミュニティとエコシステムのサポートに支えられた、真のベンダー中立性を備えた本番プロファイリングの業界標準を導入します。
これを実現するにはいくつかのコンポーネントがあります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;プロファイリングデータの統一されたデータ&lt;a href="https://github.com/open-telemetry/opentelemetry-proto/blob/v1.10.0/opentelemetry/proto/profiles/v1development/profiles.proto" target="_blank" rel="noopener" class="external-link"&gt;表現&lt;/a&gt;を作成し、pprof のような既存フォーマットとの互換性を確保する。&lt;/li&gt;
&lt;li&gt;新しいリファレンス eBPF ベースのプロファイラー&lt;a href="https://github.com/open-telemetry/opentelemetry-ebpf-profiler" target="_blank" rel="noopener" class="external-link"&gt;実装&lt;/a&gt;を導入する。&lt;/li&gt;
&lt;li&gt;プロファイルを OpenTelemetry エコシステムの自然な一部にする（OTel Collector との統合など）。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;上記のすべてがアルファリリースで大幅に改善されました。
ここからは、私たちが取り組んできた内容を紹介します。&lt;/p&gt;
&lt;h2 id="standardizing-the-data-representation"&gt;データ表現の標準化&lt;a class="td-heading-self-link" href="#standardizing-the-data-representation" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;統一されたプロファイリングフォーマットの作成は、多様な環境にわたる業界標準として機能する必要があるため、大きな課題です。
ワーキンググループは多くの要件を調整する必要がありました。
サンプリングとトレーシング、ネイティブランタイムとインタプリタランタイム、ワイヤー/メモリーサイズの効率性とデータの可読性のトレードオフ、その他同様の側面です。&lt;/p&gt;
&lt;p&gt;結果として生まれたプロファイルアルファ&lt;a href="https://github.com/open-telemetry/opentelemetry-proto/blob/v1.10.0/opentelemetry/proto/profiles/v1development/profiles.proto" target="_blank" rel="noopener" class="external-link"&gt;フォーマット&lt;/a&gt;は、プロファイリングデータを効率的にキャプチャできるバランスの取れた機能セットを提供します。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;スタック表現は重複排除されており、各ユニークなコールスタックは一度だけ格納されるため、多様なプロファイリングデータを効率的にエンコードできます。&lt;/li&gt;
&lt;li&gt;その他の一般的なエンティティのディクショナリテーブルにより、効率的なデータ正規化も可能です。&lt;/li&gt;
&lt;li&gt;主に集約データのエンコードに焦点を当てていますが、個々の（サンプリングされた場合でも）オフ CPU イベントの記録などのユースケースをサポートするために、タイムスタンプ付きイベントデータのキャプチャも可能です。&lt;/li&gt;
&lt;li&gt;リソース属性により、追加情報でデータモデルを拡張できます。
文字列ディクショナリのサポートにより、プロファイリングデータを関連するログ、メトリクス、トレースを出力した同じ&lt;a href="https://opentelemetry.io/ja/docs/concepts/resources/"&gt;リソース&lt;/a&gt;に効率的に（&lt;a href="https://github.com/open-telemetry/sig-profiling/blob/ec8a031b86205e905a1211e162f6f7691a6ff5d2/otlp-bench/reports/2025-11-27-gh733-resource-attr-dict/README.md?from_branch=main" target="_blank" rel="noopener" class="external-link"&gt;ワイヤーサイズ40%削減&lt;/a&gt;）リンクできます。&lt;/li&gt;
&lt;li&gt;プロファイルサンプルは、さらにトレーシングの &lt;code&gt;trace_id&lt;/code&gt; / &lt;code&gt;span_id&lt;/code&gt; 属性と関連付けることができ、データのクロスシグナル相関を実現します。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/open-telemetry/semantic-conventions" target="_blank" rel="noopener" class="external-link"&gt;セマンティック規約&lt;/a&gt;が、最も一般的なプロファイリング固有の属性の定義を提供します。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;pprof フォーマットに着想を得て &lt;code&gt;pprof&lt;/code&gt; のメンテナーと共同で開発された OTLP プロファイルは、OpenTelemetry エコシステムの幅広い要件に対応する独立した標準へと進化しました。
元の pprof フォーマットのデータは、情報の損失なく OTLP プロファイルとの間でラウンドトリップ変換できます。
この目的のために、シームレスな相互運用性を確保する新しいネイティブ&lt;a href="https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/cc10682103a84a8d7700d6e64c469d7a1469af49/pkg/translator/pprof?from_branch=main" target="_blank" rel="noopener" class="external-link"&gt;トランスレーター&lt;/a&gt;が含まれるようになりました。&lt;/p&gt;
&lt;p&gt;データ品質と導入の容易さを確保するため、&lt;a href="https://github.com/open-telemetry/sig-profiling/tree/3ee8c0d4f303285cb72e0b3b934f8b20b209edaa/profcheck?from_branch=main" target="_blank" rel="noopener" class="external-link"&gt;適合性チェッカーツール&lt;/a&gt;もリリースします。
このツールにより、エクスポートされたプロファイルが OpenTelemetry プロファイルの技術仕様とセマンティック規約に準拠しているかを検証できます。&lt;/p&gt;
&lt;h2 id="frictionless-insights-with-the-ebpf-profiling-agent"&gt;eBPF プロファイリングエージェントによる手間のないインサイト&lt;a class="td-heading-self-link" href="#frictionless-insights-with-the-ebpf-profiling-agent" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Elastic による &lt;a href="https://github.com/open-telemetry/opentelemetry-ebpf-profiler" target="_blank" rel="noopener" class="external-link"&gt;eBPF プロファイリングエージェント&lt;/a&gt;の OpenTelemetry への&lt;a href="https://opentelemetry.io/blog/2024/elastic-contributes-continuous-profiling-agent/"&gt;寄贈&lt;/a&gt;と OTel Collector との統合により、最も広く使われている言語ランタイムをサポートした、追加の計装なしの低オーバーヘッドなシステム全体の Linux 継続的プロファイリングが、すべての OpenTelemetry ユーザーに提供されるようになりました。&lt;/p&gt;</description></item><item><title>小さな環境変数の旅路</title><link>https://opentelemetry.io/ja/blog/2026/spring-boot-declarative-config/</link><pubDate>Wed, 15 Jul 2026 20:17:50 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/spring-boot-declarative-config/</guid><description>&lt;p&gt;OpenTelemetry の
&lt;a href="https://opentelemetry.io/ja/docs/zero-code/java/spring-boot-starter/"&gt;Spring Boot スターター&lt;/a&gt;は、バージョン 2.26.0 から宣言的設定をサポートするようになりました。
これは &lt;a href="https://opentelemetry.io/ja/blog/2025/declarative-config/"&gt;Java エージェントが 2025 年後半に導入した&lt;/a&gt;のと同じ YAML スキーマを &lt;code&gt;application.yaml&lt;/code&gt; の中に埋め込むものです。
この投稿では、1 つの環境変数 &lt;code&gt;OTEL_SERVICE_NAME=petclinic&lt;/code&gt; がこの新しい仕組みの中で何をするのかを追跡し、どこに継ぎ目があるのかを明らかにします。&lt;/p&gt;
&lt;div class="td-alert td-alert--md alert alert-tip" role="alert"&gt;&lt;div class="td-alert-heading alert-heading" role="heading"&gt;お急ぎですか？&lt;/div&gt;
 &lt;div class="td-alert-body"&gt;
 &lt;p&gt;&lt;a href="https://opentelemetry.io/ja/docs/zero-code/java/spring-boot-starter/declarative-configuration/"&gt;Spring Boot スターターの宣言的設定ドキュメント&lt;/a&gt;に直接ジャンプするか、
&lt;code&gt;application.properties&lt;/code&gt; を&lt;a href="https://opentelemetry.io/ja/docs/zero-code/java/spring-boot-starter/declarative-configuration/#convert-your-existing-configuration"&gt;インタラクティブコンバーター&lt;/a&gt;に貼り付けるか、
&lt;a href="https://explorer.opentelemetry.io/java-agent/configuration/builder" target="_blank" rel="noopener" class="external-link"&gt;Ecosystem Explorer&lt;/a&gt; で Spring Boot スターターのターゲットを選択して SDK のセットアップを選んでください。
ストーリーはコーヒーを片手にどうぞ。&lt;/p&gt;
 &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;長年にわたり、環境変数（とその JVM &lt;code&gt;-D&lt;/code&gt; 版）は OpenTelemetry SDK を設定する唯一の方法でした。
すべてのエクスポーター、すべてのサンプラー、すべてのキャプチャするヘッダーが、フラットな &lt;code&gt;OTEL_*&lt;/code&gt; 変数のリストとして表現されていました。&lt;/p&gt;
&lt;p&gt;OpenTelemetry Spring Boot スターターのバージョン 2.26.0 以降、このリストには新しい兄弟ができました。
SDK の&lt;a href="https://opentelemetry.io/ja/docs/languages/sdk-configuration/declarative-configuration/"&gt;宣言的設定スキーマ&lt;/a&gt;は、テレメトリーパイプライン全体（すべてのプロセッサー、すべてのエクスポーター、すべてのネストされたオプション）を SDK が実際に動作するのと同じ形で記述できる YAML ツリーです。&lt;/p&gt;
&lt;p&gt;環境変数だけでは表現できないことに対して、Spring スターターのユーザーは &lt;code&gt;@Bean&lt;/code&gt; を書く必要がありました。
Java エージェントのユーザーは、完全な&lt;a href="https://opentelemetry.io/ja/docs/zero-code/java/agent/extensions/"&gt;エクステンション&lt;/a&gt;を書き、エージェントと一緒に配布する別の jar にパッケージする必要がありましたが、これは負担が大きいことがありました。&lt;/p&gt;
&lt;p&gt;これらの新しい変更により、スキーマは &lt;code&gt;application.yaml&lt;/code&gt; の中の 1 つの &lt;code&gt;otel:&lt;/code&gt; キーの下に移動します。
環境変数は引き続き機能しますが、その役割はより限定的になります。
&lt;code&gt;OTEL_SERVICE_NAME&lt;/code&gt; はリソース属性として反映されますが、これはサービス名ディテクターが起動時にそれを読み取るためです。
また、YAML に書いた &lt;code&gt;${VAR:default}&lt;/code&gt; プレースホルダーは名前を指定して環境変数を取り込みます。
それ以外では、YAML が信頼できる情報源です。&lt;/p&gt;</description></item><item><title>good first issue のその先へ ― コントリビュートを持続可能にするには</title><link>https://opentelemetry.io/ja/blog/2026/alternative-approaches-to-contributing/</link><pubDate>Sun, 12 Jul 2026 22:54:50 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/alternative-approaches-to-contributing/</guid><description>&lt;p&gt;OpenTelemetry は、アプリケーションやサービスからメトリクス、ログ、トレースを収集するためのツールと標準を提供します。
コントリビュートを始めるのは気後れするかもしれません。
ここでは、実際の経験から得た教訓をいくつか紹介します。&lt;/p&gt;
&lt;p&gt;ほとんどのガイドは、「good first issue」の見つけ方、リポジトリのフォーク方法、SIG ミーティングへの参加方法を説明しています。
そうしたアドバイスは有用であり、多くのリソースがそれをうまくカバーしています。
あまり注目されないのは、コントリビュートにまつわるより広い文脈です。
エコシステムの理解、コミュニティの力学のナビゲート、そして大規模なオープンソースプロジェクトへの長期的な関わりの構築がそれにあたります。&lt;/p&gt;
&lt;p&gt;これらの側面は OpenTelemetry において特に重要です。
開発は多くのリポジトリ、SIG、組織にまたがって行われるためです。
新規参入者、とりわけ過小評価されている背景を持つコントリビューターにとって、この文脈は大きな違いを生みます。
協力や意思決定に関する暗黙のルールが見えにくい場合、どこから始めるべきか、自信を持って参加する方法、あるいは単発のコントリビューターから長期的なメンバーへと成長する方法を知ることが難しくなります。&lt;/p&gt;
&lt;p&gt;このガイドは、そのより深い層に焦点を当てています。
「最初のコントリビュート」のチェックリストを超えて、OpenTelemetry コミュニティがどのように機能しているかを理解し、その中で自分の居場所を見つける手助けをします。&lt;/p&gt;
&lt;h2 id="context-and-community"&gt;コンテキストとコミュニティ&lt;a class="td-heading-self-link" href="#context-and-community" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;特定のリポジトリに飛び込む前に、より広いクラウドネイティブエコシステムを探索してください。
どのオブザーバビリティツールが進化しているか、どこにギャップがあるか、どのプロジェクトが OpenTelemetry の普及に影響を与えているか。
戦略的なコントリビュートはコンテキストから始まります。
&lt;a href="https://clotributor.dev/" target="_blank" rel="noopener" class="external-link"&gt;CLOTributor&lt;/a&gt; のようなプラットフォームは、1つの組織内だけでなく、クラウドネイティブプロジェクト全体にわたる「good first issue」を見つける手助けをしてくれます。
これにより、自分のスキルが最もインパクトを発揮できる場所に身を置けます。&lt;/p&gt;
&lt;p&gt;「good first issue」は競争が激しく、投稿されてから数時間以内に取られてしまうことがよくあります。
見つからない場合は戦略を変えましょう。
完璧なイシューを待つのではなく、SIG コールや Slack でのディスカッションを通じてコミュニティの活発な一員となり、自分が役に立てるアドホックなタスクを探しましょう。&lt;/p&gt;
&lt;p&gt;&lt;a href="https://community.cncf.io/merge-forward/" target="_blank" rel="noopener" class="external-link"&gt;Merge Forward&lt;/a&gt; のような取り組みは、オープンソースにおいて過小評価されているグループを支援し、従来の企業環境では多くのエンジニアが得られないメンターシップ、可視性、アクセスを提供しています。
OpenTelemetry は、参加障壁を積極的に下げるこの大きな CNCF エコシステムの中に存在しています。&lt;/p&gt;
&lt;p&gt;OpenTelemetry は、メンターシッププログラム、ローカリゼーショングループ、非同期コラボレーションを通じてインクルーシブな参加を積極的に支援し、多様な背景を持つコントリビューターが対等に活動できるようにしています。&lt;/p&gt;
&lt;p&gt;プロジェクトとコミュニティのつながりを理解することで、コントリビュートはより意義あるものになります。&lt;/p&gt;
&lt;h2 id="contribution-is-more-than-code"&gt;コントリビュートはコード以上のもの&lt;a class="td-heading-self-link" href="#contribution-is-more-than-code" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;img src="https://opentelemetry.io/blog/2026/alternative-approaches-to-contributing/graph-contributions.webp" alt="OTel で最も人気のあるページを示すグラフ"&gt;&lt;p&gt;2026年1月から2026年3月までの &lt;a href="https://opentelemetry.io/ja/docs/"&gt;OpenTelemetry.io&lt;/a&gt; ウェブサイトで最も人気のあるページを示すグラフ&lt;/p&gt;
&lt;p&gt;プルリクエストは単なるコード変更ではありません。
それはディスカッションであり、フィードバックであり、プロジェクトの方向性との整合です。
メンテナー、承認者、SIG メンバーが優先事項を導きます。
イシュースレッドや PR のディスカッションを読むことで、意思決定がどのように行われ、実際の摩擦がどこにあるかがわかります。
その認識がコントリビュートをより強いものにします。&lt;/p&gt;
&lt;p&gt;テック業界で過小評価されているグループのエンジニアにとって、可視性と継続的な参加は重要です。
OpenTelemetry は、特定の場所にいることや大手テクノロジー企業で働いていることに依存しない参加方法をいくつか提供しています。
会話は Slack チャネル、SIG ミーティング、GitHub イシュー、プルリクエストのディスカッションなど、複数のコミュニティスペースで行われます。
これらのチャネルにより、異なる地域、職歴、経験レベルのコントリビューターがプロジェクトに参加し、実践的なフィードバックを共有できます。&lt;/p&gt;</description></item><item><title>OTel-Arrow フェーズ 2: 効率的なトランスポートから効率的なテレメトリーパイプラインへ</title><link>https://opentelemetry.io/ja/blog/2026/otel-arrow-phase-2/</link><pubDate>Sun, 28 Jun 2026 13:12:19 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/otel-arrow-phase-2/</guid><description>&lt;p&gt;OTel-Arrow の&lt;a href="https://github.com/open-telemetry/otel-arrow/blob/c6ed105cab28e537bf5c2c81a97e9b63677d3cff/docs/phase1-overview.md" target="_blank" rel="noopener" class="external-link"&gt;フェーズ 1&lt;/a&gt; では、OTAP（OpenTelemetry Arrow Protocol）を OpenTelemetry 向けの効率的なトランスポートプロトコルとして確立しました。
Apache Arrow は、構造化データをシステム間で効率的に移動・処理するために設計された、言語非依存の列指向インメモリフォーマットです。
テレメトリーを OpenTelemetry データモデルとの互換性を維持しつつ、大幅に低いネットワークオーバーヘッドで転送できることを実証しました。&lt;/p&gt;
&lt;p&gt;&lt;a href="https://opentelemetry.io/blog/2025/otel-arrow-phase-2/"&gt;フェーズ 2&lt;/a&gt; では異なる問いを立てました。
Arrow をネットワーク上だけでなく、パイプラインが内部的に扱うデータ表現としても使ったらどうなるのか、という問いです。&lt;/p&gt;
&lt;p&gt;テレメトリーの量は急速に増加しており、その背景には OpenTelemetry の幅広い導入、より豊富な計装、そしてよりダイナミックな AI やエージェントベースのワークロードがあります。
この規模になると、属性の削除、フィールドのリネーム、メタデータの追加、シグナルのルーティングといった一般的なパイプライン操作は、できるだけコストが低いことが求められます。
これらの操作の多くは単純で反復的です。
プロセッサーがあるレコードの属性に対して処理を行う場合、同じバッチ内の多くのレコードに対しても同じ属性への処理が行われることが多いのです。&lt;/p&gt;
&lt;p&gt;このパターンは列指向の表現とよく適合します。
テレメトリーをコンパクトな Arrow バッチに保ったまま、プロセッサーが属性のリネーム、データのエンリッチメント、シグナルのルーティングを行えれば、パイプラインは各変換にかかる周辺処理を削減し、CPU とメモリをより効率的かつ予測可能に使用できます。
OTAP は、テレメトリーの増加という次のフェーズにおいて、OpenTelemetry パイプラインをより効率的に運用する上で重要な役割を果たせると考えています。&lt;/p&gt;
&lt;h2 id="a-dataflow-engine-built-to-test-the-arrow-path"&gt;Arrow パスを検証するためのデータフローエンジン&lt;a class="td-heading-self-link" href="#a-dataflow-engine-built-to-test-the-arrow-path" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;このアイデアを探るため、OTel-Arrow Dataflow Engine を構築しました。
これは OTAP をパイプライン内の主要なデータ表現として設計した Rust ランタイムです。
OTAP ストリームをエンドツーエンドで受信・送信でき、&lt;a href="https://opentelemetry.io/docs/specs/otlp/"&gt;OTLP&lt;/a&gt;（OpenTelemetry Protocol）も別のファーストクラスのデータパスとしてサポートしています。&lt;/p&gt;
&lt;p&gt;このデュアルパス設計により、同じランタイム内で 2 つのモードを比較できます。
テレメトリーを Arrow レコードバッチのまま保持する OTAP ダイレクトパスと、明示的な境界で OTLP と OTAP 間の変換を行う OTLP 互換パスです。
結果は明確です。
テレメトリーが OTAP パス上にエンドツーエンドで留まると、トランスポートと処理のコストが大幅に低下します。&lt;/p&gt;
&lt;p&gt;OpenTelemetry Collector は、OpenTelemetry パイプラインのための広く利用されている汎用的な実装です。
そのパイプラインモデルは OTLP 形式のインメモリデータ構造を中心に構築されており、柔軟で OpenTelemetry データモデルと密接に整合していますが、大量のバッチ処理には比較的コストがかかります。
本研究の目的は、異なる設計ポイントを検証することです。
OTAP を主要なデータ表現とし、OTLP 互換性を明示的な境界で処理するテレメトリーデータプレーンの構築です。&lt;/p&gt;</description></item><item><title>OpenTelemetry の謎を解く：レガシー環境でオブザーバビリティを恐れる必要がない理由</title><link>https://opentelemetry.io/ja/blog/2026/demystifying-opentelemetry/</link><pubDate>Sun, 28 Jun 2026 13:12:00 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/demystifying-opentelemetry/</guid><description>&lt;p&gt;何十年もの間、オンプレミスのデータセンターからレガシーアプリケーション、産業制御システムに至るレガシーなテクノロジー環境は、多くの組織の基盤を支えてきました。
これらのシステムは実績があり、ビジネスオペレーションに深く組み込まれていますが、IT プラクティスの近代化、特にオブザーバビリティに関しては独特の課題を抱えています。&lt;/p&gt;
&lt;!-- markdownlint-disable MD036 --&gt;
&lt;p&gt;&lt;strong&gt;レガシー環境でオブザーバビリティを実装する際の課題&lt;/strong&gt;&lt;/p&gt;
&lt;!-- markdownlint-enable MD036 --&gt;
&lt;ul&gt;
&lt;li&gt;ノイズが多く構造化されていないログからは、意味のある情報を抽出することが困難です。&lt;/li&gt;
&lt;li&gt;異なるツールやシステムにわたってサイロ化された監視データは、可視性の断片化につながります。&lt;/li&gt;
&lt;li&gt;レガシーアプリケーションやシステムでは計装が限られているため、最新のメトリクスやトレースの収集が困難です。&lt;/li&gt;
&lt;li&gt;チームは新しいオブザーバビリティツールの追加によるパフォーマンスへの影響を懸念することが多いです。&lt;/li&gt;
&lt;li&gt;レガシープロトコルやハードウェアと最新のプラットフォームとの統合は困難な場合があります。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;これを実践的に理解するために、忙しい生産ラインを持つ架空の製造会社を見ていきましょう。
ここでは、センサーを搭載したロボットアームが MQTT 経由で運用データを中央ブローカーに報告しています。
レガシーアプリケーションは生産イベントやエラーをディスクにログとして記録し、SQL Server と Windows マシンが生産、分析、在庫管理をサポートしています。
聞き覚えがあるでしょうか。
これは、古い世界と新しい世界をつなごうとする多くの組織の現実です。&lt;/p&gt;
&lt;img src="https://opentelemetry.io/blog/2026/demystifying-opentelemetry/fictional-organization-architecture.png" alt="架空の組織のオブザーバビリティアーキテクチャ図"&gt;&lt;p&gt;計装が組み込まれているクラウドネイティブ環境とは異なり、レガシーシステムや産業システムは一貫性のないログ、限られたメトリクス、断片化されたツールに依存しています。
これにより可視性が不足し、トラブルシューティング、チューニング、メンテナンスが遅く困難になります。
組織が信頼性の向上と変革の加速を目指す中で、オブザーバビリティはもはや「あれば便利」なものではなく、戦略的な必須要素です。
しかし、オブザーバビリティへの道、そして OpenTelemetry への標準化の道は、根強い誤解によって曇らされることがあります。
いくつかの誤解を打ち破りましょう！&lt;/p&gt;
&lt;h2 id="myth-1-our-systems-just-generate-a-bunch-of-useless-logs--theres-no-way-observability-can-be-done-here"&gt;誤解 1：私たちのシステムは大量の役に立たないログを生成するだけで、ここでオブザーバビリティを実現する方法はない&lt;a class="td-heading-self-link" href="#myth-1-our-systems-just-generate-a-bunch-of-useless-logs--theres-no-way-observability-can-be-done-here" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;レガシーの生産システムについて考えてみてください。古い機械やアプリケーションが、ファイルにプレーンテキストのログをひたすら出力し続けているかもしれません。
JSON も構造も API もなく、ただ延々とテキストの行が続くだけです。
そのような混沌から意味のある洞察を引き出す方法はないと思いがちです。&lt;/p&gt;
&lt;h3 id="why-this-myth-persists-legacy-logs"&gt;なぜこの誤解が根強いのか（レガシーログ）&lt;a class="td-heading-self-link" href="#why-this-myth-persists-legacy-logs" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;多くの従来型環境では、生産ライン、レガシーアプリケーション、産業制御システムのいずれであっても、目にする唯一のデジタル「シグナル」は、生の構造化されていないログファイルのストリームかもしれません。
運用マネージャーにとって、これらのファイルは不透明でもどかしい存在です。
運用マネージャーは特定の障害を深く気にかけています。
ライン 1 が「Jam」で停止しているのか「LowPressure」で停止しているのかを知ることが、即時の対応とメンテナンス戦略を決定します。
しかし、その重要なデータが &lt;strong&gt;FAULT_DETECTED: Line1, Fault=Jam&lt;/strong&gt; のような非構造化テキストに埋もれていると、標準的な監視ダッシュボードからは見えません。
テキストをグラフ化することはできず、ファイル内の文字列に対して簡単にアラートを設定することもできず、時間の経過に伴う傾向を把握することもできません。
このことが、これらのシステムは監視できないという誤解につながっています。
しかし、OpenTelemetry のような最新のオブザーバビリティツールを使えば、これらの「役に立たない」ログは運用上の洞察の宝庫になり得ます。&lt;/p&gt;
&lt;h3 id="example-legacy-log-lines"&gt;レガシーログの行の例&lt;a class="td-heading-self-link" href="#example-legacy-log-lines" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:39:58 | PRODUCT_COMPLETED: Line1, Count=1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:00 | FAULT_DETECTED: Line2, Fault=LowPressure
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:02 | MACHINE_START: Line2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:07 | FAULT_DETECTED: Line2, Fault=Overheat
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:10 | MACHINE_START: Line2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:14 | PRODUCT_COMPLETED: Line1, Count=1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:18 | MACHINE_START: Line2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:21 | PRODUCT_COMPLETED: Line1, Count=1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:27 | SENSOR_READING: Line1, Temp=83.9
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:29 | FAULT_DETECTED: Line1, Fault=LowPressure
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:32 | SENSOR_READING: Line1, Temp=84.7
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;2026-01-04 00:40:34 | PRODUCT_COMPLETED: Line1, Count=1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="how-to-make-this-system-observable"&gt;このシステムを可観測にする方法&lt;a class="td-heading-self-link" href="#how-to-make-this-system-observable" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;OpenTelemetry Collector はこれらのファイルをリアルタイムで監視し、イベントをパースし、レガシーアプリケーションにコード変更を加えることなく、構造化されたメトリクスに変換できます。&lt;/p&gt;</description></item><item><title>KubeCon + CloudNativeCon Europe 2026</title><link>https://opentelemetry.io/ja/blog/2026/kubecon-eu/</link><pubDate>Sat, 27 Jun 2026 16:01:33 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/kubecon-eu/</guid><description>&lt;p&gt;OpenTelemetry プロジェクトのメンテナー、ガバナンス委員会メンバー、そして技術委員会メンバーは、2026年3月23日から26日にアムステルダムで開催される &lt;a href="https://events.linuxfoundation.org/kubecon-cloudnativecon-europe/" target="_blank" rel="noopener" class="external-link"&gt;KubeCon EU&lt;/a&gt; に参加します。
ぜひ&lt;a href="https://events.linuxfoundation.org/kubecon-cloudnativecon-europe/register/" target="_blank" rel="noopener" class="external-link"&gt;登録&lt;/a&gt;して、一緒に参加しましょう！&lt;/p&gt;
&lt;p&gt;KubeCon 期間中の OpenTelemetry 関連イベントについて、以下をお読みください。&lt;/p&gt;
&lt;h2 id="talks-and-maintainer-sessions"&gt;トークとメンテナーセッション&lt;a class="td-heading-self-link" href="#talks-and-maintainer-sessions" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="https://kccnceu2026.sched.com/event/2CVxh/we-deleted-our-observability-stack-and-rebuilt-it-with-otel-12-engineers-to-4-at-20k&amp;#43;-clusters-yash-sharma-kunju-perath-digitalocean" target="_blank" rel="noopener" class="external-link"&gt;We Deleted Our Observability Stack and Rebuilt It With OTel: 12 Engineers to 4 at 20K+ Clusters&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;by
Yash Sharma, DigitalOcean; Kunju Perath, DigitalOcean&lt;br&gt; Tuesday March 24,
2026 11:15 - 11:45CET&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="https://kccnceu2026.sched.com/event/2CVyH/when-ottl-goes-off-the-rails-debugging-transformations-with-confidence-edmo-vamerlatti-costa-elastic-tyler-helmuth-honeycomb" target="_blank" rel="noopener" class="external-link"&gt;When OTTL Goes Off the Rails: Debugging Transformations with Confidence&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;by
Edmo Vamerlatti Costa, Elastic; Tyler Helmuth, Honeycomb&lt;br&gt; Tuesday March 24,
2026 12:00 - 12:30CET&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="https://kccnceu2026.sched.com/event/2CVzR/schema-inference-and-automation-a-new-era-for-telemetry-management-nicolas-takashi-coralogix-arthur-silva-sens-grafana-labs" target="_blank" rel="noopener" class="external-link"&gt;Schema Inference and Automation: A New Era for Telemetry Management&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;by
Arthur Silva Sens, Grafana Labs; Nicolas Takashi, Coralogix&lt;br&gt; Tuesday March
24, 2026 15:15 - 15:45CET&lt;/p&gt;</description></item><item><title>Mastodon が本番環境で OpenTelemetry Collector を運用する方法</title><link>https://opentelemetry.io/ja/blog/2026/devex-mastodon/</link><pubDate>Sun, 21 Jun 2026 21:36:56 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/devex-mastodon/</guid><description>&lt;p&gt;2025年初頭、OpenTelemetry Developer Experience SIG は&lt;a href="https://opentelemetry.io/blog/2025/devex-survey/"&gt;最初のコミュニティサーベイの結果を公開しました&lt;/a&gt;。
最も強いテーマの一つは明確でした。チームは OpenTelemetry SDK や OpenTelemetry Collector が実際に本番環境でどのように使われているかについて、より多くの実例を求めていたのです。&lt;/p&gt;
&lt;p&gt;このギャップを埋めるために、SIG はさまざまな業界、アーキテクチャ、企業規模のエンドユーザーから直接ストーリーを収集し始めました。
この記事は、組織の実際の運用事例に特化した新しいシリーズの第一弾です。
小規模ながらも独自の課題を持つケースからスタートします。&lt;/p&gt;
&lt;p&gt;最初のストーリーの主役は、世界規模で運営しながらも驚くほど少人数のチームで活動している非営利団体 Mastodon です。&lt;/p&gt;
&lt;h2 id="mastodon-at-a-glance"&gt;Mastodon の概要&lt;a class="td-heading-self-link" href="#mastodon-at-a-glance" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://joinmastodon.org" target="_blank" rel="noopener" class="external-link"&gt;Mastodon&lt;/a&gt; は、非営利団体が運営する、フリーでオープンソースの分散型ソーシャルメディアプラットフォームです。&lt;/p&gt;
&lt;p&gt;分散化はここではマーケティング用語ではなく、中核的なアーキテクチャ原則です。
誰でも&lt;a href="https://docs.joinmastodon.org/user/run-your-own/" target="_blank" rel="noopener" class="external-link"&gt;自分の Mastodon サーバーを運用&lt;/a&gt;でき、それぞれ独立して運営されるサーバーは、&lt;em&gt;Fediverse&lt;/em&gt;（ActivityPub などの標準化されたプロトコルを使用して相互に通信する独立したソーシャルプラットフォームの連合ネットワーク）の一部として、オープンプロトコルを使って相互運用します。
メールと同様に、ユーザーは誰がサーバーを運営しているかに関係なく、インスタンス間で通信できます。&lt;/p&gt;
&lt;p&gt;この思想は、Mastodon の機能に関する意思決定だけでなく、オブザーバビリティへのアプローチにも影響を与えています。&lt;/p&gt;
&lt;h3 id="organizational-structure"&gt;組織構造&lt;a class="td-heading-self-link" href="#organizational-structure" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Mastodon の組織全体は約 20 名で構成されており、オブザーバビリティインフラストラクチャ（OpenTelemetry Collector を含む）はたった一人のエンジニアが管理しています。&lt;/p&gt;
&lt;p&gt;少人数のチームにもかかわらず、Mastodon は 2 つの大規模な本番 Mastodon インスタンスを運用しています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://mastodon.social" target="_blank" rel="noopener" class="external-link"&gt;mastodon.social&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;9～15 ノード（各 16 コア、64 GB RAM）間でオートスケーリングする Kubernetes 上で稼働しています。
Web フロントエンドは 5～20 Pod、さまざまな Sidekiq ワーカープールは 10～40 Pod の間でスケーリングします。
平均して、mastodon.social では常時 70～80 の Pod が稼働しています。
このプラットフォームは 1 日あたり最大 &lt;strong&gt;30 万のアクティブユーザー&lt;/strong&gt; を処理し、毎分約 1,000 万リクエストをさばいています。&lt;/p&gt;</description></item><item><title>Skyscanner が実践する OpenTelemetry のスケーリング: 24 の本番クラスターにまたがる Collector の管理</title><link>https://opentelemetry.io/ja/blog/2026/devex-skyscanner/</link><pubDate>Wed, 17 Jun 2026 23:09:29 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/devex-skyscanner/</guid><description>&lt;p&gt;Developer Experience SIG は、さまざまな業界や規模の企業における実際の OpenTelemetry デプロイメントを紹介するブログ記事シリーズを公開しています。
この記事では、スコットランドのエジンバラに拠点を置くグローバルな旅行検索プラットフォーム &lt;a href="https://www.skyscanner.net/" target="_blank" rel="noopener" class="external-link"&gt;Skyscanner&lt;/a&gt; を取り上げます。&lt;/p&gt;
&lt;p&gt;全世界で 1,400 人の従業員を擁し、24 の本番 Kubernetes クラスターで 1,000 以上のマイクロサービスを運用している Skyscanner の OpenTelemetry 導入事例は、大規模な組織にとって貴重な教訓を提供します。&lt;/p&gt;
&lt;h2 id="organizational-structure"&gt;組織構造&lt;a class="td-heading-self-link" href="#organizational-structure" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;6 名のプラットフォームエンジニアで構成される Hubble チームが、Skyscanner の Collector の大部分を管理しています。
より大きなプラットフォームエンジニアリング組織の一部として、主に Java ベースのマイクロサービスアーキテクチャを実行するコンピューティングプラットフォームを担当しています。&lt;/p&gt;
&lt;p&gt;サービスチーム自体は、デプロイメントやテレメトリー収集のインフラストラクチャから抽象化されています。
Java サービスの場合、チームは事前設定された OpenTelemetry Java エージェントを含むベース Docker イメージを継承します。
Python および Node.js サービスの場合、プラットフォームチームが環境やリソース属性に基づいた適切なデフォルト値を設定するラッパーライブラリを提供しています。
これらのアプローチにより、ボイラープレートのセットアップが最小化され、サービスチームは OpenTelemetry の深い知識を必要とせずに、すぐにオブザーバビリティを利用できます。&lt;/p&gt;
&lt;h2 id="opentelemetry-adoption"&gt;OpenTelemetry の導入&lt;a class="td-heading-self-link" href="#opentelemetry-adoption" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Skyscanner の OpenTelemetry 導入は 2021 年に始まりました。
当時、同社は社内で構築したオープンソーススタックから商用ベンダーへの移行を進めていましたが、ベンダーロックインを避けたいと考えていました。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;「ベンダーに依存しない方法でベンダーに移行したかったのです」と、Skyscanner の Hubble プラットフォームチームのソフトウェアエンジニアである &lt;a href="https://github.com/neilfordyce" target="_blank" rel="noopener" class="external-link"&gt;Neil Fordyce&lt;/a&gt; は説明しました。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;このベンダーに依存しないアプローチにより、テレメトリーインフラストラクチャの中核として OpenTelemetry Collector を採用することになりました。&lt;/p&gt;
&lt;h2 id="architecture-centralized-routing-distributed-collection"&gt;アーキテクチャ: 集中ルーティング、分散収集&lt;a class="td-heading-self-link" href="#architecture-centralized-routing-distributed-collection" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Skyscanner の Collector アーキテクチャは、Istio ベースのインテリジェントルーティングを備えた中央 DNS エンドポイントを特徴としています。
サービスがグローバルのどこで実行されていても、どのクラスターにあっても、テレメトリーはこの単一のアドレスに送信されます。
Istio がリクエストを最も近い利用可能な Collector にルーティングします。&lt;/p&gt;</description></item><item><title>OTel ブループリントとリファレンス実装の紹介</title><link>https://opentelemetry.io/ja/blog/2026/blueprints-intro/</link><pubDate>Sun, 14 Jun 2026 18:49:28 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/blueprints-intro/</guid><description>&lt;p&gt;OpenTelemetry を導入するエンドユーザーが、その過程のどこかで &lt;em&gt;「なぜこんなに複雑なんだ?」&lt;/em&gt; と自問することは珍しくありません。
本格的な導入には、通常、SDK のさまざまな設定方法、複数のコレクターのデプロイメント、データパイプライン、計装ライブラリ、セマンティック規約レジストリ、多くの異なるプログラミング言語にわたる手動計装用 API、その他多数の可動部分を理解する必要があります。&lt;/p&gt;
&lt;p&gt;これらの可動部分は単独で動作するわけでもありません。
組織のソフトウェアシステムを標準的で高品質なテレメトリーで記述するための統合ソリューションの一部として、互いに上手く連携する必要があります。
これに失敗すると、OpenTelemetry が解決しようとしていたまさにその問題、すなわちスタック全体で異なるセマンティック規約が使われた断片的なテレメトリー、サービスとシグナル間のコンテキスト伝搬の欠如、不必要に大量のデータ量……、要するに必要なものとは正反対の、品質の低いテレメトリーに行き着くリスクがあります。&lt;/p&gt;
&lt;p&gt;プロジェクトが進化して安定するにつれて、また大規模な本番環境で OpenTelemetry を導入するエンドユーザーが増えるにつれて、同じフィードバックを耳にし続けてきました。
エンドユーザーは、プロジェクトとそのメンテナーが推奨する、規範的で意見の明確な「OpenTelemetry のデプロイ方法」(これが何を意味するかは解釈次第) を求めています。
彼らは、&lt;em&gt;自分たち&lt;/em&gt; のオブザーバビリティの課題を &lt;em&gt;最もシンプルな&lt;/em&gt; 方法で解決するのに必要なコンポーネントを構成するための一連の手順に従いたいのであって、それ以上を望んでいるわけではありません。&lt;/p&gt;
&lt;p&gt;皆さんの声を聞き、私たちは耳を傾けました。
End User SIG が Developer Experience SIG と協力して推進する新しい取り組み、&lt;a href="https://opentelemetry.io/ja/docs/guidance/"&gt;ブループリントとリファレンス実装&lt;/a&gt; を発表できることをうれしく思います。&lt;/p&gt;
&lt;h2 id="the-source-of-complexity-and-the-need-for-blueprints"&gt;複雑性の源とブループリントの必要性&lt;a class="td-heading-self-link" href="#the-source-of-complexity-and-the-need-for-blueprints" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;最初の問いに戻りましょう。&lt;em&gt;「なぜこんなに複雑なんだ?」&lt;/em&gt;。
1986 年に書かれた Fred Brooks の論文 &lt;a href="https://en.wikipedia.org/wiki/No_Silver_Bullet" target="_blank" rel="noopener" class="external-link"&gt;&lt;em&gt;銀の弾などない —ソフトウェア工学における本質と偶有&lt;/em&gt;&lt;/a&gt; で説明されている用語を用いると、OTel 導入の複雑性は 2 つに分けられます。&lt;em&gt;本質的&lt;/em&gt; なものと、より頻繁に見られる &lt;em&gt;偶有的&lt;/em&gt; なものです。&lt;/p&gt;
&lt;h3 id="essential-complexity"&gt;本質的な複雑性&lt;a class="td-heading-self-link" href="#essential-complexity" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;OTel の複雑性の &lt;em&gt;本質的&lt;/em&gt; な部分、つまりその設計に内在する部分は、主にその幅広さと横断的な性質に起因します。
OpenTelemetry はスタックのほぼすべての部分、つまりクライアントサイド(ブラウザやモバイル)からアプリケーション、Kubernetes、インフラ、データベースなどに触れます。
私たちのドキュメントはこれらの各コンポーネントがどのように動作するかを説明するのに優れており、&lt;a href="https://opentelemetry.io/ja/docs/languages/sdk-configuration/declarative-configuration/"&gt;宣言的設定&lt;/a&gt;や&lt;a href="https://github.com/open-telemetry/opentelemetry-injector" target="_blank" rel="noopener" class="external-link"&gt;Injector&lt;/a&gt;といった新しい開発、そして長年存在している &lt;a href="https://opentelemetry.io/ja/docs/platforms/kubernetes/operator/"&gt;OpenTelemetry Operator&lt;/a&gt; により、これらすべてのコンポーネントにわたる統合された設定を適用することは容易になりました。
しかし、依然としてこれは非常に大きなデプロイ対象であり、一貫性を達成する必要があり、ほとんどの場合、単一のチームでは扱えないという事実は変わりません。&lt;/p&gt;
&lt;p&gt;OpenTelemetry はまた、単一のソリューションに限定されず、任意のバックエンドで動作するように設計されています。
スタックに事前構築済みのエージェントを投入してデータが流れるのを見るという古いモデルは魅力的かもしれませんが、データの主権を維持する必要のある現代のシステムに必要な柔軟性に欠けています。
OpenTelemetry の柔軟性により、エンドユーザーはデータがどのように生成され、最終的にどこに保存されるかにかかわらず、自分自身のデータを制御できますが、この柔軟性は幅広さとあいまってさらなる複雑性をもたらす可能性があります。&lt;/p&gt;
&lt;p&gt;要約すると、OTel は大規模に適用すると &lt;em&gt;本質的&lt;/em&gt; に複雑になることがあり、これは通常もっともな理由によるものです。&lt;/p&gt;</description></item><item><title>LLM 呼び出しの内側: OpenTelemetry による GenAI オブザーバビリティ</title><link>https://opentelemetry.io/ja/blog/2026/genai-observability/</link><pubDate>Fri, 05 Jun 2026 16:58:42 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/genai-observability/</guid><description>&lt;p&gt;AI エージェントに単純な質問をしたら、回答までに 45 秒もかかった、ということを想像してみてください。
原因はモデルでしょうか。
それともツール呼び出しが遅かったのでしょうか。
あるいはリトライのループに陥っていたのでしょうか。
アプリケーションが LLM を呼び出すたびに、モデル呼び出し、ツール実行、トークンのやり取りといった一連の処理が裏側で起きています。
オブザーバビリティがなければ、原因は推測するしかありません。&lt;/p&gt;
&lt;p&gt;OpenTelemetry の &lt;a href="https://opentelemetry.io/docs/specs/semconv/gen-ai/"&gt;Generative AI 向けセマンティック規約&lt;/a&gt; は、この内側を可視化します。
GenAI 操作の記録方法を標準化しており、呼び出されたモデル、入出力のトークン数、そして明示的に有効化した場合にはプロンプト、応答、ツール呼び出し、ツールの実行結果の中身までを記録します。&lt;/p&gt;
&lt;p&gt;この記事では、以下を順に紹介します。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;LLM を活用したアプリケーションから GenAI のテレメトリーをエクスポートする。&lt;/li&gt;
&lt;li&gt;そのテレメトリーを受信して表示できるよう、オブザーバビリティツールを設定する。&lt;/li&gt;
&lt;li&gt;GenAI ビジュアライザーを使って、GenAI のトレース、メトリクス、イベントを探索する。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="exporting-genai-telemetry"&gt;GenAI テレメトリーをエクスポートする&lt;a class="td-heading-self-link" href="#exporting-genai-telemetry" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;このチュートリアルでは、多くの開発者がすでにインストール済みであることから、テレメトリーを発生させるツールとして VS Code Copilot を使います。
ただし、多くのコーディングアシスタントが OpenTelemetry によるモニタリングをサポートしています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://code.visualstudio.com/docs/copilot/guides/monitoring-agents" target="_blank" rel="noopener" class="external-link"&gt;VS Code Copilot&lt;/a&gt; は、エージェントとのやり取りごとにトレース、メトリクス、イベントを出力します。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developers.openai.com/codex/config-advanced#observability-and-telemetry" target="_blank" rel="noopener" class="external-link"&gt;OpenAI Codex&lt;/a&gt; は、API リクエスト、ツール呼び出し、セッションについて、構造化ログイベントと OTel メトリクスをエクスポートします。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://code.claude.com/docs/en/monitoring-usage" target="_blank" rel="noopener" class="external-link"&gt;Claude Code&lt;/a&gt; は OTel でメトリクスとログイベントをエクスポートし、トレース対応はベータ版で提供されています。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;すでに使っているツールをモニタリングするだけでなく、自分の GenAI アプリケーションに OpenTelemetry を組み込めば、LLM とのやり取りの様子を可視化できます。&lt;/p&gt;
&lt;h3 id="configure-telemetry-export"&gt;テレメトリーエクスポートを設定する&lt;a class="td-heading-self-link" href="#configure-telemetry-export" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;テレメトリーをエクスポートするには、いくつかの設定が必要です。
&lt;a href="https://code.visualstudio.com/docs/copilot/guides/monitoring-agents" target="_blank" rel="noopener" class="external-link"&gt;VS Code Copilot&lt;/a&gt; の場合は、設定画面を開いて &lt;code&gt;copilot otel&lt;/code&gt; で検索してください。&lt;/p&gt;</description></item><item><title>OpenTracing 互換性要件の非推奨化</title><link>https://opentelemetry.io/ja/blog/2026/deprecating-opentracing-compatibility/</link><pubDate>Fri, 05 Jun 2026 16:09:11 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/deprecating-opentracing-compatibility/</guid><description>&lt;p&gt;2026年3月19日、OpenTelemetry Specification プロジェクトは &lt;a href="https://github.com/open-telemetry/opentelemetry-specification/pull/4938" target="_blank" rel="noopener" class="external-link"&gt;PR #4938&lt;/a&gt; をマージし、仕様における OpenTracing 互換性要件を非推奨としました。&lt;/p&gt;
&lt;p&gt;この変更は、エコシステムがすでに到達している状況に合わせて仕様を更新するものです。
OpenTracing は何年も前にアーカイブされており、新しいインテグレーションは、OpenTracing のシム要件の上に構築するのではなく、ネイティブの OpenTelemetry API および SDK を使用することが期待されています。&lt;/p&gt;
&lt;p&gt;これは仕様要件の非推奨化であり、互換性に関する記述を即座に削除するものでも、既存のシムの成果物を今すぐ削除することを求めるものでもありません。&lt;/p&gt;
&lt;h2 id="what-is-changing"&gt;何が変わるのか&lt;a class="td-heading-self-link" href="#what-is-changing" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;仕様における OpenTracing 互換性要件が非推奨になります。&lt;/li&gt;
&lt;li&gt;新しい SDK や実装において、新たに OpenTracing 互換性を実装することはもはや必須ではありません。&lt;/li&gt;
&lt;li&gt;既存の OpenTracing シムは、非推奨期間中、後方互換性のために引き続きサポートできます。&lt;/li&gt;
&lt;li&gt;新しい作業では、新たな OpenTracing への依存を導入するのではなく、ネイティブの OpenTelemetry API、SDK、および OTLP ベースのワークフローを対象とすべきです。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-now"&gt;なぜ今なのか&lt;a class="td-heading-self-link" href="#why-now" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;OpenTracing 自体は何年も前にアーカイブされており、エコシステムでの採用はネイティブの OpenTelemetry API と OTLP ベースのワークフローに収束してきました。
このプロジェクトには、&lt;a href="https://github.com/open-telemetry/opentelemetry-specification/pull/4715" target="_blank" rel="noopener" class="external-link"&gt;PR #4715&lt;/a&gt; での Zipkin エクスポーターの非推奨化など、過去の非推奨化作業から、こうした段階的なアプローチの前例もあります。&lt;/p&gt;
&lt;h2 id="timeline-and-policy"&gt;タイムラインとポリシー&lt;a class="td-heading-self-link" href="#timeline-and-policy" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;仕様の非推奨化&lt;/strong&gt;: &lt;strong&gt;2026年3月&lt;/strong&gt;より有効。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;仕様からの最も早い削除時期&lt;/strong&gt;: マージされた仕様本文に記載のとおり、&lt;strong&gt;2027年3月より前にはなりません&lt;/strong&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="what-should-users-do"&gt;ユーザーは何をすべきか&lt;a class="td-heading-self-link" href="#what-should-users-do" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;まだ OpenTracing シムに依存している場合、今こそネイティブの OpenTelemetry API および SDK への移行を計画する良い時期です。&lt;/p&gt;</description></item><item><title>レガシー環境における OpenTelemetry セキュリティプラクティスの適用</title><link>https://opentelemetry.io/ja/blog/2026/security-legacy-environments/</link><pubDate>Fri, 05 Jun 2026 16:04:50 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/security-legacy-environments/</guid><description>&lt;p&gt;製造業をはじめとするレガシー環境において、組織がモダンなオブザーバビリティのアプローチを模索する中で、OpenTelemetry は注目を集めつつあります。
しかし、こうしたプラクティスを従来型のシステムに適用すると、これまでとは異なるセキュリティ上の課題が生じます。
レガシーインフラの制約は、セキュリティ制御をどこにどのように適用すべきかを根本的に変えてしまいます。&lt;/p&gt;
&lt;p&gt;レガシー環境や産業環境には、次のような特徴がよくみられます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;変更や計装が不可能なシステム&lt;/li&gt;
&lt;li&gt;長い機器のライフサイクルと限られたパッチ適用の機会&lt;/li&gt;
&lt;li&gt;フラットなネットワーク、もしくはセグメンテーションが弱いネットワーク&lt;/li&gt;
&lt;li&gt;一般的な &lt;a href="https://en.wikipedia.org/wiki/Personal_data" target="_blank" rel="noopener" class="external-link"&gt;PII&lt;/a&gt; ではない、機密性の高い運用データ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本記事では、こうした環境で OpenTelemetry を保護する際に何が異なるのか、そしてそれに応じてアプローチをどのように適応させればよいのかに焦点を当てます。&lt;/p&gt;
&lt;h2 id="why-legacy-environments-are-different"&gt;なぜレガシー環境は異なるのか&lt;a class="td-heading-self-link" href="#why-legacy-environments-are-different" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;クラウドネイティブシステムにおけるセキュリティのガイダンスは、次のような前提に立っています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;サービスは計装可能である&lt;/li&gt;
&lt;li&gt;暗号化と認証はどこでも強制できる&lt;/li&gt;
&lt;li&gt;システムは定期的にパッチを適用できる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;レガシー環境や産業環境では、これらの前提が成り立たないことがよくあります。&lt;/p&gt;
&lt;p&gt;その結果、セキュリティはどこにでも理想的な制御を適用することではなくなります。
&lt;strong&gt;テレメトリーパイプラインの正しい場所に制御を配置し&lt;/strong&gt;、可視性とリスクのバランスを取ることが重要になります。&lt;/p&gt;
&lt;h2 id="security-challenges-unique-to-legacy-systems"&gt;レガシーシステム特有のセキュリティ課題&lt;a class="td-heading-self-link" href="#security-challenges-unique-to-legacy-systems" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="systems-cannot-be-modified"&gt;システムを変更できない&lt;a class="td-heading-self-link" href="#systems-cannot-be-modified" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;多くの産業システムは、エージェントを実行できず、モダンなライブラリをサポートできず、まったく変更できません。
これは次のことを意味します。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ソースにおけるモダンな TLS や認証のサポートが限定的、あるいは一貫していない&lt;/li&gt;
&lt;li&gt;SDK を用いた直接的な計装ができない&lt;/li&gt;
&lt;li&gt;中継機能（Collector、ブリッジ、ログパイプライン）に依存する&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ソースシステムがモダンな制御を強制できない場合、セキュリティの負担はより多く Collector、中継システム、ネットワーク境界へと移ります。&lt;/p&gt;
&lt;h3 id="weak-or-non-existent-network-segmentation"&gt;脆弱な、あるいは存在しないネットワークセグメンテーション&lt;a class="td-heading-self-link" href="#weak-or-non-existent-network-segmentation" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;レガシー環境のネットワークアーキテクチャは、モダンなオブザーバビリティを念頭に設計されていないことがよくあります。
セグメンテーションが最小限のフラットあるいは共有ネットワーク上で動作するものもあれば、レガシーなプロトコルが混在する深くネストされたネットワークに依存するものもあります。
いずれの場合も、テレメトリー収集を導入することで次のような事態が起こり得ます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;意図しないネットワークセグメントに対して新たな受信エンドポイントが露出する&lt;/li&gt;
&lt;li&gt;Collector やブリッジへの意図しない横方向アクセスが許容される&lt;/li&gt;
&lt;li&gt;これまで分離されていたゾーンの間に予期せぬ経路が生まれる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;このような環境では、Collector の配置は Collector の設定と同じくらい重要です。
ネットワーク境界、ファイアウォール、プロトコルゲートウェイに対して Collector がどこに位置するのかを慎重に評価してください。&lt;/p&gt;
&lt;h3 id="limited-patching-and-long-lifecycles"&gt;限られたパッチ適用と長いライフサイクル&lt;a class="td-heading-self-link" href="#limited-patching-and-long-lifecycles" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;産業システムはアップグレードなしで何年も稼働することがあります。
Collector の配置方法によって、パッチ適用の戦略は決まります。
一般的なモデルは 2 つあります。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Collector を外部ブリッジとして配置する（推奨）:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Collector はレガシーシステムの境界の外側（別のホスト、VM、コンテナ上）で動作し、産業環境とオブザーバビリティバックエンドの間のブリッジとして機能します。
このモデルでは、次のような利点があります。&lt;/p&gt;</description></item><item><title>OpenTelemetry が CNCF の Graduated プロジェクトに</title><link>https://opentelemetry.io/ja/blog/2026/otel-graduates/</link><pubDate>Fri, 22 May 2026 19:35:22 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/otel-graduates/</guid><description>&lt;p&gt;本日、Cloud Native Computing Foundation（CNCF）は OpenTelemetry が Graduated になったことを
&lt;a href="https://www.cncf.io/announcements/2026/05/21/cloud-native-computing-foundation-announces-opentelemetrys-graduation-solidifying-status-as-the-de-facto-observability-standard/" target="_blank" rel="noopener" class="external-link"&gt;発表しました&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;Graduated はプロジェクトにとって重要なマイルストーンであり、OpenTelemetry のコミュニティとエコシステムの強さを反映するものです。
OpenTracing と OpenCensus の統合以降、数千人ものコントリビューター、メンテナー、エンドユーザー、そして多くの組織が、OpenTelemetry を業界全体で利用される、オープンでベンダーニュートラルなオブザーバビリティフレームワークへと育てる手助けをしてきました。&lt;/p&gt;
&lt;p&gt;このマイルストーンはコミュニティのものです。&lt;/p&gt;
&lt;p&gt;コード、ドキュメント、仕様、言語 SDK、セマンティック規約、バグ報告、レビュー、コミュニティサポート、アドボカシー、そしてエンドユーザー体験を寄せてくださったすべての方々に感謝します。
OpenTelemetry は、毎日プロジェクトに時間と専門知識を投じ続けてくれる人々のおかげで存在しています。&lt;/p&gt;
&lt;p&gt;また、Graduated のプロセスを通じて OpenTelemetry を支えてくださった CNCF コミュニティ、Technical Oversight Committee のスポンサー、そしてエンドユーザーの皆様にも感謝しています。&lt;/p&gt;
&lt;p&gt;Graduated はゴールではありません。
OpenTelemetry コミュニティは、グローバル規模のクラウドネイティブソフトウェアのために、相互運用可能で高品質なオブザーバビリティの標準とツールを構築することに、これからも取り組み続けます。&lt;/p&gt;
&lt;p&gt;この旅の一員でいてくださり、ありがとうございます。
この先に何が待っているのか、私たちはワクワクしています。&lt;/p&gt;</description></item><item><title>Ecosystem Explorer プロジェクトの紹介</title><link>https://opentelemetry.io/ja/blog/2026/introducing-the-ecosystem-explorer/</link><pubDate>Tue, 19 May 2026 21:31:49 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/introducing-the-ecosystem-explorer/</guid><description>&lt;p&gt;OpenTelemetry は広大です。
Java エージェントだけでも、240 を超えるさまざまな自動計装が含まれています。
Collector には数百ものコンポーネントがあります。
Python、JavaScript、Go、.NET には、それぞれ独自の計装ライブラリエコシステムがあり、それぞれに独自のパターンや規約があります。&lt;/p&gt;
&lt;p&gt;&lt;a href="https://opentelemetry.io/blog/2025/devex-survey/#key-takeaways"&gt;2025 Developer Experience Survey&lt;/a&gt; では、ユーザーは「ドキュメントをたどるのが難しく、OpenTelemetry ウェブサイトと GitHub リポジトリを行き来する必要がある」、また「さまざまな情報源から情報をつなぎ合わせなければならない」ことが多いと回答しました。
主要な情報源として &lt;a href="https://opentelemetry.io" target="_blank" rel="noopener" class="external-link"&gt;opentelemetry.io&lt;/a&gt; を利用しているユーザーは約半数にすぎず、それ以外のユーザーは GitHub、ベンダードキュメント、あるいは答えを見つけられる場所を参照しています。&lt;/p&gt;
&lt;p&gt;そして、ドキュメントを見つけられたとしても、それが基本的な疑問に答えてくれるとは限りません。
実際にどのテレメトリーシグナルを受け取ることになるのでしょうか。
&lt;a href="https://opentelemetry.io/blog/2024/otel-get-started-survey/"&gt;OpenTelemetry Getting Started Survey&lt;/a&gt; では、回答者の 65% が、計装が実際に何を生成するのかを示すリファレンス実装を求めていることがわかりました。
&lt;a href="https://opentelemetry.io/blog/2026/2025-year-in-review/#ecosystem-explorer-unlocking-the-power-of-our-metadata"&gt;OpenTelemetry 2025 Year in Review post&lt;/a&gt; で述べられているように、既存の &lt;a href="https://opentelemetry.io/ecosystem/registry/"&gt;OpenTelemetry Registry&lt;/a&gt; はユーザーがコンポーネントを見つける助けになりますが、次のような疑問に答えるために「必要な情報の深さを常に提供しているわけではありません」。
どのライブラリが計装されているのか。
どのスパン、メトリクス、属性を出力するのか。
それはバージョンごとにどのように変わるのか。&lt;/p&gt;
&lt;p&gt;OpenTelemetry の導入の中心には、根本的なジレンマがあります。
あるコンポーネントがどのテレメトリーを生成するのか（どのスパン、メトリクス、属性なのか）を理解するには、多くの場合、まずそれをデプロイしなければなりません。
OpenTelemetry が自分たちのニーズに合うか評価している人に、それを求めるのは大きな負担です。&lt;/p&gt;
&lt;p&gt;私たちはそれを解決するものを構築しています。
約 1 年にわたってプロトタイプに取り組んだ後、新しいサイトが &lt;a href="https://explorer.opentelemetry.io/" target="_blank" rel="noopener" class="external-link"&gt;explorer.opentelemetry.io&lt;/a&gt; で公開されましたが、まだまだ開発途上です。&lt;/p&gt;
&lt;h2 id="the-java-agent-ecosystem"&gt;Java エージェントエコシステム&lt;a class="td-heading-self-link" href="#the-java-agent-ecosystem" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Java エージェントは、私たちが最初に完全にマッピングしたエコシステムです。
240 を超える計装が&lt;a href="https://explorer.opentelemetry.io/java-agent/instrumentation/latest" target="_blank" rel="noopener" class="external-link"&gt;インデックス化され、検索可能&lt;/a&gt;になっています。
名前で閲覧したり、計装タイプでフィルタリングしたり、各計装が出力するスパン、メトリクス、属性を正確に示す詳細ページを掘り下げたりできます。
設定オプションはドキュメント化され、それが影響するテレメトリーにマッピングされています。&lt;/p&gt;
&lt;img src="https://opentelemetry.io/blog/2026/introducing-the-ecosystem-explorer/vertx-telemetry.png" alt="テレメトリー概要の例"&gt;&lt;p&gt;バージョンサポートも組み込まれています。
Explorer は複数の Java エージェントリリースを追跡するため、特定のバージョンがどのテレメトリーを生成するのか、あるいはバージョン間で何が変わったのかを確認できます。
これは、アップグレードを計画するときや、リリース後にテレメトリーの見え方が変わった理由をデバッグするときに特に役立ちます。&lt;/p&gt;
&lt;img src="https://opentelemetry.io/blog/2026/introducing-the-ecosystem-explorer/vertx-comparison.png" alt="バージョン比較の例"&gt;&lt;p&gt;毎晩実行される自動化があります。
新しい Java エージェントバージョンがリリースされると、パイプラインがそれを検出し、メタデータを抽出し、レジストリを更新するため、手動での介入は不要です。&lt;/p&gt;
&lt;p&gt;Java で初期アプローチを検証しました。
今度は、新しいエコシステムへ拡張するための助けが必要です。&lt;/p&gt;</description></item><item><title>OpenTelemetry 日本コミュニティ向けアンケート</title><link>https://opentelemetry.io/ja/blog/2026/japanese-survey/</link><pubDate>Mon, 04 May 2026 09:31:32 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/japanese-survey/</guid><description>&lt;p&gt;このレポートは、日本の開発者やエンジニアにおける OTel の認知度、導入状況、コミュニティ参加の現状を把握するために実施された、OpenTelemetry 日本コミュニティ向けアンケートの結果をまとめたものです。
このアンケートは、開発、SRE、DevOps、プラットフォームエンジニアリングといった役割の実務者を対象とし、CNCF コミュニティチャネル、および X (旧 Twitter)、&lt;a href="https://qiita.com/" target="_blank" rel="noopener" class="external-link"&gt;Qiita&lt;/a&gt;、Zenn といった日本のソーシャルプラットフォームを通じて配布されました。
目的は、日本の技術エコシステムにおいて OTel の利用とエンゲージメントを意義ある形で拡大できる、データドリブンな戦略を立案することです。&lt;/p&gt;
&lt;h2 id="key-takeaways"&gt;主なポイント&lt;a class="td-heading-self-link" href="#key-takeaways" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;OTel の導入については、本アンケートには成熟した層からの回答が集まりました。
61.47% がすでに本番環境で稼働させており、さらに 25.69% が評価中です。
両者を合わせると回答者の約 87% を占めます。&lt;/li&gt;
&lt;li&gt;シグナルの収集ではトレースが 93% で最も多く、メトリクスが先行する傾向にある世界の OTel アンケートとは対照的な結果となっています。&lt;/li&gt;
&lt;li&gt;コミュニティの満足度は高く、NPS は +49 を記録しました。
ただし 27.37% は中立 (パッシブ) であり、ドキュメントの改善やコミュニティへの働きかけによって、推奨者へと転換できる余地があります。&lt;/li&gt;
&lt;li&gt;Go のユーザーは導入への意欲が最も強く、評価段階の 39% と比較して本番運用が 76% と数値が跳ね上がっており、いずれの言語よりも大きな伸びを示しています。&lt;/li&gt;
&lt;li&gt;回答者の 86% がカンファレンスに参加していますが、KubeCon Japan 2025 への参加は 25% にとどまっており、今後の開催に向けて、まだリーチできていない大きな潜在層があることを示唆しています。&lt;/li&gt;
&lt;li&gt;Twitter/X は 2 番目に多く利用されている情報源 (83%) ですが、OpenTelemetry はそこに公式アカウントを持っておらず、また日本でよく使われている Zenn や Qiita にも存在感がありません。
日本の利用者と関わっていきたいのであれば、これに対処することを検討すべきです。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="demographics-and-background"&gt;回答者属性と背景&lt;a class="td-heading-self-link" href="#demographics-and-background" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;回答者の構成は &lt;strong&gt;開発チーム&lt;/strong&gt; に大きく偏っており (44.95%)、次いで SRE が 22.94% で 2 番目に大きなグループとなっています。
DevOps、プラットフォームエンジニアリング、セールスエンジニアリングが中位層を形成し、運用担当 (Operations) と専任のオブザーバビリティ担当を合わせても 7% 未満にとどまります。
地理的には、東京を含む &lt;strong&gt;関東地方&lt;/strong&gt; に大きく集中しており (76.15%)、近畿地方 (大阪・京都圏) が 12.84% で大きく離された 2 位となっています。
これは日本のテック産業における東京の存在感を考えれば驚くことではありませんが、これらの都市圏以外の日本の開発者層を完全に代表しているとは言えない可能性があることは、留意しておく必要があります。&lt;/p&gt;</description></item><item><title>Span Events APIの非推奨化</title><link>https://opentelemetry.io/ja/blog/2026/deprecating-span-events/</link><pubDate>Thu, 26 Mar 2026 19:22:32 +0900</pubDate><guid>https://opentelemetry.io/ja/blog/2026/deprecating-span-events/</guid><description>&lt;p&gt;OpenTelemetryはSpan Event APIを非推奨化します。
この記事では、この変更を行う理由、その概要、そして準備のために必要なことを説明します。
要約すると以下のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;イベントを送信する2つの重複した方法（スパンイベントとログベースのイベント）によって生じる混乱と重複を解消したいと考えています。&lt;/li&gt;
&lt;li&gt;新しいコードは、現在のスパンに関連付けられたログとしてイベントを記録すべきです。&lt;/li&gt;
&lt;li&gt;古い「スパンイベント」スタイルは段階的に廃止されますが、スパン上のイベントを表示する既存のデータとビューは引き続き機能します。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-deprecate-the-span-event-api"&gt;なぜSpan Event APIを非推奨にするのか？&lt;a class="td-heading-self-link" href="#why-deprecate-the-span-event-api" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;現在、OpenTelemetryはトレースと相関するイベントを送信するための主要な方法を2つ提供しています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://opentelemetry.io/docs/specs/otel/trace/api"&gt;Tracing API&lt;/a&gt;の&lt;code&gt;Span.AddEvent&lt;/code&gt;または&lt;code&gt;Span.RecordException&lt;/code&gt;メソッドを使用して作成されるスパンイベント。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://opentelemetry.io/docs/specs/otel/logs/api"&gt;Logs API&lt;/a&gt;を介して（直接、またはOpenTelemetryにブリッジされたロギングライブラリを通じて）送信され、アクティブなコンテキストに関連付けられるログベースのイベント。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;同じ概念に対して競合する2つのAPIを持つことには、いくつかの欠点があります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;計装の作成者に対するガイダンスの分断。&lt;/strong&gt; ライブラリやフレームワークの作者は、非常に似たデータを送信するための2つの方法のいずれかを選択しなければなりません。
選択が異なると、エコシステム全体でユーザーエクスペリエンスに一貫性がなくなります。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ユーザーにとっての重複した概念。&lt;/strong&gt; オペレーターはスパンイベントとログイベントの両方、それらのエクスポート方法、およびバックエンドでの扱いを理解しなければなりません。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;進化の遅延。&lt;/strong&gt; イベントモデルの改善（たとえば、スキーマ、属性、後方互換性に関するもの）は、2か所で仕様策定と実装が必要になります。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;OpenTelemetryコミュニティは、よりシンプルなメンタルモデルへの収束を進めています。
&lt;strong&gt;イベントはLogs APIを介して送信される名前付きのログ&lt;/strong&gt;であり、スパン上の特別なケースとしてではなく、コンテキストを通じてトレースやメトリクスと相関するというモデルです。
この変更は、OpenTelemetryがイベントを表現する方法を統一するものとして重要です。
この方向性の背景については、以前のブログ記事&lt;a href="https://opentelemetry.io/blog/2025/opentelemetry-logging-and-you/"&gt;OpenTelemetry Logging and You&lt;/a&gt;を参照してください。&lt;/p&gt;
&lt;p&gt;同時に、スパンイベントが今日広く使用されていることも認識しています。
多くのバックエンドは専用のトレースビューでスパンイベントを表示しており、一部のユーザーは親スパンと同じOTLPエクスポートペイロードにイベントが含まれることに依存しています。&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/open-telemetry/opentelemetry-specification/blob/fd43145dde7e5192ebc59a20992d98a3e6af5553/oteps/4430-span-event-api-deprecation-plan.md" target="_blank" rel="noopener" class="external-link"&gt;OTEP 4430: Span Event API非推奨化計画&lt;/a&gt;のプランは、以下の目標のバランスを取ることを目指しています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;新しいイベントはLogs APIを通じて送信すべきという&lt;strong&gt;明確で一貫したガイダンス&lt;/strong&gt;の提供。&lt;/li&gt;
&lt;li&gt;互換性レイヤーを通じて、トレース内のスパンイベントに依存する&lt;strong&gt;既存のワークフローの保持&lt;/strong&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;つまり、スパンに付随するイベントを見る機能ではなく、スパンイベントを記録するための&lt;strong&gt;API&lt;/strong&gt;を非推奨化するということです。&lt;/p&gt;
&lt;h2 id="what-is-changing"&gt;何が変わるのか？&lt;a class="td-heading-self-link" href="#what-is-changing" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;非推奨化は&lt;strong&gt;新しいイベントの記録方法&lt;/strong&gt;に焦点を当てています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ログベースのイベントに対するOTLPサポートはすでに安定しており、Logs APIはスパンイベントがこれまで持っていたすべてのものを、より豊富なメタデータとより柔軟なエクスポートおよびフィルタリング機能とともに記録できます。&lt;/li&gt;
&lt;li&gt;トレース仕様は、ログベースのイベントの送信を優先して&lt;code&gt;Span.AddEvent&lt;/code&gt;や&lt;code&gt;Span.RecordException&lt;/code&gt;などのAPIを非推奨化します。&lt;/li&gt;
&lt;li&gt;言語APIとSDKはログベースのイベントをファーストクラスとして扱い、必要に応じてそれらのイベントをスパンイベントとして表示できる互換性オプションを提供します。&lt;/li&gt;
&lt;li&gt;計装とセマンティック規約は、次のメジャーバージョンでスパンイベントからログベースのイベントへと段階的に移行しながら、それまでは既存の動作を安定した状態に保ちます。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="what-stays-the-same"&gt;何が変わらないのか？&lt;a class="td-heading-self-link" href="#what-stays-the-same" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Span Event APIが非推奨化されても、ユーザーエクスペリエンスのいくつかの重要な側面は意図的に保持されます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;シグナル間の相関は同じように機能し続けます。&lt;/strong&gt; ログベースのイベントは引き続きOpenTelemetryコンテキストに関連付けられます。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;既存のデータは有効なままです。&lt;/strong&gt; すでにスパンイベントを使用しているデータは、サポートされているOTLPトレースモデルの一部として残ります。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;非推奨化は、新しいコードでイベントを送信する単一の推奨方法を提供するものであり、スパン上のイベントへの可視性を削除するものではありません。&lt;/p&gt;
&lt;h2 id="what-should-you-do"&gt;何をすべきか？&lt;a class="td-heading-self-link" href="#what-should-you-do" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;まず何より、この移行が安全で段階的であり、現在依存しているワークフローと互換性があるものにしたいと考えています。&lt;/p&gt;
&lt;p&gt;役割に応じて、今後の変更がどのように影響するか、そして何ができるかを以下に示します。&lt;/p&gt;</description></item></channel></rss>