Compute@Edge ログストリーミング:Datadog
最終更新日 2022-05-31
Fastly の Compute@Edge サービスのリアルタイムログストリーミング機能では、Datadogで読み取り可能な形式でログを送信するよう設定することができます。Datadog はクラウドベースの監視及び分析ソリューションで、スタック内のアプリケーション内部を確認し、結果を集計できます。
注意
Fastly ではサードパーティのサービスに関する直接のサポートは行っておりません。詳細については、Fastly サービスの利用規約をご参照ください。
前提条件
Fastly Compute@Edge サービスのログエンドポイントとして Datadog を追加する前に、以下を行う必要があります。
Datadog アカウントの登録。 Datadog サイトでアカウントを作成できます。制限付きの無料プラン、またはアップグレードしてより多くの機能を利用することができます。Datadog の設定を登録する場所が米国または欧州である場合、Fastly でログエンドポイントを設定する際に使用するコマンドが異なります。
Datadog API キーを Datadog の設定ページから取得。 Datadog のインターフェースで、Integrations -> APIsにアクセスし、API キーを作成または取得することができます。
この例ではキーが表示されています
decafbaddeadbeef
。お客様の API キーは、これとは異なります。このキーを忘れないようにメモしてください。
ログエンドポイントとして Datadog を追加する
Datadog アカウントを作成し、Datadog API キーを書き留めた後、以下の手順で Fastly Compute@Edge サービスのログエンドポイントとして Datadog を追加します。
- Rust、AssemblyScript、および JavaScript で書かれた Compute@Edge コードでログ記録を実行する方法に関する詳細については Fastly の開発者向けドキュメントをご覧ください。
- Datadog Create endpointボタンをクリックしてください。Create a Datadog endpoint ページが表示されます。
- Create a Datadog endpoint フィールドに以下のように記入します。
- Name フィールドに、Compute@Edge コードに指定した名前を入力します。例えば、Rust コードの例では、名前は
my_endpoint_name
です。 - Region メニューから、ログの送信先の地域を選択します。
- API key フィールドに、Datadog アカウントの API キーを入力します。
- Name フィールドに、Compute@Edge コードに指定した名前を入力します。例えば、Rust コードの例では、名前は
- Create ボタンをクリックすると、新しいログエンドポイントが作成されます。
- Activate ボタンをクリックして設定変更をデプロイします。
推奨されるログ形式
Datadog に送信するデータは、Datadog の期待に応じてシリアル化する必要があります。
ログが正しくフォーマットされていない場合、Datadog エンドポイントによるログ処理の試行は失敗する場合があります。Datadog にデータを送信するための文字列の形式例はこちらです。
1{2 "ddsource": "fastly",3 "ddtags": "env:production,version:1.0",4 "hostname": "hostname",5 "message": "2019-11-19T14:37:58,995 INFO Hello World",6 "service": "service_id"7}
Compute@Edge サービスの選択言語に関係なく、上記の一般的な JSON 構造を使用して、 message
などの指定フィールド内に具体的な詳細情報を含めることができます。ddsource
フィールドは必須です。ネストされた JSON オブジェクトはサポートされています。Datadog ログメッセージの他のオプションについては、Datadog ドキュメントをご参照ください。送信されたログは、有効な JSON としてフォーマットされる必要があります。
エンドポイントの作成とサービスへの変更が完了すると、数秒後にログが Datadog アカウントに表示されるようになります。これらのログは Datadog アカウント内のDatadog Log Explorerを介してアクセスできます。