Log Analytics ワークスペースのデータ エクスポート ルールを使用すると、選択したテーブルごとにデータを継続的にエクスポートできます。 データがAzure Monitorに到着すると、Azure Blob Storage アカウントまたはAzure Event Hubsにエクスポートします。 この記事では、この機能の詳細と、ワークスペースでデータ エクスポート ルールを構成する手順について説明します。
概要
Log Analytics のデータは、ワークスペースで定義されている保持期間中に使用できます。 これは、Azure Monitor と Azure サービスで提供されるさまざまなエクスペリエンスで使用されます。 他のツールを使用することが必要な場合があります。
-
改ざん防止ストアのコンプライアンス: 取り込み後、Log Analytics 内のデータは変更できませんが、パージすることはできます。 不変ポリシーを使用してストレージ アカウント セットにエクスポートし 、 データ改ざんを保護します。
-
Azure サービスおよびその他のツールとの統合: データが Azure Monitor に到着し、処理されたら、Event Hubs にエクスポートします。
-
監査データとセキュリティ データの長期的な保持: ワークスペースのリージョン内のストレージ アカウントにエクスポートします。 GRS や GZRS などのAzure Storage冗長オプションを使用して、データを他のリージョンにレプリケートします。
Log Analytics ワークスペースでデータ エクスポート ルールを構成すると、ルール内のテーブルの新しいデータが、Azure Monitor パイプラインからストレージ アカウントまたは Event Hubs に到着するとエクスポートされます。 データ エクスポート トラフィックはAzureバックボーン ネットワーク内にあり、Azure ネットワークを離れることはありません。
データは、フィルターなしでエクスポートされます。 たとえば、SecurityEvent テーブルに対してデータ エクスポート ルールを構成すると、その構成時点から、SecurityEvent テーブルに送信されたすべてのデータがエクスポートされます。 または、ワークスペースで変換を構成することで、エクスポートされたデータをフィルタリングまたは変更できます。 変換は、データが Log Analytics ワークスペースに送信される前の受信データとエクスポート先に適用されます。
その他のエクスポート オプション
Log Analytics のデータ エクスポート ルールは、Log Analytics ワークスペースに送信されるデータを継続的にエクスポートします。 その他のオプションでは、次の特定のシナリオのデータをエクスポートできます。
- クエリと時間範囲で 1 つのテーブルから履歴レコードをAzure Blob Storageにエクスポートするには、エクスポート ジョブ (プレビュー) を実行します。 エクスポート ジョブは、履歴データを大規模にオンデマンドでエクスポートするために専用に構築され、Parquet 形式で結果を書き込みます。
- Azure リソースが既に診断ログ設定を使用して Log Analytics ワークスペースにログを送信している場合は、データ エクスポートを定期的に使用するのではなく、Azure リソースの診断設定を直接更新して新しい宛先を追加することを検討してください。 この方法では、データ エクスポートと比較して待機時間は短くなりますが、履歴データは送信されません。
-
Log Analytics クエリ API で定義したログ クエリに基づいてデータのエクスポートをスケジュールします。 Azure Data Factory、Azure Functions、または Azure Logic Apps を使用して、ワークスペースでクエリを調整し、データを宛先にエクスポートします。 この方法はデータ エクスポート機能に似ていますが、この方法を使用すると、フィルターと集計を使用してワークスペースから履歴データをエクスポートできます。 この方法はログ クエリの制限の対象であり、スケーリングを目的としたものではありません。 詳細については、「Logic Apps を使用してLog Analytics ワークスペースからストレージ アカウントにデータをエクスポートする」を参照してください。
- PowerShell スクリプトを使用して、ローカル コンピューターへの 1 回限りのエクスポートを使用します。 詳細については、「Invoke-AzOperationalInsightsQueryExport」を参照してください。
権限が必要です
| アクション |
権限が必要です |
| データ エクスポート ルールを作成または更新する |
Microsoft.OperationalInsights/workspaces/dataexports/writeへの権限は、たとえばLog Analytics 寄稿者組み込みロールによって提供されます。 |
| データエクスポートルールの削除 |
Microsoft.OperationalInsights/workspaces/dataexports/deleteへの権限は、たとえばLog Analytics 寄稿者組み込みロールによって提供されます。 |
| ストレージ アカウントへのエクスポート |
Microsoft.Storage/storageAccounts/blobServices/containers/write: ストレージアカウントへのアクセス許可。たとえば、「Storage Account Contributor」という組み込みロールによって付与されるようなもの |
| イベント ハブへのエクスポート |
Microsoft.EventHub/namespaces/eventhubs/write、Microsoft.EventHub/namespaces/eventhubs/messages/write、Microsoft.EventHub/namespaces/authorizationRules/listkeys/action の権限がイベント ハブに付与されます(例えば、Azure Event Hubs データ所有者の組み込みロールによって提供される権限です)。 |
| テーブルのログに対してクエリを実行する |
Microsoft.OperationalInsights/workspaces/query/<table>/read Log Analytics ワークスペースに対する権限は、たとえば Log Analytics 閲覧者組み込みロール によって提供されます |
| テーブルのログに対してクエリを実行する (テーブル アクション) |
Microsoft.OperationalInsights/workspaces/tables/query/read Log Analytics ワークスペースに対する権限は、たとえば Log Analytics 閲覧者組み込みロール によって提供されます |
Considerations
-
HTTP データ コレクター API を使用して作成されたカスタム ログは、Log Analytics エージェントによって使用されるテキストベースのログを含め、エクスポートできません。
データ収集ルールを使用して作成されたカスタム ログは、テキストベースのログを含め、エクスポートできます。
- データエクスポートでは、より多くのテーブルが徐々にサポートされます。 「 サポートされていないテーブル」セクションを 参照してください。
- ワークスペースあたりのアクティブなルールの最大数は 10 で、それぞれに複数のテーブルを含めることができます。
- ストレージ アカウントは、ワークスペース内のルール間で一意である必要があります。
- サポートされているテーブル プランは、Analytics と Basic です。 補助プランはサポートされていません。
- エクスポート先は、Log Analytics ワークスペースと同じリージョンに配置されている必要があります。
- Premium ストレージ アカウントへのエクスポートはサポートされていません。
データの完全性
データエクスポートは、大量のデータを宛先に移動するように最適化されています。 スケールまたは可用性が不十分な宛先の場合、再試行プロセスは最大 12 時間継続し、エクスポートされたレコードの一部が重複する可能性があります。 信頼性を向上させるには、 ストレージ アカウント と Event Hubs の 宛先に関する推奨事項に従ってください。 再試行期間の後も宛先が使用できない場合、データは破棄されます。
宛先の制限および推奨されるアラートの詳細については、「データ エクスポート ルールを作成または更新する」を参照してください。
価格モデル
データ エクスポートの料金は、JSON 形式のデータで宛先にエクスポートされたバイト数に基づいており、GB (10^9 バイト) で測定されます。 Azure Monitor ログで報告されるテーブル サイズは、エクスポート先に格納されるデータ サイズよりも小さいです。 この不一致は、次の要因が原因です。
- Azure Monitor ログでは、課金対象サイズの計算から特定のフィールドが除外されます。
- ストレージにエクスポートされたデータは圧縮されません。
- エクスポートされたデータには、各レコードが有効な JSON であることを確認するために、各レコードのプロパティ名が含まれています。
- 実際のログ レコードが小さい場合、メタデータのオーバーヘッドが大きくなり、相対サイズの増加が顕著になります。
サイズの計算には JSON 形式のオーバーヘッドが含まれていないため、データ エクスポート サイズの計算はワークスペース クエリでは実行できません。 Azure Monitor ログで報告されたサイズとストレージ アカウントに表示されるサイズを比較する場合は、大きな違いが予想されます。 Azure Monitor ログでは、小さなイベントではプロパティ名などのメタデータが省略されますが、ストレージ BLOB にはメタデータと圧縮されていない JSON の両方が含まれるため、レコードが大幅に大きくなります。
正確な見積もりを得るために、代表的なエクスポートをテスト BLOB コンテナーに実行し、BLOB コンテナー の合計課金サイズを計算するこのサンプル PowerShell スクリプトを使用して結果を測定します。 現在、ソブリン クラウドへのエクスポートには料金はかかりません。 有効化の前には通知が送信されます。
データエクスポートルールは、Log Analyticsデータエクスポートメーターで課金されます。
エクスポート ジョブ (プレビュー) では、同じメーターが使用されます。 請求書またはコスト分析で 2 つを区別するには、[ 追加情報 ] フィールドをオンにします。ここで、データ エクスポート ルールに ExportType:Data export ruleタグが付けられます。
データ エクスポートの課金タイムラインなど、詳細については、「Azure Monitor の価格」を参照してください。 データ エクスポートの課金が 2023 年 10 月上旬に有効になりました。
エクスポート先
ワークスペースでエクスポート ルールを作成する前に、データのエクスポート先を使用できるようにする必要があります。 宛先は異なるサブスクリプションに配置することができます。 Azure Lighthouse では、別の Microsoft Entra テナントの宛先にデータを送信することもできます。
ストレージ アカウント
他の監視以外のデータがない既存のストレージ アカウントを使用して、待機時間またはレート制限の超過によるストレージイングレスエラーを防ぎます。 このアプローチは、データへのアクセスをより適切に制御し、データ エクスポートの信頼性を向上するのに役立ちます。
不変ストレージ アカウントにデータを送信するには、「Azure Blob Storageの不変ポリシーの設定と管理」の説明に従って、ストレージ アカウントの不変ポリシーを設定します。 この記事のすべての手順に従う必要があります。これには、保護された追加 BLOB の書き込みの有効化が含まれます。
| ストレージ要件 |
Detail |
| アカウントレベル |
StorageV1 以降。 Premium はサポートされていません。 |
| リージョン |
Log Analytics ワークスペースと同じリージョン。 リージョン間レプリケーションには、Azure Storage の冗長オプション(GRS、GZRS)を使用します。 |
| コンテナーの名前付け |
テーブルごとに 1 つのコンテナー。 am- という名前の後にテーブル名 ( am-SecurityEvent など) が続きます。 |
| フォルダー構造 |
5 分単位のフォルダー: WorkspaceResourceId=/subscriptions/.../y=<year>/m=<month>/d=<day>/h=<hour>/m=<minute>/PT05M.json |
| BLOB 形式 |
JSON Lines、改行区切り、外側の配列なし。 |
| 追加の制限 |
blob ごとに 50,000 回の書き込み。
PT05M_#.jsonとして追加された追加の BLOB。 |
注意
BLOB への追加は、"TimeGenerated" フィールドに基づいて書き込まれ、ソース データの受信時に発生します。 Azure Monitor に遅延して到着するデータ、または宛先のスロットリングにより再送されたデータは、TimeGenerated に基づいて BLOB に書き込まれます。
ストレージ アカウント内の BLOB の形式は JSON 行で、各レコードは新しい行で区切られ、外側のレコード配列も JSON レコード間のコンマもありません。
Event Hubs
既存の非監視データを含むイベント ハブの使用は避けてください。 このベスト プラクティスは、待機時間やレート制限の超過によるイングレス エラーを防ぐのに役立ちます。
データは、Azure Monitor に到達すると、イベント ハブに送信され、ワークスペース リージョンにある宛先にエクスポートされます。 ルールに別の Event Hub name を指定して、同じ Event Hub 名前空間に対して複数のエクスポート 規則を作成します。
Event Hub name が指定されていない場合、エクスポートするテーブルごとに既定のイベント ハブが作成され、am- の後にテーブルの名前が続く名前が付けられます。 たとえば、テーブル SecurityEvent は、am-SecurityEvent という名前のイベント ハブに送信されます。
Basic および Standard 名前空間レベルでサポートされるイベント ハブの数は 10 です。 これらのレベルに 10 を超えるテーブルをエクスポートする場合は、複数のエクスポート ルール間でテーブルを別の Event Hubs 名前空間に分割するか、イベント ハブ名を指定して、それにすべてのテーブルをエクスポートします。
注意
- Basic Event Hubs 名前空間レベルは制限されています。 サポートされているイベント サイズは小さく、自動的にスケールアップし、スループット ユニットの数を増やすための自動インフレ オプションはサポートされていません。 ワークスペースへのデータ量は時間の経過と共に増加し、その結果、イベント ハブのスケーリングが必要になるため、自動インフレ機能を使用できる Standard、Premium、または Dedicated Event Hubs レベルを使用してください。 詳細については、「Azure Event Hubs のスループット単位を自動的にスケールアップする」参照してください。
-
圧縮されたイベント ハブは、Azure Monitor に含まれていないパーティション キーをメッセージに含める必要があるため、使用できません。
- データのエクスポートでは、仮想ネットワークが有効になっていると Event Hubs リソースに到達できません。 Event Hubs へのアクセスを許可するために、イベント ハブでこのファイアウォール設定をバイパスするには、[信頼されたサービスの一覧にある Azure サービスがこのストレージ アカウントにアクセスすることを許可します] チェックボックスをオンにする必要があります。
エクスポートされたデータのクエリを実行する
ワークスペースからストレージ アカウントにデータをエクスポートすると、 概要で説明されているさまざまなシナリオを満たすことができます。また、ストレージ アカウントから BLOB を読み取ることができるツールで使用できます。 次の方法を使用すると、Log Analytics クエリ言語を使用してデータのクエリを実行できます。これは Azure Data Explorer でも同じです。
データ エクスポートを有効にする
Log Analytics のデータ エクスポートを有効にするには、次の手順を実行する必要があります。
データ エクスポート ルールを作成したら、 宛先を監視 して、信頼性の高いエクスポート操作を確認します。
リソース プロバイダーの登録
Log Analytics データ エクスポートを有効にするには、Azure リソース プロバイダー Microsoft.Insights をサブスクリプションに登録する必要があります。
このリソース プロバイダーは、ほとんどの Azure Monitor ユーザーに既に登録されています。 確認するには、Azure portal で [サブスクリプション] に移動します。 対象のサブスクリプションを選択し、メニューの [設定] セクションで [リソース プロバイダー] を選択します。
Microsoft.Insights を見つけます。 その状態が [登録済み] の場合は、既に登録されています。 それ以外の場合、[登録] を選択して登録します。
また、「Azure リソース プロバイダーと種類」で説明されているように、リソース プロバイダーを登録するために使用可能な方法のいずれかを使用できます。 次のサンプル コマンドでは、Azure CLI を使用します。
az provider register --namespace 'Microsoft.insights'
次のサンプル コマンドでは、PowerShell を使用します。
Register-AzResourceProvider -ProviderNamespace Microsoft.insights
信頼された Microsoft サービスを許可する
選択したネットワークからのアクセスを許可するようにストレージ アカウントを構成する場合は、Azure Monitorがアカウントへの書き込みを許可するように例外を追加する必要があります。 ストレージ アカウントのファイアウォールと仮想ネットワークから、信頼されたサービスの一覧で [Azure サービスにアクセスできるようにする] を選択して、このストレージ アカウントにアクセスします。
宛先を監視する
データ エクスポート操作とアラートには、次のメトリクスを使用できます。
| メトリックの名前 |
説明 |
| エクスポートされたバイト数 |
選択された時間範囲に含まれる Log Analytics ワークスペースから宛先にエクスポートされたバイト数の合計。 エクスポートされるデータのサイズは、エクスポートされる JSON 形式データのバイト数です。 1 GB = 10^9 バイト。 |
| エクスポート エラー |
選択された時間範囲に含まれる Log Analytics ワークスペースから宛先への失敗したエクスポート要求の合計数。 この数には、宛先リソースの調整、禁止されたアクセスのエラー、またはサーバー エラーによるエクスポート試行の失敗が含まれます。 再試行プロセスは失敗した試行を処理し、この数はデータの欠落を示す値ではありません。 |
| エクスポートされたレコード |
選択された時間範囲に含まれる Log Analytics ワークスペースからエクスポートされたレコードの合計数。 この数は、成功で終了した操作のレコードを数えたものです。 |
ストレージ アカウントを監視する
エクスポートには別のストレージ アカウントを使用します。
次のメトリックでアラートを構成します。
| Scope |
メトリック名前空間 |
メトリック |
集計 |
しきい値 |
| ストレージ名 |
アカウント |
イングレス |
合計 |
アラート評価期間あたり最大イングレス数の 80%。 たとえば、米国西部の汎用 v2 の場合、上限は 60 Gbps です。 アラートのしきい値は、5 分間の評価期間あたり 1676 GiB です。 |
アラートの修復アクション:
- 監視以外のデータと共有されていないエクスポートには、別のストレージ アカウントを使用します。
- Azure Storage Standard アカウントでは、要求によってイングレスの上限を上げることがサポートされます。 増加を依頼するには、Azure サポートにお問い合わせください。
- より多くのストレージ アカウント間でテーブルを分割します。
Event Hubs を監視する
メトリックにアラートを構成します。
| Scope |
メトリック名前空間 |
メトリック |
集計 |
しきい値 |
| 名前空間の名前 |
Event Hubs の標準メトリック |
着信バイト数 |
合計 |
アラート評価期間あたり最大イングレス数の 80%。 たとえば、制限はユニットあたり 1 MB/秒 (TU または PU) で、使用ユニット数は 5 です。 しきい値は、5 分間の評価期間あたり 228 MiB です。 |
| 名前空間の名前 |
Event Hubs の標準メトリック |
受信要求 |
数える |
アラート評価期間あたり最大イベント数の 80%。 たとえば、制限はユニットあたり 1,000/秒 (TU または PU) で、使用ユニット数は 5 です。 しきい値は、5 分間の評価期間あたり 1,200,000 です。 |
| 名前空間の名前 |
Event Hubs の標準メトリック |
クォータ超過エラー数 |
数える |
リクエストの 1% の範囲で。 たとえば、5 分間あたりの要求数は 600,000 です。 しきい値は、5 分間の評価期間あたり 6,000 です。 |
アラートの修復アクション:
- 非監視データと共有されていないエクスポートでは、個別の Event Hubs 名前空間を使用します。
- 使用量のニーズに合わせて自動的にスケールアップし、スループット ユニットの数を増やすように自動インフレ機能を構成します。
- データ量に合うようにスループット ユニットを増やしているかを確認します。
- より多くの名前空間の間でテーブルを分割します。
- スループットを高めるために Premium または Dedicated レベルを使用します。
データ エクスポート ルールを作成または更新する
データ エクスポート ルールでは、データをエクスポートする宛先とテーブルを定義します。 エクスポート操作が開始される前に、ルールのプロビジョニングに約 30 分かかります。 データ エクスポート ルールに関する考慮事項:
- ストレージ アカウントは、ワークスペース内のルール間で一意である必要があります。
- 個別の Event Hubs に送信するとき、複数のルールで同じ Event Hubs 名前空間を使用できます。
- ストレージ アカウントへのエクスポート: テーブルごとにストレージ アカウントに個別のコンテナーが作成されます。
- Event Hubs にエクスポート: イベント ハブ名が指定されていない場合は、テーブルごとに個別のイベント ハブが作成されます。
Basic および Standard 名前空間レベルでサポートされるイベント ハブの数は 10 です。 これらのレベルに 10 を超えるテーブルをエクスポートする場合は、複数のエクスポート ルール間でテーブルを別の Event Hubs 名前空間に分割するか、ルールでイベント ハブ名を指定して、すべてのテーブルをそれにエクスポートします。
Azure ポータルから、Log Analytics ワークスペースに移動します。
左側のメニューの [設定] で [ ルール] を選択します。
[ データ エクスポート ルール ] タブを選択します。
ペインの上部にある [新しいエクスポート ルール] を選択します。
手順に従い、[作成] を選択します。 [ソース] タブには、データが含まれるテーブルのみが表示されます。
CLI を使用してストレージ アカウントへのデータ エクスポート規則を作成するには、次のコマンドを使用します。 このプロセスでは、テーブルごとに個別のコンテナーが作成されます。
# User input
subscriptionId="aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
resourceGroupName="myResourceGroupName"
storageAccountName="myStorageAccountName"
# Build destination storage account resource ID
storagePath="/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName"
storageProvider="Microsoft.Storage/storageAccounts/$storageAccountName"
storageAccountResourceId="$storagePath/providers/$storageProvider"
az monitor log-analytics workspace data-export create \
--resource-group "$resourceGroupName" \
--workspace-name myWorkspaceName \
--name myRuleName \
--tables SecurityEvent Heartbeat \
--destination "$storageAccountResourceId"
CLI を使用して特定のイベント ハブへのデータ エクスポート ルールを作成するには、次のコマンドを使用します。 すべてのテーブルが指定したイベント ハブ名にエクスポートされますが、それらのテーブルを [種類] フィールドでフィルター処理して分離できます。
# User input
subscriptionId="aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
resourceGroupName="myResourceGroupName"
eventHubNamespace="myEventHubNamespace"
eventHubName="myEventHub"
# Build destination Event Hub resource ID
eventHubPath="/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName"
eventHubProvider="Microsoft.EventHub/namespaces/$eventHubNamespace/eventhubs/$eventHubName"
eventHubResourceId="$eventHubPath/providers/$eventHubProvider"
az monitor log-analytics workspace data-export create \
--resource-group "$resourceGroupName" \
--workspace-name myWorkspaceName \
--name myRuleName \
--tables SecurityEvent Heartbeat \
--destination "$eventHubResourceId"
CLI を使用してイベント ハブへのデータ エクスポート ルールを作成するには、次のコマンドを使用します。 特定のイベント ハブ名を指定しない場合、プロセスでは、 Event Hubs レベルでサポートされている Event Hubs の数まで、テーブルごとに個別のコンテナーが作成されます。 エクスポートするテーブルが他にある場合は、任意の数のテーブルをエクスポートするイベント ハブ名を指定するか、残りのテーブルを別の Event Hubs 名前空間にエクスポートする新しいルールを設定します。
# User input
subscriptionId="aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
resourceGroupName="myResourceGroupName"
eventHubNamespace="myEventHubNamespace"
# Build destination Event Hub namespace resource ID
eventHubNsPath="/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName"
eventHubNsProvider="Microsoft.EventHub/namespaces/$eventHubNamespace"
eventHubNamespaceResourceId="$eventHubNsPath/providers/$eventHubNsProvider"
az monitor log-analytics workspace data-export create \
--resource-group "$resourceGroupName" \
--workspace-name myWorkspaceName \
--name myRuleName \
--tables SecurityEvent Heartbeat \
--destination "$eventHubNamespaceResourceId"
データ エクスポート 規則を作成または更新するには、PUTデータ エクスポート ルール操作グループに対するこの要求を使用します。 ここに記載されている最新の apiVersion を使用します。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataexports/{dataExportName}?api-version={apiVersion}
Authorization: Bearer {accessToken}
Content-Type: application/json
この要求の本文で、テーブルのエクスポート先を指定します。 REST 要求の本文の例を次に示します。
{
"properties": {
"destination": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroupName/providers/Microsoft.Storage/storageAccounts/myStorageAccountName"
},
"tableNames": [
"table1",
"table2"
],
"enable": true
}
}
イベント ハブに対する REST 要求の本文の例を次に示します。
{
"properties": {
"destination": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroupName/providers/Microsoft.EventHub/namespaces/myEventHubNamespace"
},
"tableNames": [
"table1",
"table2"
],
"enable": true
}
}
イベント ハブ名を指定した、イベント ハブに対する REST 要求の本文の例を次に示します。 この場合、エクスポートされたすべてのデータがこれに送信されます。
{
"properties": {
"destination": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroupName/providers/Microsoft.EventHub/namespaces/myEventHubNamespace",
"metaData": {
"EventHubName": "myEventHub"
}
},
"tableNames": [
"table1",
"table2"
],
"enable": true
}
}
PowerShell を使用してストレージ アカウントへのデータ エクスポート規則を作成するには、次のコマンドを使用します。 テーブルごとに個別のコンテナーが作成されます。
# User input
$subscriptionId = 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e'
$resourceGroupName = 'myResourceGroupName'
$storageAccountName = 'myStorageAccountName'
# Build destination storage account resource ID
$storagePath = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName"
$storageProvider = "Microsoft.Storage/storageAccounts/$storageAccountName"
$storageAccountResourceId = "$storagePath/providers/$storageProvider"
$dataExportParams = @{
ResourceGroupName = $resourceGroupName
WorkspaceName = 'myWorkspaceName'
DataExportName = 'myRuleName'
TableName = 'SecurityEvent,Heartbeat'
ResourceId = $storageAccountResourceId
}
New-AzOperationalInsightsDataExport @dataExportParams
PowerShell を使用して特定のイベント ハブへのデータ エクスポート ルールを作成するには、次のコマンドを使用します。 このコマンドは、指定されたイベント ハブ名にすべてのテーブルをエクスポートします。 [ 種類 ] フィールドでフィルター処理してテーブルを区切る。
# User input
$subscriptionId = 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e'
$resourceGroupName = 'myResourceGroupName'
$eventHubNamespace = 'myEventHubNamespace'
$eventHubName = 'myEventHub'
# Build destination Event Hub resource ID
$eventHubPath = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName"
$eventHubProvider = "Microsoft.EventHub/namespaces/$eventHubNamespace/eventhubs/$eventHubName"
$eventHubResourceId = "$eventHubPath/providers/$eventHubProvider"
$dataExportParams = @{
ResourceGroupName = $resourceGroupName
WorkspaceName = 'myWorkspaceName'
DataExportName = 'myRuleName'
TableName = 'SecurityEvent,Heartbeat'
ResourceId = $eventHubResourceId
EventHubName = $eventHubName
}
New-AzOperationalInsightsDataExport @dataExportParams
PowerShell を使用してイベント ハブへのデータ エクスポート ルールを作成するには、次のコマンドを使用します。 特定のイベント ハブ名を指定しない場合、各 Event Hubs レベルでサポートされている Event Hubs の数まで、テーブルごとに個別のコンテナーが作成されます。 他のテーブルをエクスポートするには、ルールでイベント ハブ名を指定します。 また、別のルールを設定し、残りのテーブルを別の Event Hubs 名前空間にエクスポートすることもできます。
# User input
$subscriptionId = 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e'
$resourceGroupName = 'myResourceGroupName'
$eventHubNamespace = 'myEventHubNamespace'
# Build destination Event Hub namespace resource ID
$eventHubNsPath = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName"
$eventHubNsProvider = "Microsoft.EventHub/namespaces/$eventHubNamespace"
$eventHubNamespaceResourceId = "$eventHubNsPath/providers/$eventHubNsProvider"
$dataExportParams = @{
ResourceGroupName = $resourceGroupName
WorkspaceName = 'myWorkspaceName'
DataExportName = 'myRuleName'
TableName = 'SecurityEvent,Heartbeat'
ResourceId = $eventHubNamespaceResourceId
}
New-AzOperationalInsightsDataExport @dataExportParams
次のBicep テンプレートをデプロイして、ストレージ アカウントへのデータ エクスポート規則を作成します。 テンプレートは、テーブルごとに個別のコンテナーを作成します。
param workspaceName string
param workspaceLocation string
param storageAccountRuleName string
param storageAccountResourceId string
resource workspace 'Microsoft.OperationalInsights/workspaces@2023-09-01' = {
name: workspaceName
location: workspaceLocation
}
resource dataExport 'Microsoft.OperationalInsights/workspaces/dataExports@2023-09-01' = {
parent: workspace
name: storageAccountRuleName
properties: {
destination: {
resourceId: storageAccountResourceId
}
tableNames: [
'Heartbeat'
'InsightsMetrics'
'VMConnection'
'Usage'
]
enable: true
}
}
次のBicep テンプレートをデプロイして、イベント ハブへのデータ エクスポート 規則を作成します。 テンプレートは、テーブルごとに個別のイベント ハブを作成します。
param workspaceName string
param workspaceLocation string
param eventhubRuleName string
param namespacesResourceId string
resource workspace 'Microsoft.OperationalInsights/workspaces@2023-09-01' = {
name: workspaceName
location: workspaceLocation
}
resource dataExport 'Microsoft.OperationalInsights/workspaces/dataExports@2023-09-01' = {
parent: workspace
name: eventhubRuleName
properties: {
destination: {
resourceId: namespacesResourceId
}
tableNames: [
'Usage'
'Heartbeat'
]
enable: true
}
}
次のBicep テンプレートをデプロイして、特定のイベント ハブへのデータ エクスポート規則を作成します。 テンプレートは、すべてのテーブルをそのイベント ハブにエクスポートします。
param workspaceName string
param workspaceLocation string
param eventhubRuleName string
param namespacesResourceId string
param eventhubName string
resource workspace 'Microsoft.OperationalInsights/workspaces@2023-09-01' = {
name: workspaceName
location: workspaceLocation
}
resource dataExport 'Microsoft.OperationalInsights/workspaces/dataExports@2023-09-01' = {
parent: workspace
name: eventhubRuleName
properties: {
destination: {
resourceId: namespacesResourceId
metaData: {
eventHubName: eventhubName
}
}
tableNames: [
'Usage'
'Heartbeat'
]
enable: true
}
}
次の ARM テンプレートをデプロイして、ストレージ アカウントへのデータ エクスポート規則を作成します。
ストレージ アカウントに送信するエクスポートルールを作成する
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"defaultValue": "myWorkspaceName",
"type": "String"
},
"workspaceLocation": {
"defaultValue": "myWorkspaceLocation",
"type": "string"
},
"storageAccountRuleName": {
"defaultValue": "myStorageAccountRuleName",
"type": "string"
},
"storageAccountResourceId": {
"defaultValue": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroupName/providers/Microsoft.Storage/storageAccounts/myStorageAccountName",
"type": "String"
}
},
"variables": {},
"resources": [
{
"type": "microsoft.operationalinsights/workspaces",
"apiVersion": "2023-09-01",
"name": "[parameters('workspaceName')]",
"location": "[parameters('workspaceLocation')]",
"resources": [
{
"type": "microsoft.operationalinsights/workspaces/dataexports",
"apiVersion": "2023-09-01",
"name": "[concat(parameters('workspaceName'), '/' , parameters('storageAccountRuleName'))]",
"dependsOn": [
"[resourceId('microsoft.operationalinsights/workspaces', parameters('workspaceName'))]"
],
"properties": {
"destination": {
"resourceId": "[parameters('storageAccountResourceId')]"
},
"tableNames": [
"Heartbeat",
"InsightsMetrics",
"VMConnection",
"Usage"
],
"enable": true
}
}
]
}
]
}
次の ARM テンプレートをデプロイして、イベント ハブへのデータ エクスポート規則を作成します。 テンプレートは、テーブルごとに個別のイベント ハブを作成します。
Event Hub 名前空間に送信するエクスポート ルールを作成する
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"defaultValue": "myWorkspaceName",
"type": "String"
},
"workspaceLocation": {
"defaultValue": "myWorkspaceLocation",
"type": "string"
},
"eventhubRuleName": {
"defaultValue": "myEventHubRuleName",
"type": "string"
},
"namespacesResourceId": {
"defaultValue": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroupName/providers/Microsoft.EventHub/namespaces/myEventHubNamespace",
"type": "String"
}
},
"variables": {},
"resources": [
{
"type": "microsoft.operationalinsights/workspaces",
"apiVersion": "2023-09-01",
"name": "[parameters('workspaceName')]",
"location": "[parameters('workspaceLocation')]",
"resources": [
{
"type": "microsoft.operationalinsights/workspaces/dataexports",
"apiVersion": "2023-09-01",
"name": "[concat(parameters('workspaceName'), '/', parameters('eventhubRuleName'))]",
"dependsOn": [
"[resourceId('microsoft.operationalinsights/workspaces', parameters('workspaceName'))]"
],
"properties": {
"destination": {
"resourceId": "[parameters('namespacesResourceId')]"
},
"tableNames": [
"Usage",
"Heartbeat"
],
"enable": true
}
}
]
}
]
}
次の ARM テンプレートをデプロイして、特定のイベント ハブへのデータ エクスポート規則を作成します。 ルールは、すべてのテーブルをこのイベント ハブにエクスポートします。
特定のイベント ハブに送信するエクスポート ルールを作成する
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"defaultValue": "myWorkspaceName",
"type": "String"
},
"workspaceLocation": {
"defaultValue": "myWorkspaceLocation",
"type": "string"
},
"eventhubRuleName": {
"defaultValue": "myEventHubRuleName",
"type": "string"
},
"namespacesResourceId": {
"defaultValue": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroupName/providers/Microsoft.EventHub/namespaces/myEventHubNamespace",
"type": "String"
},
"eventhubName": {
"defaultValue": "myEventHub",
"type": "string"
}
},
"variables": {},
"resources": [
{
"type": "microsoft.operationalinsights/workspaces",
"apiVersion": "2023-09-01",
"name": "[parameters('workspaceName')]",
"location": "[parameters('workspaceLocation')]",
"resources": [
{
"type": "microsoft.operationalinsights/workspaces/dataexports",
"apiVersion": "2023-09-01",
"name": "[concat(parameters('workspaceName'), '/', parameters('eventhubRuleName'))]",
"dependsOn": [
"[resourceId('microsoft.operationalinsights/workspaces', parameters('workspaceName'))]"
],
"properties": {
"destination": {
"resourceId": "[parameters('namespacesResourceId')]",
"metaData": {
"eventHubName": "[parameters('eventhubName')]"
}
},
"tableNames": [
"Usage",
"Heartbeat"
],
"enable": true
}
}
]
}
]
}
データ エクスポート ルールの構成の表示
Azure ポータルから、Log Analytics ワークスペースに移動します。
左側のメニューの [設定] で [ ルール] を選択します。
[ データ エクスポート ルール ] タブを選択すると、ワークスペース内のすべてのエクスポート ルールが表示されます。
構成ビューのルールを選択します。
CLI を使用してデータ エクスポート ルールの構成を表示するには、次のコマンドを使用します。
az monitor log-analytics workspace data-export show \
--resource-group resourceGroupName \
--workspace-name workspaceName \
--name ruleName
データ エクスポート 規則の構成を表示するには、GETデータ エクスポート ルール操作グループに対するこの要求を使用します。 ここに記載されている最新の apiVersion を使用します。
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataexports/{dataExportName}?api-version={apiVersion}
Authorization: Bearer {accessToken}
PowerShell を使用してデータ エクスポート ルールの構成を表示するには、次のコマンドを使用します。
$dataExportParams = @{
ResourceGroupName = 'resourceGroupName'
WorkspaceName = 'workspaceName'
DataExportName = 'ruleName'
}
Get-AzOperationalInsightsDataExport @dataExportParams
エクスポート ルールを無効化または更新する
テストが実施されている場合など、エクスポートルールを無効にして一定期間エクスポートを停止します。
-
Azure ポータルから、Log Analytics ワークスペースに移動します。
- 左側のメニューの [設定] で [ ルール] を選択します。
- [ データ エクスポート ルール ] タブを選択します。
-
[状態] トグルを選択して、エクスポート ルールを有効または無効にします。
テストを保留するときなどに、エクスポート ルールを無効にすると、エクスポートを一定期間停止できます。 CLI を使用してルール パラメーターを無効化または更新するには、次のコマンドを使用します。
az monitor log-analytics workspace data-export update \
--resource-group resourceGroupName \
--workspace-name workspaceName \
--name ruleName \
--tables SecurityEvent Heartbeat \
--enable false
このメソッドを使用して、テスト中など、一定期間のエクスポート 規則を無効にします。 ルール パラメーターを無効または更新するには、PUTデータ エクスポート ルール操作グループに対するこの要求を使用します。 ここに記載されている最新の apiVersion を使用します。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataexports/{dataExportName}?api-version={apiVersion}
Authorization: Bearer {accessToken}
Content-Type: application/json
{
"properties": {
"destination": {
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroupName/providers/Microsoft.Storage/storageAccounts/myStorageAccountName"
},
"tableNames": [
"table1",
"table2"
],
"enable": false
}
}
テストなどのルールの一時的なエクスポートを停止するには、 Enable を $false に設定してルールを無効にします。 次のコマンドを使用して、ルールを無効にするか、PowerShell を使用してそのパラメーターを更新します。
$dataExportParams = @{
ResourceGroupName = 'resourceGroupName'
WorkspaceName = 'workspaceName'
DataExportName = 'ruleName'
TableName = 'SecurityEvent,Heartbeat'
Enable = $false
}
Update-AzOperationalInsightsDataExport @dataExportParams
データのエクスポートを無効にするには、Bicep テンプレートでenable: falseを設定します。
ARM テンプレートで "enable": false を設定して、データエクスポートを無効にします。
エクスポート ルールを削除する
-
Azure ポータルから、Log Analytics ワークスペースに移動します。
- 左側のメニューの [設定] で [ ルール] を選択します。
- [ データ エクスポート ルール ] タブを選択します。
- ルールの右側にある省略記号を選択し、[削除] を選択します。
CLI を使用してデータ エクスポート ルールを削除するには、次のコマンドを使用します。
az monitor log-analytics workspace data-export delete \
--resource-group resourceGroupName \
--workspace-name workspaceName \
--name ruleName
データ エクスポート ルールを削除するには、DELETEデータ エクスポート ルール操作グループに対するこの要求を使用します。 ここに記載されている最新の apiVersion を使用します。
DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataexports/{dataExportName}?api-version={apiVersion}
Authorization: Bearer {accessToken}
PowerShell を使用してデータ エクスポート ルールを削除するには、次のコマンドを使用します。
$dataExportParams = @{
ResourceGroupName = 'resourceGroupName'
WorkspaceName = 'workspaceName'
DataExportName = 'ruleName'
}
Remove-AzOperationalInsightsDataExport @dataExportParams
ワークスペース内のすべてのデータ エクスポート ルールを表示する
-
Azure ポータルから、Log Analytics ワークスペースに移動します。
- 左側のメニューの [設定] で [ ルール] を選択します。
- [ データ エクスポート ルール ] タブを選択すると、ワークスペース内のすべてのエクスポート ルールが表示されます。
CLI を使用してワークスペース内のすべてのデータ エクスポート ルールを表示するには、次のコマンドを使用します。
az monitor log-analytics workspace data-export list \
--resource-group resourceGroupName \
--workspace-name workspaceName
ワークスペース内のすべてのデータ エクスポート ルールを表示するには、GETデータ エクスポート ルール操作グループに対するこの要求を使用します。 ここに記載されている最新の apiVersion を使用します。
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataexports?api-version={apiVersion}
Authorization: Bearer {accessToken}
PowerShell を使用してワークスペース内のすべてのデータ エクスポート ルールを表示するには、次のコマンドを使用します。
$dataExportParams = @{
ResourceGroupName = 'resourceGroupName'
WorkspaceName = 'workspaceName'
}
Get-AzOperationalInsightsDataExport @dataExportParams
サポート対象外のテーブル
注意
サポート対象外のテーブルがデータ エクスポート ルールに含まれている場合、構成は成功しますが、そのテーブルのデータはエクスポートされません。 テーブルがサポートされている場合、データのエクスポートが開始されます。 より多くのテーブルのサポートを追加中です。 この記事を定期的にご確認ください。
| テーブル |
制限事項 |
| アラート |
部分的なサポート。 Zabbix アラートのデータ インジェストはサポートされていません。 |
| アラート履歴 |
|
| AzureActivity |
部分的なサポート。 Log Analytics エージェントまたは Azure Monitor エージェントから到着するデータは、エクスポートで完全にサポートされます。 Diagnostics Extension エージェントを介して到着するデータは、ストレージを使用して収集されます。 このパスは、エクスポートではサポートされていません。 |
| AzureDiagnostics |
|
| ConfigurationChange |
部分的なサポート。 データの一部は、エクスポートでサポートされない内部サービスを介して取り込まれます。 現在、この部分はエクスポートに含まれません。 |
| 設定データ |
部分的なサポート。 データの一部は、エクスポートでサポートされない内部サービスを介して取り込まれます。 現在、この部分はエクスポートに含まれません。 |
| DatabricksDatabricksSQL |
|
| DatabricksSQL |
|
| デバイスアプリ起動 |
|
| デバイスカレンダー |
|
| デバイスコネクトセッション |
|
| DeviceEtw |
部分的なサポート。 データの一部は、エクスポートでサポートされない内部サービスを介して取り込まれます。 現在、この部分はエクスポートに含まれません。 |
| DeviceHeartbeat |
|
| ETWEvent |
部分的なサポート。 Log Analytics エージェントまたは Azure Monitor エージェントから到着するデータは、エクスポートで完全にサポートされます。 Diagnostics Extension エージェントを介して到着するデータは、ストレージを使用して収集されます。 このパスは、エクスポートではサポートされていません。 |
| 出来事 |
部分的なサポート。 Log Analytics エージェントまたは Azure Monitor エージェントから到着するデータは、エクスポートで完全にサポートされます。 Diagnostics Extension エージェントを介して到着するデータは、ストレージを使用して収集されます。 このパスは、エクスポートではサポートされていません。 |
| ネットワークセッション |
|
| 操作 |
部分的なサポート。 データの一部は、エクスポートでサポートされない内部サービスを介して取り込まれます。 現在、この部分はエクスポートに含まれません。 |
| 保護状態 |
|
| SecurityEvent |
部分的なサポート。 データの一部は、エクスポートでサポートされない内部サービスを介して取り込まれます。 現在、この部分はエクスポートに含まれません。 |
| ServiceFabricOperationalEvent (サービスファブリック運用イベント) |
部分的なサポート。 Log Analytics エージェントまたは Azure Monitor エージェントから到着するデータは、エクスポートで完全にサポートされます。 Diagnostics Extension エージェントを介して到着するデータは、ストレージを使用して収集されます。 このパスは、エクスポートではサポートされていません。 |
| ServiceFabricReliableActorEvent |
部分的なサポート。 Log Analytics エージェントまたは Azure Monitor エージェントから到着するデータは、エクスポートで完全にサポートされます。 Diagnostics Extension エージェントを介して到着するデータは、ストレージを使用して収集されます。 このパスは、エクスポートではサポートされていません。 |
| ServiceFabricReliableServiceEvent |
部分的なサポート。 Log Analytics エージェントまたは Azure Monitor エージェントから到着するデータは、エクスポートで完全にサポートされます。 Diagnostics Extension エージェントを介して到着するデータは、ストレージを使用して収集されます。 このパスは、エクスポートではサポートされていません。 |
| Syslog |
部分的なサポート。 データの一部は、エクスポートでサポートされない内部サービスを介して取り込まれます。 現在、この部分はエクスポートに含まれません。 |
| W3CIISLog |
部分的なサポート。 Log Analytics エージェントまたは Azure Monitor エージェントから到着するデータは、エクスポートで完全にサポートされます。 Diagnostics Extension エージェントを介して到着するデータは、ストレージを使用して収集されます。 このパスは、エクスポートではサポートされていません。 |
関連するコンテンツ
Azure Data Explorer からエクスポートされたデータのクエリを実行する