- はじめに
- エージェント
- インテグレーション
- Watchdog
- イベント
- ダッシュボード
- モバイルアプリケーション
- インフラストラクチャー
- サーバーレス
- メトリクス
- ノートブック
- アラート設定
- APM & Continuous Profiler
- CI Visibility
- RUM & セッションリプレイ
- データベース モニタリング
- ログ管理
- セキュリティプラットフォーム
- Synthetic モニタリング
- ネットワークモニタリング
- 開発者
- API
- アカウントの管理
- データセキュリティ
- ヘルプ
AWS サービスログは通常、S3 バケットまたは CloudWatch Log グループに保存されます。これらのログをサブスクライブし、Amazon Kinesis ストリームに転送して、1 つまたは複数の宛先に転送することが可能です。Datadog は、Amazon Kinesis Delivery ストリームのデフォルトの宛先の 1 つです。
AWS は Amazon Kinesis Data Firehose を完全に管理しているため、ストリーミングログ用の追加のインフラストラクチャーや転送構成を維持する必要はありません。
AWS Firehose コンソールで Kinesis Firehose Delivery Stream を設定するか、CloudFormation テンプレートを使用して宛先を自動的に設定できます。
Datadog は、Datadog Kinesis 宛先を使用する場合、入力として Kinesis ストリームを使用することをお勧めします。Datadog がログの唯一のコンシューマーではない場合に備えて、ログを複数の宛先に転送する機能が用意されています。
ログを Datadog に送信するだけの場合、またはログに Kinesis Datastream がすでにある場合は、ステップ 1 を無視してください。
DatadogLogStream
など分かりやすい名前を付け、シャードカウントを 1 にします(必要な各 MB/s スループットのシャード数を増やします)。DatadogLogsforwarder
という名前を付けます。Direct PUT or other sources
のままにします)、DatadogLogStream
(またはすでにログが含まれている既存の Kinesis ストリーム) を選択します。next
をクリックします。Datadog
宛先を選択し、Datadog US
または Datadog EU
リージョンを選択します。APIKEY
を AccessKey
ボックスに貼り付けます (Datadog API 設定ページから API キーを取得できます)。parameters
を追加します。Delivery Stream で失敗したログが引き続き Datadog に送信されるようにするには、この S3 バケットでトリガーするように Datadog Lambda 関数を構成します。
または、この CloudFormation テンプレートをカスタマイズして、AWS コンソールからインストールします。 すべてのKinesis CloudFormation テンプレート全体をご確認ください。
Subscriptions
列を確認して、関連するロググループの現在のサブスクリプションを確認します。新しい Kinesis ストリームをサブスクライバーとして追加します。注: 各 CloudWatch ロググループに許可されるサブスクリプションは 2 つのみです。aws iam create-role
コマンドを使い、Kinesis ストリームにログデータを置く権限をCloudWatch Logs に付与する IAM ロールを作成します。
b. firehose:PutRecord
firehose:PutRecordBatch
、kinesis:PutRecord
、kinesis:PutRecordBatch
アクションを許可するアクセス許可ポリシーを作成します。
c. aws iam put-role-policy
コマンドを使用して、新しく作成した IAM ロールにアクセス許可ポリシーを関連づけます。
d. Use the aws logs put-subscription-filter
コマンドを使い、Datadog に取り込みたい CloudWatch ロググループに Kinesis ストリームを サブスクライブさせます。
サブスクリプションフィルターの例:
aws logs put-subscription-filter \
--log-group-name "MYLOGGROUPNAME" \
--filter-name "MyFilterName" \
--filter-pattern "" \
--destination-arn "DESTINATIONARN (data stream or delivery stream)" \
--role-arn "MYROLEARN"
重要: AWS ドキュメントで説明されているように、サブスクリプションフィルターの宛先はロググループと同じアカウントである必要があります。
3. ロググループインデックスページ の Subscriptions
をチェックして、新しい Kinesis ストリームがロググループをサブスクライブしているかを確認します。
Kinesis データストリームを経由せずにログを配信ストリームに直接プッシュする場合は、AWS サブスクリプションフィルターのドキュメント (ステップ 12) に示すとおり、サブスクリプションフィルターの destination-arn
パラメーターに Kinesis Firehose ARN を追加することで、CloudWatch ロググループを直接 Kinesis Firehose Destination にサブスクライブできます。