警告Temporal プラットフォームでの OpenMetrics のサポートは、Public Preview として提供されています。詳細については、Temporal のドキュメントを参照してください。
要点OTel Prometheus receiver を使用して、ClickStack で Temporal Cloud のメトリクスを監視します。あらかじめ用意されたダッシュボードも含まれています。
既存の Temporal Cloud とのインテグレーション
前提条件
- 稼働中の ClickStack インスタンス
- 既存の Temporal Cloud アカウント
- ClickStack から Temporal Cloud への HTTP ネットワークアクセス
カスタム OTel collector 設定を作成する
ClickStack では、カスタム設定ファイルをマウントして環境変数を設定することで、ベースの OpenTelemetry collector 設定を拡張できます。このカスタム設定は、OpAMP 経由で HyperDX が管理するベース設定にマージされます。temporal-metrics.yaml という名前のファイルを、次の設定内容で作成します。temporal-metrics.yaml
metrics.temporal.ioの Temporal Cloud に接続します- 60秒ごとにメトリクスを収集します
- 主要なパフォーマンスメトリクスを収集します
- OpenTelemetry セマンティック規約 に従って、必須の
service.nameリソース属性を設定します - 専用のパイプラインを介してメトリクスを ClickHouse エクスポーターにルーティングします
- カスタム設定で定義するのは、新しい receiver、プロセッサ、パイプラインのみです
memory_limiterとbatchのプロセッサ、およびclickhouseエクスポーターは、ベースの ClickStack 構成で既に定義されているため、ここでは名前で参照するだけですresourceプロセッサは、OpenTelemetry セマンティック規約に従って必須のservice.name属性を設定します- Temporal Cloud アカウントが複数ある場合は、それらを区別できるように
service.nameをカスタマイズしてください (例:"temporal-prod"、"temporal-dev")
カスタム設定を読み込むように ClickStack を構成する
既存の ClickStack デプロイメントでカスタム collector 設定を有効にするには、次の作業が必要です。- カスタム設定ファイルを
/etc/otelcol-contrib/custom.config.yamlにマウントする - 環境変数
CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yamlを設定する temporal.keyファイルを/etc/otelcol-contrib/temporal.keyにマウントする- ClickStack と Temporal 間のネットワーク接続を確保する
temporal-metrics.yaml と temporal.key が保存されているサンプルディレクトリで実行することを前提としています。オプション 1: Docker Compose
ClickStack デプロイメントの設定を更新します。オプション 2: Docker run (オールインワンイメージ)
オールインワンイメージをdocker run で使用する場合:HyperDX でメトリクスを確認する
設定後、HyperDX にログインし、メトリクスが取り込まれていることを確認します。- Metrics エクスプローラーに移動します
temporalで始まるメトリクスを検索します (例:temporal_cloud_v1_workflow_success_count、temporal_cloud_v1_poll_timeout_count)- 設定した収集間隔でメトリクスのデータポイントが表示されるはずです
ダッシュボードと可視化
ダッシュボード設定
あらかじめ用意されたダッシュボードをインポートする
- HyperDX を開き、Dashboards セクションに移動します
- 右上の三点メニューから Import Dashboard をクリックします
temporal-metrics-dashboard.jsonファイルをアップロードし、Finish Import をクリックします
ダッシュボードを表示する
すべての可視化があらかじめ設定された状態でダッシュボードが作成されます。トラブルシューティング
カスタム設定が読み込まれない
CUSTOM_OTELCOL_CONFIG_FILE が正しく設定されているか確認してください。
/etc/otelcol-contrib/custom.config.yaml にマウントされていることを確認してください。
temporal.key がコンテナにマウントされていることを確認します。
HyperDX にメトリクスが表示されない
認証エラー
ネットワーク接続の問題
docker run コマンドで外部ネットワーク接続が許可されていることを確認してください。
次のステップ
- 重要なメトリクス (ワークフローの失敗率、タスクのバックログ増加、スケジュールから開始までのレイテンシ) に対するalertsを設定します
- 特定のユースケース (ネームスペースレベルの監視、ワークフロータイプごとのパフォーマンス) 向けに、追加のダッシュボードを作成します
- receiver 設定を異なるエンドポイントとサービス名で複製し、複数の Temporal Cloud アカウントを監視します