AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。

アクティビティフィードのイベントを外部ツールにエクスポートする

Atlas アクティビティフィードから、Datadog、Splunk、カスタマーマネージドクラウドストレージ、およびOpenTelemetry(OTel)互換の宛先を含む外部ツールにイベントをストリーミングできます。イベントをエクスポートすることで、一元的な監査ログ、長期保存、および既存のモニタリングツールやオブザーバビリティツールとの統合が可能になります。

イベントのエクスポートは、以下のレベルで設定できます。

  • プロジェクト: Project Activity Feed からイベントをエクスポートします。

  • 組織: Organization Activity Feed からイベントをエクスポートします。

システムログのエクスポートとは異なり、イベントのエクスポートにはM10+クラスターは必要ありません。イベントのエクスポートは、無料クラスターや共有階層クラスターを含む、すべての階層のクラスターをサポートしています。

利用可能な送信先は、プロジェクトまたは組織のどちらに対して統合を構成するかによって異なります。プロジェクトイベントのエクスポートは、すべてのログエクスポート先をサポートしています。初期リリースでは、組織イベントのエクスポートはOTel互換の送信先のみをサポートしています。

目的地
プロジェクト イベント
組織イベント

はい

No

はい

No

はい

No

はい

No

はい

はい

はい

No

  • プロジェクトのイベントエクスポートを構成するには、プロジェクトへの Project Owner アクセス権が必要です。

  • 組織のイベントエクスポートを構成するには、その組織に対する Organization Owner アクセス権が必要です。

プロジェクトレベルのイベントをエクスポートするには、送信先の構成手順に従い、プロンプトが表示されたら Log Type の下で Events を選択します。

Eventsをシステムログタイプと同じ統合で組み合わせることも、ログとイベント用に個別の統合を作成することもできます。

組織レベルの統合はイベントのみをエクスポートし、OTel互換の送信先のみをサポートします。組織レベルの統合を構成するには、「組織のアクティビティフィードイベントのエクスポート」を参照してください。

イベントのエクスポートをプログラムで構成するには、Atlas Administration APIのログ統合エンドポイントとなる接続されたデバイスを使用します。イベントをエクスポートするには、logTypesを設定してEVENTSを含めます。

方式
エンドポイント
説明

POST

/api/atlas/v2/groups/{groupId}/logIntegrations

プロジェクトレベルのログ統合を1つ作成します。

GET

/api/atlas/v2/groups/{groupId}/logIntegrations

プロジェクトレベルのログ統合をすべて返します。

GET

/api/atlas/v2/groups/{groupId}/logIntegrations/{id}

プロジェクトレベルのログ統合を1つ返します。

PUT

/api/atlas/v2/groups/{groupId}/logIntegrations/{id}

プロジェクトレベルのログ統合を1つ更新します。

DELETE

/api/atlas/v2/groups/{groupId}/logIntegrations/{id}

プロジェクトレベルのログ統合を1つ削除します。

POST

/api/atlas/v2/orgs/{orgId}/logIntegrations

組織レベルのログ統合を1つ作成します。

GET

/api/atlas/v2/orgs/{orgId}/logIntegrations

すべての組織レベルのログ統合を返します。

GET

/api/atlas/v2/orgs/{orgId}/logIntegrations/{id}

組織レベルのログ統合を1つ返します。

PUT

/api/atlas/v2/orgs/{orgId}/logIntegrations/{id}

1 つの組織レベルのログ統合を更新します。

DELETE

/api/atlas/v2/orgs/{orgId}/logIntegrations/{id}

1 つの組織レベルのログ統合を削除します。

注意

組織レベルのエンドポイントとなる接続されたデバイスは、Atlas Administration API のプレビュー版で利用できます。それらを使用するには、Accept ヘッダーを application/vnd.atlas.preview+json に設定します。

組織レベルの統合は、OTEL_LOG_EXPORT統合タイプとEVENTSログタイプのみをサポートします。

レスポンスではヘッダー値が編集されます。統合を更新する際、編集された値を変更せずに送り返すと、保存された値はそのまま残ります。ヘッダー値を変更する場合にのみ、完全な値を指定してください。

次の例では、アクティビティフィードのイベントをエクスポートするプロジェクトレベルのOpenTelemetry統合を作成します。

curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Content-Type: application/json" \ --header "Accept: application/vnd.atlas.2025-03-12+json" \ --include \ --request POST "https://cloud.mongodb.com/api/atlas/v2/groups/{PROJECT-ID}/logIntegrations?pretty=true" \ --data '{ "type": "OTEL_LOG_EXPORT", "logTypes": ["EVENTS"], "otelEndpoint": "https://otel-collector.example.com:4318/v1/logs", "otelSuppliedHeaders": [ { "name": "Authorization", "value": "Bearer token123" } ] }'

次の例では、アクティビティフィードのイベントをエクスポートする組織レベルのOpenTelemetry統合を作成します。

curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Content-Type: application/json" \ --header "Accept: application/vnd.atlas.preview+json" \ --include \ --request POST "https://cloud.mongodb.com/api/atlas/v2/orgs/{ORG-ID}/logIntegrations?pretty=true" \ --data '{ "type": "OTEL_LOG_EXPORT", "logTypes": ["EVENTS"], "otelEndpoint": "https://otel-collector.example.com:4318/v1/logs", "otelSuppliedHeaders": [ { "name": "Authorization", "value": "Bearer token123" } ] }'

エンドポイントとなる接続されたデバイスは、作成された統合を返します。

{ "id": "66d9f3e1a2b3c4d5e6f70819", "type": "OTEL_LOG_EXPORT", "logTypes": ["EVENTS"], "otelEndpoint": "https://otel-collector.example.com:4318/v1/logs", "otelSuppliedHeaders": [ { "name": "Authorization", "value": "<redacted>" } ]}

Atlas は、OTLP/HTTP を介して、ユーザーの宛先にイベントを JSON ペイロードとして配送します。エクスポートされた各イベントは OTLP ログ レコードです。レコードのリソースには、アクティビティフィードイベントストリームを識別する mongodb-atlas-events に設定された service.name 属性が含まれています。このため、OTel コレクターはこれらのイベントを他のテレメトリーとは別々にルーティングできます。Atlas は、エクスポートされたイベントから null 値の属性を省略します。

エクスポートされた各イベントには、次のフィールドが含まれます。

フィールド
説明

timeUnixNano

イベントが発生した時刻(UNIXエポックからのナノ秒単位)。

severityText

イベントの重大度をテキストとして表示します。例えば INFO など。アクティビティフィードに表示されるイベントの重要度に対応します。

severityNumber

OTLP シビアリティ番号列挙としてのイベントのシビアリティ。例えば SEVERITY_NUMBER_INFO など。

body.stringValue

JSON エンコードされたイベント オブジェクト。イベントID (_id)、イベントタイプ (eventType)、UNIXエポックからの作成時間 (ミリ秒単位) (createdDate)、プロジェクトID (該当する場合のみ) (projectId)、およびイベント固有の詳細 (eventPayload)が含まれています。source オブジェクトは、イベントを開始したものを特定します。たとえば、USER の sourceType や、username を持つ sourceInfo オブジェクトです。

mongodb.event.id 属性

イベントの一意の識別子。イベントの重複を排除するには、このフィールドを使用します。

mongodb.event.type 属性

アクティビティフィード イベント タイプ。イベントの種類の一覧については、Atlas アラート イベントの種類を参照してください。

mongodb.event.payload.encoding 属性

body.stringValue(jsonなど)でのイベントペイロードのエンコーディング。

mongodb.org.id 属性

イベントが発生した組織のID。組織レベルのエクスポートでは常に存在します。一部のプロジェクトレベルのイベントに存在します。

mongodb.project.id 属性

イベントが発生したプロジェクトのID。プロジェクトレベルのエクスポートでは常に存在します。一部の組織レベルのイベントに存在します。

次の例は、エクスポートされたプロジェクトイベントを示しています。

{ "timeUnixNano": "1788896817574000000", "severityNumber": "SEVERITY_NUMBER_INFO", "severityText": "INFO", "body": { "stringValue": "{\"_id\":\"6aa06631ba29fc2b0f206c32\",\"eventType\":\"/events/mms/alerts/alert_config_added_audit\",\"projectId\":\"62abb98d95a82610b74debc5\",\"createdDate\":1788896817574,\"resources\":[],\"eventPayload\":\"{\\\"targetAlertConfigId\\\": \\\"6aa06631ba29fc2b0f206c30\\\", \\\"targetAlertConfigEventType\\\": \\\"HOST_DOWN\\\", \\\"targetAlertConfigType\\\": \\\"HOST\\\"}\",\"source\":{\"sourceType\":\"USER\",\"sourceInfo\":{\"username\":\"Atlas Admin\"}}}" }, "attributes": [ { "key": "mongodb.event.id", "value": { "stringValue": "6aa06631ba29fc2b0f206c32" } }, { "key": "mongodb.event.type", "value": { "stringValue": "/events/mms/alerts/alert_config_added_audit" } }, { "key": "mongodb.project.id", "value": { "stringValue": "62abb98d95a82610b74debc5" } }, { "key": "mongodb.event.payload.encoding", "value": { "stringValue": "json" } } ]}
  • ニアリアルタイム。通常の状態では、Atlasはニアリアルタイムでイベントを配信します。バッチするは、約1分に1回フラッシュされます。

  • 少なくとも1回の配信。Atlasは同じイベントを複数回配信する場合があります。一意の mongodb.event.id フィールドを使用してイベントを重複排除します。

  • 停止時のバッファリング送信先が利用できない場合、Atlasはイベントをバッファリングし、配信を再試行します。Atlasは、配信されなかったイベントを最大7日間保持します。7日経過しても配信されないイベントは、完全に削除されます。

  • 自動リプレイ、バックフィル、または障害アラートはありません。初期リリースでは、永続的な障害が発生した後にイベントが自動的にリプレイされることはなく、統合を構成する前に発生した過去のイベントがバックフィルされることもありません。永続的な障害が発生した後にイベントの再配信をリクエストするには、MongoDB サポートにお問い合わせください。

目的地
制限

Datadog

DataDogは、1リクエストあたり最大5 MB、1,000件のイベントを受け付けます。

Slack

Splunkは、HTTP Event Collector (HEC) を介してイベントをバッチするで取り込みます。バッチする内の1つのイベントが不正な形式である場合、Splunkはバッチする全体を拒否します。

OpenTelemetry

配送は、OTel コレクターの可用性および構成に依存します。エンドポイントとなる接続されたデバイスは、公開認証局(CA)によって署名された証明書とともに HTTPS を使用する必要があります。エンドポイントとなる接続されたデバイス URL は最大で 2,048 文字です。合計サイズが最大2KBの最大10個のヘッダーを設定できます。

イベントエクスポートには、個別のSKUや機能ごとの料金はありません。ただし、イベントのエクスポートにはデータ転送料金が発生する場合があり、これは送信先、リージョン、クラウドプロバイダーによって異なります。詳細については、「データ転送コスト」を参照してください。