クイックスタート
OpenTelemetryコレクターは、トレース、メトリクス、ログを受け取り、テレメトリーを処理し、そのコンポーネントを使用してさまざまなオブザーバビリティバックエンドにエクスポートします。 コレクターの概念的な概要については、コレクターのページを参照してください。
本記事でたった5分で次の内容を学習できます。
- OpenTelemetryコレクターをセットアップして実行する
- テレメトリーを送信し、コレクターによって処理されるのを確認する
事前要件
開発環境が以下の要件を満たしていることを確認してください。
このページでは bash
を使っていると仮定しています。
お好みのシェルに合わせて、設定やコマンドを変更してください。
- Docker、あるいは他の互換コンテナランタイム
- Go 1.20以上
GOBIN
環境変数が設定されていること。もし設定されていなければ、適切に設定してください。次は一例です1。export GOBIN=${GOBIN:-$(go env GOPATH)/bin}
環境の設定
OpenTelemetryコレクターのDockerイメージをプルします。
docker pull otel/opentelemetry-collector:0.104.0
telemetrygenユーティリティをインストールします。
go install github.com/open-telemetry/opentelemetry-collector-contrib/cmd/telemetrygen@latest
テレメトリーの生成と収集
コレクターを起動します。
docker run \ -p 127.0.0.1:4317:4317 \ -p 127.0.0.1:55679:55679 \ otel/opentelemetry-collector:0.104.0 \ 2>&1 | tee collector-output.txt # 補足的に出力をteeして後で検索しやすくする
別のターミナル窓でサンプルのトレースを生成します。
$GOBIN/telemetrygen traces --otlp-insecure --traces 3
ユーティリティによって生成された出力の中に、トレースが生成されたことのログが表示されるはずです。
2024-01-16T14:33:15.692-0500 INFO traces/worker.go:99 traces generated {"worker": 0, "traces": 3} 2024-01-16T14:33:15.692-0500 INFO traces/traces.go:58 stop the batch span processor
関連する出力を簡単に見るには、フィルタリングすると良いでしょう。
$GOBIN/telemetrygen traces --otlp-insecure \ --traces 3 2>&1 | grep -E 'start|traces|stop'
コレクターコンテナを実行しているターミナル窓に、以下の例に示すようなトレースを取り込んだ様子が表示されるはずです。
$ grep -E '^Span|(ID|Name|Kind|time|Status \w+)\s+:' ./collector-output.txt Span #0 Trace ID : f30faffbde5fcf71432f89da1bf7bc14 Parent ID : 6f1ff7f9cf4ec1c7 ID : 8d1e820c1ac57337 Name : okey-dokey Kind : Server Start time : 2024-01-16 14:13:54.585877 +0000 UTC End time : 2024-01-16 14:13:54.586 +0000 UTC Status code : Unset Status message : Span #1 Trace ID : f30faffbde5fcf71432f89da1bf7bc14 Parent ID : ID : 6f1ff7f9cf4ec1c7 Name : lets-go Kind : Client Start time : 2024-01-16 14:13:54.585877 +0000 UTC End time : 2024-01-16 14:13:54.586 +0000 UTC Status code : Unset Status message : ...
http://localhost:55679/debug/tracez を開いて、表中のサンプルの1つを選択すると、先ほど生成したトレースが表示されます。
完了したら、たとえばControl-Cを使用してコレクターコンテナをシャットダウンします。
この次のステップ
このチュートリアルでは、OpenTelemetryコレクターを起動し、そこにテレメトリーを送信しました。 次のステップとして、以下のことを検討してください。
- コレクターのインストールについて別の方法を試す
- コレクターのデプロイ方法についてさまざまな方法を学ぶ
- コレクターの設定ファイルとその構造を理解する
- レジストリで取得できるコンポーネントを探る
- OpenTelemetry Collector Builder (OCB)を使ってカスタムコレクターをビルドする方法を学ぶ
詳細については、Goの公式サイトにあるYour first programのドキュメントを参照してください。 ↩︎
[i18n] feedback_title
[i18n] feedback_question
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!