AzureDiagnostics

Przechowuje dzienniki zasobów dla usług platformy Azure korzystających z trybu Diagnostyka Azure. Dzienniki zasobów opisują wewnętrzną operację zasobów platformy Azure.

Dziennik zasobów dla każdej usługi platformy Azure zawiera unikatowy zestaw kolumn. Tabela AzureDiagnostics zawiera najbardziej typowe kolumny używane przez usługi platformy Azure. Jeśli dziennik zasobów zawiera kolumnę, która jeszcze nie istnieje w tabeli AzureDiagnostics, ta kolumna zostanie dodana przy pierwszym zbieraniu danych. Jeśli zostanie osiągnięta maksymalna liczba 500 kolumn, dane dla wszelkich dodatkowych kolumn zostaną dodane do kolumny dynamicznej.

Usługi platformy Azure korzystające z trybu specyficznego dla zasobów przechowują dane w tabeli specyficznej dla tej usługi i nie korzystają z tabeli AzureDiagnostics. Zobacz Typy zasobów poniżej, aby zapoznać się z usługami korzystającymi z każdej metody. Aby uzyskać szczegółowe informacje na temat różnic, zobacz Dzienniki zasobów platformy Azure .

Kolumna AdditionalFields

W przeciwieństwie do innych tabel usługa AzureDiagnostics jest znacznie bardziej podatna na przekroczenie limitu 500 kolumn nałożonego dla dowolnej tabeli w obszarze roboczym usługi Log Analytics ze względu na szeroki asortyment zasobów platformy Azure, który może wysyłać dane do tej tabeli. Aby upewnić się, że żadne dane nie zostaną utracone z powodu liczby aktywnych kolumn przekraczających ten limit 500 kolumn, tworzenie kolumn azureDiagnostics jest obsługiwane w inny sposób dla innych tabel.

Tabela AzureDiagnostics w każdym obszarze roboczym będzie zawierać co najmniej te same 200 kolumn. W przypadku obszarów roboczych utworzonych przed 19 stycznia 2021 r. tabela będzie zawierać również wszystkie kolumny, które zostały już wprowadzone przed tą datą. Gdy dane są wysyłane do kolumny, która nie jest jeszcze w miejscu:

  • Jeśli łączna liczba kolumn w usłudze AzureDiagnostics w bieżącym obszarze roboczym nie przekroczy 500, zostanie utworzona nowa kolumna tak samo jak w przypadku każdej innej tabeli.
  • Jeśli łączna liczba kolumn wynosi lub 500, nadmiar danych jest dodawany do kolumny dynamicznej torby właściwości o nazwie AdditionalFields jako właściwości.

Przykład

Aby zilustrować to zachowanie, wyobraź sobie, że od (daty wdrożenia) tabela AzureDiagnostics w naszej usłudze workpsace wygląda następująco:

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

Zasób, który wysyła dane do usługi AzureDiagnostics , dodaje nowy wymiar do danych, które nazywają NewInfo1. Ponieważ tabela nadal zawiera mniej niż 500 kolumn, przy pierwszym wystąpieniu zdarzenia zawierającego dane dla tego nowego wymiaru doda nową kolumnę do tabeli:

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

Te nowe dane można zwrócić w prostym zapytaniu:

AzureDiagnostics | where NewInfo1_s == "xyz"

W późniejszym terminie inny zasób wysyła dane do usługi AzureDiagnostics , która dodaje nowe wymiary o nazwie NewInfo2 i NewInfo3. Ponieważ tabela osiągnęła 500 kolumn w tym obszarze roboczym, nowe dane zostaną wprowadzone do kolumny AdditionalFields :

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

Nadal możesz wykonywać zapytania dotyczące tych danych, ale musisz wyodrębnić je z torby właściwości przy użyciu dowolnego operatora właściwości dynamicznej w języku KQL:

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

Porady dotyczące korzystania z kolumny AdditionalFields

Chociaż należy postępować zgodnie z ogólnymi najlepszymi rozwiązaniami dotyczącymi zapytań, takimi jak zawsze filtrowanie według czasu jako pierwsza klauzula w zapytaniu, należy wziąć pod uwagę inne zalecenia, które należy wziąć pod uwagę podczas pracy z dodatkowymi polami:

  • Przed wykonaniem dalszych operacji na nim należy wpisać dane emisji. Jeśli na przykład istnieje kolumna o nazwie Perf1Sec_i , a także właściwość w dodatkowych polach o nazwie Perf2Sec i chcesz obliczyć łączną wartość wydajności przez dodanie obu wartości, użyj wartości podobnej do: AzureDiagnostics | extend TotalPerfSec = Perf1Sec_i + toint(AdditionalFields.Perf2Sec) | .....
  • Użyj klauzul where , aby zmniejszyć ilość danych do najmniejszego możliwego przed napisanie dowolnej złożonej logiki w celu znacznego zwiększenia wydajności. TimeGenerated to jedna kolumna, która powinna być zawsze zmniejszana do najmniejszego możliwego okna. W przypadku usługi AzureDiagnostics dodatkowy filtr powinien być również zawsze uwzględniany w górnej części zapytania wokół typów zasobów, które są odpytywane przy użyciu kolumny ResourceType .
  • Podczas wykonywania zapytań dotyczących bardzo dużych ilości danych czasami bardziej wydajne jest wykonywanie filtru na polach dodatkowych jako całości, a nie analizowanie ich. Na przykład w przypadku dużych ilości danych AzureDiagnostics | where AdditionalFields has "Perf2Sec" jest często wydajniejszy niż AzureDiagnostics | where isnotnull(toint(AdditionalFields.Perf2Sec)).

tryb Diagnostyka Azure

Następujące usługi używają trybu diagnostyki platformy Azure dla dzienników zasobów i wysyłania danych do tabeli Diagnostyka Azure.

  • Analysis Services
  • Bramy aplikacji
  • Konta usługi Automation
  • Serwery usługi Azure Database for MariaDB
  • Serwery usługi Azure Database for MySQL
  • Serwery usługi Azure Database for PostgreSQL
  • serwery Azure Database for PostgreSQL w wersji 2
  • Konta usługi Batch
  • Profile CDN
  • Cognitive Services
  • Data Lake Analytics
  • DataLake Storage Gen1
  • Device Provisioning Services
  • Digital Twins
  • Tematy usługi Event Grid
  • Event Hubs
  • Obwody usługi ExpressRoute
  • Front Door
  • Konta integracji
  • Key Vault
  • Usługi Kubernetes
  • Moduły równoważenia obciążenia
  • Logic Apps
  • Media Services
  • Interfejsy sieciowe
  • Grupy zabezpieczeń sieci
  • Bramy sieci VPN typu P2S
  • Power BI Embedded
  • Publiczne adresy IP
  • Magazyny usługi Recovery Services (Site Recovery)
  • Usługi wyszukiwania
  • Service Bus
  • Bazy danych SQL
  • Wystąpienia zarządzane SQL
  • Serwery SQL
  • Zadania usługi Stream Analytics
  • Profile usługi Traffic Manager
  • Sieci wirtualne
  • Bramy sieci wirtualnej
  • Bramy sieci VPN

tryb Diagnostyka Azure lub tryb specyficzny dla zasobu

Poniższe usługi używają trybu diagnostyki platformy Azure lub trybu specyficznego dla zasobów dla dzienników zasobów w zależności od konfiguracji. W przypadku korzystania z trybu specyficznego dla zasobów nie wysyłają danych do tabeli AzureDiagnostics. Aby uzyskać szczegółowe informacje na temat tej konfiguracji, zobacz Dzienniki zasobów platformy Azure .

  • usługi API Management
  • Azure Cosmos DB
  • Fabryki danych (wersja 2)
  • Usługa IoT Hub
  • Magazyny usługi Recovery Services (kopia zapasowa)
  • Zapory

Kategorie

  • Zasoby platformy Azure
  • Zabezpieczenia
  • Sieć

Rozwiązania

  • Zarządzanie dziennikami

Typy zasobów

  • Bramy aplikacji
  • Profile sieci CDN
  • Azure Cosmos DB
  • Tematy usługi Event Grid
  • Event Hubs
  • Zapory
  • Magazyny kluczy
  • Usługi Kubernetes
  • Magazyny usługi Recovery Services
  • Service Bus
  • Serwery elastyczne usługi Azure Database for MySQL
  • Azure Database for PostgreSQL serwerów elastycznych
  • Media Services
  • Analysis Services
  • Konta usługi Batch
  • Cognitive Services
  • Przestrzenie nazw partnerów usługi Event Grid
  • Tematy partnerów usługi Event Grid
  • Tematy dotyczące systemu usługi Event Grid
  • Platforma Kubernetes z obsługą usługi Azure Arc
  • Klastry aprowizowane w usłudze Azure Arc
  • Usługa IoT Hub
  • Logic Apps
  • Usługi API Management
  • Konto usługi Automation
  • Fabryki danych
  • Data Lake Storage Gen1
  • Data Lake Analytics
  • Power BI Embedded
  • Wystąpienia zarządzane SQL
  • Serwery SQL Server
  • Bazy danych SQL
  • serwery Azure Database for MySQL
  • serwery Azure Database for PostgreSQL
  • serwery Azure Database for PostgreSQL v2
  • serwery Azure Database for MariaDB
  • Device Provisioning Services
  • Obwody usługi ExpressRoute
  • Drzwi frontonu
  • Interfejsy sieciowe
  • Grupy zabezpieczeń sieci
  • Publiczne adresy IP
  • Profile usługi Traffic Manager
  • Bramy sieci wirtualnej
  • Bramy wirtualnej sieci prywatnej
  • Sieci wirtualne
  • Usługi wyszukiwania
  • Zadania usługi Stream Analytics

Kolumny

Kolumna Typ Opis
action_id_s Ciąg
action_name_s Ciąg
action_s Ciąg
ActivityId_g Guid (identyfikator GUID)
Dodatkowe pola
AdHocOrScheduledJob_s Ciąg
application_name_s Ciąg
audit_schema_version_d Double
avg_cpu_percent_s Ciąg
avg_mean_time_s Ciąg
backendHostname_s Ciąg
Caller_s Ciąg
callerId_s Ciąg
CallerIPAddress Ciąg
calls_s Ciąg
Kategoria Ciąg
client_ip_s Ciąg
clientInfo_s Ciąg
clientIP_s Ciąg
clientIp_s Ciąg
clientIpAddress_s Ciąg
clientPort_d Double
code_s Ciąg
collectionName_s Ciąg
conditions_destinationIP_s Ciąg
conditions_destinationPortRange_s Ciąg
conditions_None_s Ciąg
conditions_protocols_s Ciąg
conditions_sourceIP_s Ciąg
conditions_sourcePortRange_s Ciąg
CorrelationId Ciąg
count_executions_d Double
cpu_time_d Double
database_name_s Ciąg
database_principal_name_s Ciąg
DatabaseName_s Ciąg
db_id_s Ciąg
direction_s Ciąg
dop_d Double
duration_d Double
duration_milliseconds_d Double
DurationMs Bigint
ElasticPoolName_s Ciąg
endTime_t DateTime
Environment_s Ciąg
error_code_s Ciąg
error_message_s Ciąg
errorLevel_s Ciąg
event_class_s Ciąg
event_s Ciąg
event_subclass_s Ciąg
event_time_t DateTime
EventName_s Ciąg
execution_type_d Double
executionInfo_endTime_t DateTime
executionInfo_exitCode_d Double
executionInfo_startTime_t DateTime
host_s Ciąg
httpMethod_s Ciąg
httpStatus_d Double
httpStatusCode_d Double
httpStatusCode_s Ciąg
httpVersion_s Ciąg
id_s Ciąg
identity_claim_appid_g Guid (identyfikator GUID)
identity_claim_ipaddr_s Ciąg
instanceId_s Ciąg
interval_end_time_d Double
interval_start_time_d Double
ip_s Ciąg
is_column_permission_s Ciąg
isAccessPolicyMatch_b Wartość logiczna
JobDurationInSecs_s Ciąg
JobFailureCode_s Ciąg
JobId_g Guid (identyfikator GUID)
jobId_s Ciąg
JobOperation_s Ciąg
JobOperationSubType_s Ciąg
JobStartDateTime_s Ciąg
JobStatus_s Ciąg
JobUniqueId_g Guid (identyfikator GUID)
Poziom Ciąg
log_bytes_used_d Double
logical_io_reads_d Double
logical_io_writes_d Double
LogicalServerName_s Ciąg
macAddress_s Ciąg
matchedConnections_d Double
max_cpu_time_d Double
max_dop_d Double
max_duration_d Double
max_log_bytes_used_d Double
max_logical_io_reads_d Double
max_logical_io_writes_d Double
max_num_physical_io_reads_d Double
max_physical_io_reads_d Double
max_query_max_used_memory_d Double
max_rowcount_d Double
max_time_s Ciąg
mean_time_s Ciąg
Komunikat Ciąg
min_time_s Ciąg
msg_s Ciąg
num_physical_io_reads_d Double
object_id_d Double
object_name_s Ciąg
OperationName Ciąg
OperationVersion Ciąg
partitionKey_s Ciąg
physical_io_reads_d Double
plan_id_d Double
policy_s Ciąg
policyMode_s Ciąg
primaryIPv4Address_s Ciąg
priority_d Double
properties_enabledForDeployment_b Wartość logiczna
properties_enabledForDiskEncryption_b Wartość logiczna
properties_enabledForTemplateDeployment_b Wartość logiczna
properties_s Ciąg
properties_sku_Family_s Ciąg
properties_sku_Name_s Ciąg
properties_tenantId_g Guid (identyfikator GUID)
query_hash_s Ciąg
query_id_d Double
query_max_used_memory_d Double
query_plan_hash_s Ciąg
query_time_d Double
querytext_s Ciąg
receivedBytes_d Double
Region_s Ciąg
requestCharge_s Ciąg
requestQuery_s Ciąg
requestResourceId_s Ciąg
requestResourceType_s Ciąg
requestUri_s Ciąg
reserved_storage_mb_s Ciąg
Zasób Ciąg
resource_actionName_s Ciąg
resource_location_s Ciąg
resource_originRunId_s Ciąg
resource_resourceGroupName_s Ciąg
resource_runId_s Ciąg
resource_subscriptionId_g Guid (identyfikator GUID)
resource_triggerName_s Ciąg
resource_workflowId_g Guid (identyfikator GUID)
resource_workflowName_s Ciąg
ResourceGroup Ciąg
_Resourceid Ciąg Unikatowy identyfikator zasobu, z którego jest skojarzony rekord
ResourceProvider Ciąg
ResourceProvider Ciąg
ResourceType Ciąg
ResourceType Ciąg
response_rows_d Double
resultCode_s Ciąg
ResultDescription Ciąg
ResultDescription Ciąg
resultDescription_ChildJobs_s Ciąg
resultDescription_ErrorJobs_s Ciąg
resultMessage_s Ciąg
ResultSignature Ciąg
ResultType Ciąg
ResultType Ciąg
rootCauseAnalysis_s Ciąg
routingRuleName_s Ciąg
rowcount_d Double
ruleName_s Ciąg
RunbookName_s Ciąg
RunOn_s Ciąg
schema_name_s Ciąg
sentBytes_d Double
sequence_group_id_g Guid (identyfikator GUID)
sequence_number_d Double
server_principal_sid_s Ciąg
session_id_d Double