Google Cloud Run for Anthos

概要

Google Cloud Run for Anthos は、ハイブリッドおよびマルチクラウド環境のための柔軟なサーバーレス開発プラットフォームです。Cloud Run for Anthos は、Knative サービスをフルサポートする、Google のマネージドサービスです。フルマネージドの Google Cloud をご利用の場合は、Google Cloud Run ドキュメントをご参照ください。

Datadog Google Cloud Platform インテグレーションを使用して、Google Cloud Run for Anthos からメトリクスを収集できます。

セットアップ

メトリクスの収集

インストール

Google Cloud Platform インテグレーションをまだセットアップしていない場合は、最初にセットアップします。

Workload Identity を使用してすでに Cloud Run for Anthos サービスを認証している場合は、他に必要な操作はありません。

Workload Identity を有効にしていない場合、Knative メトリクスの収集には Workload Identity を使用するよう変更する必要があります。これには、Kubernetes サービスアカウントと Google サービスアカウントのバインディングと、Workload Identity を使用してメトリクスを回収する各サービスの構成が含まれます。

セットアップの詳しい手順については、Google Cloud Workload Identity をご覧ください。

収集データ

Google Cloud Run for Anthos はサービスログも公開します。 Google Cloud Run のログは Google Cloud Logging で収集し、Cloud Pub/Sub トピックを通じて Dataflow ジョブに送信することができます。まだの場合は、Datadog Dataflow テンプレートでロギングをセットアップしてください

これが完了したら、Google Cloud Run のログを Google Cloud Logging から Pub/Sub トピックへエクスポートします。

  1. Cloud Run for Anthos へ移動し、希望するサービスをクリックして Logs タブを開きます。

  2. View in Logs Explorer をクリックして Google Cloud Logging Page へ移動します。

  3. シンクを作成し、シンクに適宜名前を付けます。

  4. 宛先として “Cloud Pub/Sub” を選択し、その目的で作成された Pub/Sub トピックを選択します。: Pub/Sub トピックは別のプロジェクトに配置できます。

    Google Cloud Pub/Sub ログを Pub Sub へエクスポート
  5. 作成をクリックし、確認メッセージが表示されるまで待ちます。

トレースとカスタムメトリクス

Datadog Admission Controller を使用して、APM トレーサーと DogStatsD クライアントを自動的に構成します。次のいずれかの方法を使用して、DD_AGENT_HOST および DD_ENTITY_ID の環境変数を挿入します。

  • admission.datadoghq.com/enabled: "true" ラベルをポッドに追加する。
  • mutateUnlabelled: true を設定して Cluster Agent の Admission Controller を構成します。

ポッドで環境変数を受信しないようにするには、admission.datadoghq.com/enabled: "false" ラベルを追加します。これは mutateUnlabelled: true を設定している場合でも機能します。詳細については、Datadog Admission Controller のドキュメントを参照してください。

収集データ

メトリクス

gcp.knative.eventing.broker.event_count
(count)
Number of events received by a broker.
gcp.knative.eventing.trigger.event_count
(count)
Number of events received by a trigger.
gcp.knative.eventing.trigger.event_dispatch_latencies.avg
(gauge)
Average of time spent dispatching an event to a trigger subscriber.
Shown as millisecond
gcp.knative.eventing.trigger.event_dispatch_latencies.p99
(gauge)
99th percentile of time spent dispatching an event to a trigger subscriber.
Shown as millisecond
gcp.knative.eventing.trigger.event_dispatch_latencies.p95
(gauge)
95th percentile of time spent dispatching an event to a trigger subscriber.
Shown as millisecond
gcp.knative.eventing.trigger.event_processing_latencies.avg
(gauge)
Average of time spent processing an event before it is dispatched to a trigger subscriber.
Shown as millisecond
gcp.knative.eventing.trigger.event_processing_latencies.p99
(gauge)
99th percentile of time spent processing an event before it is dispatched to a trigger subscriber.
Shown as millisecond
gcp.knative.eventing.trigger.event_processing_latencies.p95
(gauge)
95th percentile of time spent processing an event before it is dispatched to a trigger subscriber.
Shown as millisecond
gcp.knative.serving.activator.request_count
(count)
The number of requests that are routed to the activator.
Shown as request
gcp.knative.serving.activator.request_latencies.avg
(gauge)
Average of service request times in milliseconds for requests that go through the activator.
Shown as millisecond
gcp.knative.serving.activator.request_latencies.p99
(gauge)
99th percentile of service request times in milliseconds for requests that go through the activator.
Shown as millisecond
gcp.knative.serving.activator.request_latencies.p95
(gauge)
95th percentile of service request times in milliseconds for requests that go through the activator.
Shown as millisecond
gcp.knative.serving.autoscaler.actual_pods
(gauge)
Number of pods that are allocated currently.
gcp.knative.serving.autoscaler.desired_pods
(gauge)
Number of pods autoscaler wants to allocate.
gcp.knative.serving.autoscaler.panic_mode
(gauge)
Set to 1 if autoscaler is in panic mode for the revision, otherwise 0.
gcp.knative.serving.autoscaler.panic_request_concurrency
(gauge)
Average requests concurrency observed per pod during the shorter panic autoscaling window.
Shown as request
gcp.knative.serving.autoscaler.requested_pods
(gauge)
Number of pods autoscaler requested from Kubernetes.
gcp.knative.serving.autoscaler.stable_request_concurrency
(gauge)
Average requests concurrency observed per pod during the stable autoscaling window.
Shown as request
gcp.knative.serving.autoscaler.target_concurrency_per_pod
(gauge)
The desired average requests concurrency per pod during the stable autoscaling window.
Shown as request
gcp.knative.serving.revision.request_count
(count)
The number of requests reaching the revision.
Shown as request
gcp.knative.serving.revision.request_latencies.avg
(gauge)
Average of service request times in milliseconds for requests reaching the revision.
Shown as millisecond
gcp.knative.serving.revision.request_latencies.p99
(gauge)
99th percentile of service request times in milliseconds for requests reaching the revision.
Shown as millisecond
gcp.knative.serving.revision.request_latencies.p95
(gauge)
95th percentile of service request times in milliseconds for requests reaching the revision.
Shown as millisecond

イベント

Google Cloud Run for Anthos インテグレーションには、イベントは含まれません。

サービスチェック

Google Cloud Run for Anthos インテグレーションには、サービスのチェック機能は含まれません。

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問合せください。

その他の参考資料

お役に立つドキュメント、リンクや記事:

PREVIEWING: esther/docs-8632-slo-blog-links