イベント ハブまたは外部パートナーへの Azure 監視データのストリーム配信
ほとんどの場合、Azure Monitor からのデータを外部ツールにストリーム配信する最も効率的な方法は、Azure Event Hubs を使うことです。 この記事では、データをストリーミングする方法について簡単に説明し、それを送信できる一部のパートナーを一覧で紹介します。 一部のパートナーには、Azure Monitor との特別な統合があり、Azure でホストされている場合があります。
Event Hubs 名前空間を作成します
データ ソースのストリーミングを構成する前に、Event Hubs 名前空間とイベント ハブを作成しておく必要があります。 この名前空間とイベント ハブが、すべての監視データの送信先です。 Event Hubs 名前空間は、同じアクセス ポリシーを共有するイベント ハブの論理的なグループであり、ストレージ アカウントがそのストレージ アカウント内に個別の BLOB ストレージを持つのと似たようなものです。 監視データのストリーム配信に使用する Event Hubs 名前空間とイベント ハブについては、次の詳細を考慮してください。
- イベント ハブのスループット スケールは、スループット単位の数によって増やすことができます。 通常、必要なスループット ユニットは 1 つだけです。 自分のログの使用量が増加してスケールアップする必要が生じた場合は、名前空間のスループット ユニット数を手動で増やすか、自動インフレを有効にすることができます。
- 多数のコンシューマー間での消費量は、パーティションの数によって並列化することができます。 1 つのパーティションでのサポート上限は 20 MBps です (1 秒あたり約 20,000 件のメッセージ)。 データを使用するツールにより、複数のパーティションからの使用をサポートする場合とサポートしない場合があります。 設定するパーティションの数がわからない場合は、まず 4 つのパーティションから始めることをお勧めします。
- イベント ハブでのメッセージの保持期間は 7 日以上に設定します。 消費元のツールが 1 日以上ダウンした場合でも、この保持期間にすることで、ダウンした時点から最大 7 日前までのイベントを復旧できます。
- イベント ハブには既定のコンシューマー グループを使用してください。 2 種類のツールで同じイベント ハブの同じデータを使用する予定がある場合を除き、他のコンシューマー グループを作成したり、個別のコンシューマー グループを使用したりする必要はありません。
- Azure アクティビティ ログの場合は、ユーザーが Event Hubs 名前空間を選ぶと、Azure Monitor によって、その名前空間内に insights-logs-operational-logs という名前のイベント ハブが作成されます。 その他のログ タイプについては、既存のイベント ハブを選択するか、Azure Monitor によってログ カテゴリごとにイベント ハブを作成することができます。
- イベント ハブからのデータを使用するコンピューターまたは仮想ネットワークでは、通常、送信ポート 5671 と 5672 を開く必要があります。
利用可能な監視データ
「Azure Monitor の監視データのソースとそのデータ収集方法」では、Azure Monitor によって収集されるさまざまな種類のデータと、それらの収集に使用される方法が説明されています。 イベント ハブにストリーミングできるデータと、構成の詳細へのリンクについては、その記事を参照してください。
診断データのストリーミング
診断設定を使用して、ログとメトリックを Event Hubs にストリーミングします。 診断設定を設定する方法については、「診断設定の作成」を参照してください。
次の JSON は、イベント ハブに送信されるメトリック データの例です。
[
{
"records": [
{
"count": 2,
"total": 0.217,
"minimum": 0.042,
"maximum": 0.175,
"average": 0.1085,
"resourceId": "/SUBSCRIPTIONS/ABCDEF12-3456-78AB-CD12-34567890ABCD/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.WEB/SITES/SCALEABLEWEBAPP1",
"time": "2023-04-18T09:03:00.0000000Z",
"metricName": "CpuTime",
"timeGrain": "PT1M"
},
{
"count": 2,
"total": 0.284,
"minimum": 0.053,
"maximum": 0.231,
"average": 0.142,
"resourceId": "/SUBSCRIPTIONS/ABCDEF12-3456-78AB-CD12-34567890ABCD/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.WEB/SITES/SCALEABLEWEBAPP1",
"time": "2023-04-18T09:04:00.0000000Z",
"metricName": "CpuTime",
"timeGrain": "PT1M"
},
{
"count": 1,
"total": 1,
"minimum": 1,
"maximum": 1,
"average": 1,
"resourceId": "/SUBSCRIPTIONS/ABCDEF12-3456-78AB-CD12-34567890ABCD/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.WEB/SITES/SCALEABLEWEBAPP1",
"time": "2023-04-18T09:03:00.0000000Z",
"metricName": "Requests",
"timeGrain": "PT1M"
},
...
]
}
]
次の JSON は、イベント ハブに送信されるログ データの例です。
[
{
"records": [
{
"time": "2023-04-18T09:39:56.5027358Z",
"category": "AuditEvent",
"operationName": "VaultGet",
"resultType": "Success",
"correlationId": "12345678-abc-4bc5-9f31-950eaf3bfcb4",
"callerIpAddress": "10.0.0.10",
"identity": {
"claim": {
"http://schemas.microsoft.com/identity/claims/objectidentifier": "123abc12-abcd-9876-cdef-123abc456def",
"appid": "12345678-a1a1-b2b2-c3c3-9876543210ab"
}
},
"properties": {
"id": "https://mykeyvault.vault.azure.net/",
"clientInfo": "AzureResourceGraph.IngestionWorkerService.global/1.23.1.224",
"requestUri": "https://northeurope.management.azure.com/subscriptions/ABCDEF12-3456-78AB-CD12-34567890ABCD/resourceGroups/rg-001/providers/Microsoft.KeyVault/vaults/mykeyvault?api-version=2023-02-01&MaskCMKEnabledProperties=true",
"httpStatusCode": 200,
"properties": {
"sku": {
"Family": "A",
"Name": "Standard",
"Capacity": null
},
"tenantId": "12345678-abcd-1234-abcd-1234567890ab",
"networkAcls": null,
"enabledForDeployment": 0,
"enabledForDiskEncryption": 0,
"enabledForTemplateDeployment": 0,
"enableSoftDelete": 1,
"softDeleteRetentionInDays": 90,
"enableRbacAuthorization": 0,
"enablePurgeProtection": null
}
},
"resourceId": "/SUBSCRIPTIONS/ABCDEF12-3456-78AB-CD12-34567890ABCD/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.KEYVAULT/VAULTS/mykeyvault",
"operationVersion": "2023-02-01",
"resultSignature": "OK",
"durationMs": "16"
}
],
"EventProcessedUtcTime": "2023-04-18T09:42:07.0944007Z",
"PartitionId": 1,
"EventEnqueuedUtcTime": "2023-04-18T09:41:14.9410000Z"
},
...
ロジック アプリを使用した手動ストリーム配信
イベント ハブに直接ストリーム配信できないデータについては、Azure Storage に書き込むことができます。その後、時刻によってトリガーされるロジック アプリを使って、データを Azure Blob Storage からプルし、メッセージとしてイベント ハブにプッシュできます。
Azure Monitor とパートナー ツールの統合
Azure Monitor で監視データをイベント ハブにルーティングすると、外部の SIEM や監視ツールに簡単に統合することができます。 次の表の一覧は、ツールと Azure Monitor の統合の例です。
ツール | Azure でホスト | 説明 |
---|---|---|
IBM QRadar | いいえ | Microsoft Azure DSM および Microsoft Azure Event Hub プロトコルは、IBM サポート Web サイトからダウンロードすることができます。 |
Splunk | いいえ | Microsoft Cloud Services 用の Splunk アドオンは、Splunkbase で使用できるオープンソース プロジェクトです。 アドオンを Splunk インスタンスにインストールできず、たとえばプロキシを使用している場合や、Splunk Cloud で実行している場合は、Splunk 向け Azure 関数を使って、Splunk HTTP Event Collector にこれらのイベントを転送できます。 このツールは、イベント ハブの新しいメッセージによってトリガーされます。 |
sumologic | いいえ | 「イベント ハブから Azure 監査アプリのログを収集する」で、イベント ハブのデータを使用するように SumoLogic を設定する手順が説明されています。 |
ArcSight | いいえ | ArcSight スマート コネクタ コレクションの一部として、ArcSight Azure イベント ハブ スマート コネクタが提供されています。 |
Syslog サーバー | いいえ | Azure Monitor データを Syslog サーバーに直接ストリーム配信したい場合は、Azure 関数に基づくソリューションを使用できます。 |
LogRhythm | いいえ | LogRhythm を設定してイベント ハブからログを収集する手順については、LogRhythm の Web サイトを参照してください。 |
Logz.io | はい | 詳細については、Azure で実行される Java アプリ用の Logz.io を使用した監視とログ記録の概要に関するページを参照してください。 |