次の方法で共有


AzureDiagnostics

Azure Diagnostics モードを使用する Azure サービスのリソース ログが格納されます。 リソース ログには、Azure リソースの内部操作が記述されています。

各 Azure サービスのリソース ログには、固有の列のセットがあります。 AzureDiagnostics テーブルには、Azure サービスによって使用される最も一般的な列が含まれています。 リソース ログに AzureDiagnostics テーブルにまだ存在しない列が含まれている場合は、データが初めて収集されたときにその列が追加されます。 500 列の最大数に達すると、追加の列のデータが動的列に追加されます。

リソース固有モードを使用する Azure サービスは、そのサービスに固有のテーブルにデータを格納し、AzureDiagnostics テーブルを使用しません。 違いの詳細については、 Azure リソース ログ を参照してください。 Azure Diagnostics を使用するサービスについては、「 Azure Diagnostics モードを使用したリソース 」を参照してください。

Note

AzureDiagnostics テーブルは、Azure リソースが初めて Azure Diagnostics モードでログの送信を開始するときに、Azure Monitor パイプラインによって排他的に作成されたカスタム ログ テーブルです。 他のテーブルとは異なり、ARM テンプレートまたはテーブル API を使用して AzureDiagnostics テーブルを作成することはできません。 そのため、作成前にテーブルの既定の保持値を変更することはできません。

AdditionalFields 列

他のテーブルとは異なり、 AzureDiagnostics は、このテーブルにデータを送信できるさまざまな Azure リソースがあるため、Log Analytics ワークスペース内の任意のテーブルに対して課される 500 列の制限を超える可能性がはるかに高くなります。 アクティブな列の数がこの 500 列の制限を超えたためにデータが失われないようにするために、AzureDiagnostics 列の作成は他のテーブルとは異なる方法で処理されます。

すべてのワークスペースの AzureDiagnostics テーブルには、少なくとも同じ 200 列が含まれています。 2021 年 1 月 19 日より前に作成されたワークスペースの場合、テーブルには、この日付より前に既に配置されていた列も含まれています。 データがまだ配置されていない列に送信される場合:

  • 現在のワークスペースの AzureDiagnostics の列の合計数が 500 を超えない場合は、他のテーブルと同様に新しい列が作成されます。
  • 列の合計数が 500 以上の場合、余分なデータは、プロパティとして AdditionalFields という動的プロパティ バッグ列に追加されます。

この動作を説明するために、ワークスペース内の AzureDiagnostics テーブルが (デプロイ日) の時点で次のようになります。

列 1 列 2 列 3 ... 列 498
abc def 123 ... 456
... ... ... ... ...

AzureDiagnostics にデータを送信するリソースNewInfo1を呼び出すデータに新しいディメンションを追加します。 テーブルの列数は 500 未満であるため、この新しいディメンションのデータを含むイベントが初めて発生すると、テーブルに新しい列が追加されます。

列 1 列 2 列 3 ... 列 498 NewInfo1_s
abc def 123 ... 456 xyz
... ... ... ... ... ...

この新しいデータは、単純なクエリで返すことができます。

AzureDiagnostics | where NewInfo1_s == "xyz"

後日、別のリソースがデータを AzureDiagnostics に送信し、 NewInfo2 および NewInfo3 という名前の新しいディメンションを追加します。 テーブルはこのワークスペースで 500 列に達したため、新しいデータは AdditionalFields 列に入ります。

列 1 列 2 列 3 ... 列 498 NewInfo1_s AdditionalFields
abc def 123 ... 456 xyz {"NewInfo2":"789","NewInfo3":"qwerty"}
... ... ... ... ... ... ...

このデータのクエリは引き続き実行できますが、KQL の動的プロパティ演算子のいずれかを使用してプロパティ バッグから抽出する必要があります。

AzureDiagnostics
| where AdditionalFields.NewInfo2 == "789" and AdditionalFields.NewInfo3 == "qwerty"

AdditionalFields列の使用に関するヒント

クエリの最初の句として常に時間でフィルター処理するなどのクエリのベスト プラクティスに従う必要がありますが、AdditionalFields を使用する場合は、他にもいくつかの推奨事項を考慮する必要があります。

  • データに対してさらに操作を実行する前に、データを型キャストする必要があります。 たとえば、 Perf1Sec_i という名前の列があり、 AdditionalFields Perf2Sec と呼ばれるプロパティがあり、両方の値を追加して合計パフォーマンスを計算する場合は、次の AzureDiagnostics | extend TotalPerfSec = Perf1Sec_i + toint(AdditionalFields.Perf2Sec) | ....を使用できます。
  • where句を使用して、パフォーマンスを大幅に向上させるために複雑なロジックを記述する前に、データ ボリュームをできるだけ小さくします。 TimeGenerated は、常に可能な限り小さいウィンドウに縮小する必要がある 1 つの列です。 AzureDiagnostics の場合は、ResourceType 列を使用してクエリを実行するリソースの種類に関するクエリの先頭に追加のフィルターを常に含める必要があります。
  • 大量のデータに対してクエリを実行する場合、解析するのではなく、 AdditionalFields 全体でフィルターを実行する方が効率的な場合があります。 たとえば、大量のデータの場合、多くの場合、 AzureDiagnostics | where AdditionalFields has "Perf2Sec"AzureDiagnostics | where isnotnull(toint(AdditionalFields.Perf2Sec))よりも効率的です。

Azure Diagnostics モードを使用したリソース

次のサービスでは、リソース ログに Azure 診断モードを使用し、Azure Diagnostics テーブルにデータを送信します。 この構成の詳細については、 Azure リソース ログ を参照してください。

Note

他のすべてのリソースは、リソース固有のテーブルにデータを送信します。

サービス名 resourceType
MicrosoftSqlAzureTelemetryv3 microsoft.sql/servers/databases
MicrosoftAzureCosmosDB microsoft.documentdb/databaseaccounts
AzureFirewall microsoft.network/azurefirewalls
AzureApplicationGatewayService microsoft.network/applicationgateways
AKSCustomerData microsoft.containerservice/managedclusters
AzureFrontdoor microsoft.cdn/profiles
LNMAgentService microsoft.network/networksecuritygroups
MicrosoftOrcasBreadthServers microsoft.dbforpostgresql/flexibleservers
servicebus microsoft.eventhub/namespaces
AzureFrontdoor microsoft.network/frontdoors
AzureKeyVault microsoft.keyvault/vaults
AzureDataLake microsoft.datalakestore/accounts
ApiManagement microsoft.apimanagement/service
MicrosoftSqlAzureTelemetryv3 microsoft.sql/managedinstances
ASAzureRP microsoft.analysisservices/servers
MicrosoftOrcasBreadthServers microsoft.dbformysql/flexibleservers
servicebus microsoft.servicebus/namespaces
AzureIotHub microsoft.devices/iothubs
MicrosoftSqlAzureTelemetryv2 microsoft.dbforpostgresql/servers
MicrosoftSqlAzureTelemetryv2 microsoft.dbformariadb/servers
MicrosoftAutomation microsoft.automation/automationaccounts
TrafficManager microsoft.network/trafficmanagerprofiles
MicrosoftOrcasBreadthServers microsoft.dbforpostgresql/servergroupsv2
AzureSearch。 microsoft.search/searchservices
AzureHybrid microsoft.network/virtualnetworkgateways
MicrosoftSqlAzureTelemetryv3 microsoft.sql/managedinstances/databases
PBIDedicatedRP microsoft.powerbidedicated/capacities
AzureHybrid microsoft.network/vpngateways
MicrosoftDatafactory microsoft.datafactory/factories
MicrosoftCognitiveServices microsoft.cognitiveservices/accounts
AzureRecoveryServices microsoft.recoveryservices/vaults
AzureBatch microsoft.batch/batchaccounts
AzureHybrid microsoft.network/p2svpngateways
MicrosoftSqlAzureTelemetryv2 microsoft.dbformysql/servers
AzureKeyVault microsoft.keyvault/managedhsms
NetMon microsoft.network/publicipaddresses
AzureDataLake microsoft.datalakeanalytics/accounts
MicrosoftStreamanalytics microsoft.streamanalytics/streamingjobs
servicebus microsoft.relay/namespaces
AzureIotDps microsoft.devices/provisioningservices
MicrosoftAzureCosmosDB microsoft.documentdb/cassandraclusters
MicrosoftAzureCosmosDB microsoft.documentdb/mongoclusters
AKSCustomerData microsoft.containerservice/fleets
PBIDedicatedRP microsoft.powerbi/tenants/workspaces
AzureFrontdoor microsoft.cdn/cdnwebapplicationfirewallpolicies
AzureHybrid microsoft.network/expressroutecircuits
MicrosoftAzureCosmosDB microsoft.dbforpostgresql/flexibleservers
NetMon microsoft.network/publicipprefixes
AzureCdn microsoft.cdn/profiles/endpoints

Azure Diagnostics モードまたはリソース固有モード

次のサービスでは、診断設定の構成に応じて、リソース ログに Azure 診断モードまたはリソース固有モードが使用されます。 リソース固有モードを使用する場合、これらのリソースは AzureDiagnostics テーブルにデータを送信しません。 この構成の詳細については、 Azure リソース ログ を参照してください。

サービス名 resourceType
API Management サービス Microsoft.ApiManagement
Azure Cosmos DB Microsoft.DocumentDB/databaseAccounts
データ ファクトリ (V2) Microsoft.DataFactory
Recovery Services コンテナー (バックアップ) Microsoft.RecoveryServices/vaults
ファイアウォール Microsoft.Network/azureFirewalls

AzureDiagnostics テーブルの列

タイプ 説明
action_id_s String
action_name_s String
action_s String
ActivityId_g GUID
AdditionalFields
AdHocOrScheduledJob_s String
application_name_s String
audit_schema_version_d 倍精度浮動小数点型
avg_cpu_percent_s String
avg_mean_time_s String
backendHostname_s String
Caller_s String
callerId_s String
CallerIPAddress String
calls_s String
カテゴリ String
client_ip_s String
clientInfo_s String
clientIP_s String
clientIp_s String
clientIpAddress_s String
clientPort_d 倍精度浮動小数点型
code_s String
collectionName_s String
conditions_destinationIP_s String
conditions_destinationPortRange_s String
conditions_None_s String
conditions_protocols_s String
conditions_sourceIP_s String
conditions_sourcePortRange_s String
CorrelationId String
count_executions_d 倍精度浮動小数点型
cpu_time_d 倍精度浮動小数点型
database_name_s String
database_principal_name_s String
DatabaseName_s String
db_id_s String
direction_s String
dop_d 倍精度浮動小数点型
duration_d 倍精度浮動小数点型
duration_milliseconds_d 倍精度浮動小数点型
DurationMs BigInt
ElasticPoolName_s String
endTime_t DateTime
Environment_s String
error_code_s String
error_message_s String
errorLevel_s String
event_class_s String
event_s String
event_subclass_s String
event_time_t DateTime
EventName_s String
execution_type_d 倍精度浮動小数点型
executionInfo_endTime_t DateTime
executionInfo_exitCode_d 倍精度浮動小数点型
executionInfo_startTime_t DateTime
host_s String
httpMethod_s String
httpStatus_d 倍精度浮動小数点型
httpStatusCode_d 倍精度浮動小数点型
httpStatusCode_s String
httpVersion_s String
id_s String
identity_claim_appid_g GUID
identity_claim_ipaddr_s String
instanceId_s String
interval_end_time_d 倍精度浮動小数点型
interval_start_time_d 倍精度浮動小数点型
ip_s String
is_column_permission_s String
isAccessPolicyMatch_b Bool
JobDurationInSecs_s String
JobFailureCode_s String
JobId_g GUID
jobId_s String
JobOperation_s String
JobOperationSubType_s String
JobStartDateTime_s String
JobStatus_s String
JobUniqueId_g GUID
Level String
log_bytes_used_d 倍精度浮動小数点型
logical_io_reads_d 倍精度浮動小数点型
logical_io_writes_d 倍精度浮動小数点型
LogicalServerName_s String
macAddress_s String
matchedConnections_d 倍精度浮動小数点型
max_cpu_time_d 倍精度浮動小数点型
max_dop_d 倍精度浮動小数点型
max_duration_d 倍精度浮動小数点型
max_log_bytes_used_d 倍精度浮動小数点型
max_logical_io_reads_d 倍精度浮動小数点型
max_logical_io_writes_d 倍精度浮動小数点型
max_num_physical_io_reads_d 倍精度浮動小数点型
max_physical_io_reads_d 倍精度浮動小数点型
max_query_max_used_memory_d 倍精度浮動小数点型
max_rowcount_d 倍精度浮動小数点型
max_time_s String
mean_time_s String
Message String
min_time_s String
msg_s String
num_physical_io_reads_d 倍精度浮動小数点型
object_id_d 倍精度浮動小数点型
object_name_s String
OperationName String
OperationVersion String
partitionKey_s String
physical_io_reads_d 倍精度浮動小数点型
plan_id_d 倍精度浮動小数点型
policy_s String
policyMode_s String
primaryIPv4Address_s String
priority_d 倍精度浮動小数点型
properties_enabledForDeployment_b Bool
properties_enabledForDiskEncryption_b Bool
properties_enabledForTemplateDeployment_b Bool
properties_s String
properties_sku_Family_s String
properties_sku_Name_s String
properties_tenantId_g GUID
query_hash_s String
query_id_d 倍精度浮動小数点型
query_max_used_memory_d 倍精度浮動小数点型
query_plan_hash_s String
query_time_d 倍精度浮動小数点型
querytext_s String
receivedBytes_d 倍精度浮動小数点型
Region_s String
requestCharge_s String
requestQuery_s String
requestResourceId_s String
requestResourceType_s String
requestUri_s String
reserved_storage_mb_s String
リソース String
resource_actionName_s String
resource_location_s String
resource_originRunId_s String
resource_resourceGroupName_s String
resource_runId_s String
resource_subscriptionId_g GUID
resource_triggerName_s String
resource_workflowId_g GUID
resource_workflowName_s String
ResourceGroup String
_ResourceId String レコードが関連付けられているリソースの一意識別子
ResourceProvider String
ResourceProvider String
ResourceType String
ResourceType String
response_rows_d 倍精度浮動小数点型
resultCode_s String
ResultDescription String
ResultDescription String
resultDescription_ChildJobs_s String
resultDescription_ErrorJobs_s String
resultMessage_s String
ResultSignature String
ResultType String
ResultType String
rootCauseAnalysis_s String
routingRuleName_s String
rowcount_d 倍精度浮動小数点型
ruleName_s String
RunbookName_s String
RunOn_s String
schema_name_s String
sentBytes_d 倍精度浮動小数点型
sequence_group_id_g GUID
sequence_number_d 倍精度浮動小数点型
server_principal_sid_s String
session_id_d 倍精度浮動小数点型