AzureDiagnostics

Ukládá protokoly prostředků pro služby Azure, které používají Azure Diagnostics režim. Protokoly prostředků popisují interní provoz prostředků Azure.

Protokol prostředků pro jednotlivé služby Azure má jedinečnou sadu sloupců. Tabulka AzureDiagnostics obsahuje nejběžnější sloupce používané službami Azure. Pokud protokol prostředků obsahuje sloupec, který ještě neexistuje v tabulce AzureDiagnostics, přidá se tento sloupec při prvním shromažďování dat. Pokud je dosaženo maximálního počtu 500 sloupců, data pro všechny další sloupce se přidají do dynamického sloupce.

Služby Azure, které používají režim specifický pro prostředek, ukládají data do tabulky specifické pro danou službu a nepoužívají tabulku AzureDiagnostics. V části Typy prostředků níže najdete informace o službách, které používají jednotlivé metody. Podrobnosti o rozdílech najdete v protokolech prostředků Azure .

Sloupec AdditionalFields

Na rozdíl od jiných tabulek je AzureDiagnostics mnohem náchylnější k překročení limitu 500 sloupců stanoveného pro libovolnou tabulku v pracovním prostoru služby Log Analytics kvůli široké škále prostředků Azure, které jsou schopné odesílat data do této tabulky. Aby se zajistilo, že nedojde ke ztrátě dat kvůli počtu aktivních sloupců překračujícím tento limit 500 sloupců, je vytváření sloupců AzureDiagnostics zpracováno jiným způsobem než ostatní tabulky.

Tabulka AzureDiagnostics v každém pracovním prostoru bude obsahovat minimálně stejných 200 sloupců. U pracovních prostorů vytvořených před 19. lednem 2021 bude tabulka obsahovat také všechny sloupce, které už byly před tímto datem. Když se data odesílají do sloupce, který ještě není na místě:

  • Pokud celkový počet sloupců v AzureDiagnostics v aktuálním pracovním prostoru nepřekročí 500, vytvoří se nový sloupec stejně jako u jakékoli jiné tabulky.
  • Pokud je celkový počet sloupců na hodnotě 500 nebo vyšší, přidají se nadbytečná data do sloupce dynamické vlastnosti s názvem AdditionalFields jako vlastnost.

Příklad

Pro ilustraci tohoto chování si představte, že od data nasazení vypadá tabulka AzureDiagnostics v našem pracovním procesu takto:

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

Prostředek, který odesílá data do Služby AzureDiagnostics , pak přidá do svých dat novou dimenzi, kterou nazývají NewInfo1. Vzhledem k tomu, že tabulka stále obsahuje méně než 500 sloupců, přidá se při prvním výskytu události, která obsahuje data pro tuto novou dimenzi, nový sloupec do tabulky:

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

Tato nová data můžete vrátit v jednoduchém dotazu:

AzureDiagnostics | where NewInfo1_s == "xyz"

Později jiný prostředek odešle data do AzureDiagnostics , která přidá nové dimenze s názvem NewInfo2 a NewInfo3. Vzhledem k tomu, že tabulka v tomto pracovním prostoru dosáhla 500 sloupců, nová data se přesunou do sloupce AdditionalFields :

Sloupec 1 Sloupec 2 Sloupec 3 ... Sloupec 498 NewInfo1_s Další pole
abc def 123 ... 456 xyz {"NewInfo2":"789","NewInfo3":"qwerty"}
... ... ... ... ... ... ...

Můžete se na tato data stále dotazovat, ale musíte je extrahovat z kontejneru vlastností pomocí libovolného operátoru dynamických vlastností v KQL:

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

Tipy k používání sloupce AdditionalFields

I když byste měli dodržovat obecné osvědčené postupy pro dotazy, jako je vždy filtrování podle času jako první klauzule v dotazu, měli byste při práci s dalšími poli zvážit některá další doporučení:

  • Před provedením dalších operací s daty budete muset zadat data vysílání. Pokud například existuje sloupec s názvem Perf1Sec_i a vlastnost v AdditionalFields s názvem Perf2Sec a chcete vypočítat celkový výkon přidáním obou hodnot, použijte následující: AzureDiagnostics | extend TotalPerfSec = Perf1Sec_i + toint(AdditionalFields.Perf2Sec) | .....
  • Pomocí klauzulí where můžete před zápisem jakékoli složité logiky snížit objem dat na co nejmenší, abyste výrazně zvýšili výkon. TimeGenerated je jeden sloupec, který by měl být vždy zmenšen na nejmenší možné okno. V případě AzureDiagnostics by měl být v horní části dotazu vždy zahrnut další filtr týkající se typů prostředků, které se dotazují pomocí sloupce ResourceType .
  • Při dotazování na velmi velké objemy dat je někdy efektivnější udělat filtr na AdditionalFields jako celek, než je analyzovat. Například pro velké objemy dat AzureDiagnostics | where AdditionalFields has "Perf2Sec" je často efektivnější než AzureDiagnostics | where isnotnull(toint(AdditionalFields.Perf2Sec)).

Azure Diagnostics režim

Následující služby používají pro protokoly prostředků diagnostický režim Azure a odesílají data do tabulky Azure Diagnostics.

  • Analysis Services
  • Brány Application Gateway
  • Účty služby Automation
  • Servery Azure Database for MariaDB
  • Servery Azure Database for MySQL
  • Servery Azure Database for PostgreSQL
  • Azure Database for PostgreSQL servery v2
  • Účty služby Batch
  • Profily CDN
  • Cognitive Services
  • Data Lake Analytics
  • DataLake Storage Gen1
  • Device Provisioning Services
  • Digital Twins
  • Témata Event Gridu
  • Event Hubs
  • Okruhy ExpressRoute
  • Front Door
  • Účty pro integraci
  • Key Vault
  • Služby Kubernetes
  • Nástroje pro vyrovnávání zatížení
  • Logic Apps
  • Media Services
  • Síťová rozhraní
  • Network Security Groups (Skupiny zabezpečení sítě)
  • Brány P2S VPN Gateway
  • Power BI Embedded
  • Veřejné IP adresy
  • Trezory služby Recovery Services (Site Recovery)
  • Služby hledání
  • Service Bus
  • Databáze SQL
  • Spravované instance SQL
  • SQL servery
  • Úlohy Stream Analytics
  • Profily služby Traffic Manager
  • Virtuální sítě
  • Brány virtuální sítě
  • Brány VPN Gateway

Azure Diagnostics režim nebo režim specifický pro prostředek

Následující služby používají v závislosti na konfiguraci pro protokoly prostředků buď diagnostický režim Azure, nebo režim specifický pro prostředek. Když používají režim specifický pro prostředek, neodesílají data do tabulky AzureDiagnostics. Podrobnosti o této konfiguraci najdete v protokolech prostředků Azure .

  • API Management Services
  • Azure Cosmos DB
  • Datové továrny (V2)
  • IoT Hub
  • Trezory služby Recovery Services (Backup)
  • brány firewall,

Kategorie

  • Prostředky Azure
  • Zabezpečení
  • Síť

Řešení

  • LogManagement

Typy prostředků

  • Brány Application Gateway
  • Profily CDN
  • Azure Cosmos DB
  • Témata Event Gridu
  • Event Hubs
  • brány firewall,
  • Trezory klíčů
  • Služby Kubernetes
  • Trezory služby Recovery Services
  • Service Bus
  • Flexibilní servery Azure Database for MySQL
  • Azure Database for PostgreSQL flexibilních serverů
  • Media Services
  • Analysis Services
  • Účty služby Batch
  • Cognitive Services
  • Obory názvů partnerů Event Gridu
  • Témata partnerů Event Gridu
  • Systémová témata Event Gridu
  • Kubernetes s podporou Azure Arc
  • Zřízené clustery Azure Arc
  • IoT Hub
  • Logic Apps
  • Služby API Management
  • Účet Automation
  • Datové továrny
  • Data Lake Storage Gen1
  • Data Lake Analytics
  • Power BI Embedded
  • Spravované instance SQL
  • SQL Servery
  • Databáze SQL
  • Azure Database for MySQL servery
  • Azure Database for PostgreSQL servery
  • Azure Database for PostgreSQL Servery V2
  • Azure Database for MariaDB servery
  • Device Provisioning Services
  • Okruhy ExpressRoute
  • Front Door
  • Síťová rozhraní
  • Network Security Groups (Skupiny zabezpečení sítě)
  • Veřejné IP adresy
  • Profily Traffic Manageru
  • Brány virtuálních sítí
  • Brány virtuálních privátních sítí
  • Virtuální sítě
  • Vyhledávací služby
  • Úlohy Stream Analytics

Sloupce

Sloupec Typ Description
action_id_s Řetězec
action_name_s Řetězec
action_s Řetězec
ActivityId_g Identifikátor GUID
Další pole
AdHocOrScheduledJob_s Řetězec
application_name_s Řetězec
audit_schema_version_d dvojité
avg_cpu_percent_s Řetězec
avg_mean_time_s Řetězec
backendHostname_s Řetězec
Caller_s Řetězec
callerId_s Řetězec
Adresa CALLERIPAddress Řetězec
calls_s Řetězec
Kategorie Řetězec
client_ip_s Řetězec
clientInfo_s Řetězec
clientIP_s Řetězec
clientIp_s Řetězec
clientIpAddress_s Řetězec
clientPort_d dvojité
code_s Řetězec
collectionName_s Řetězec
conditions_destinationIP_s Řetězec
conditions_destinationPortRange_s Řetězec
conditions_None_s Řetězec
conditions_protocols_s Řetězec
conditions_sourceIP_s Řetězec
conditions_sourcePortRange_s Řetězec
CorrelationId Řetězec
count_executions_d dvojité
cpu_time_d dvojité
database_name_s Řetězec
database_principal_name_s Řetězec
DatabaseName_s Řetězec
db_id_s Řetězec
direction_s Řetězec
dop_d dvojité
duration_d dvojité
duration_milliseconds_d dvojité
DurationMs Bigint
ElasticPoolName_s Řetězec
endTime_t DateTime
Environment_s Řetězec
error_code_s Řetězec
error_message_s Řetězec
errorLevel_s Řetězec
event_class_s Řetězec
event_s Řetězec
event_subclass_s Řetězec
event_time_t DateTime
EventName_s Řetězec
execution_type_d dvojité
executionInfo_endTime_t DateTime
executionInfo_exitCode_d dvojité
executionInfo_startTime_t DateTime
host_s Řetězec
httpMethod_s Řetězec
httpStatus_d dvojité
httpStatusCode_d dvojité
httpStatusCode_s Řetězec
httpVersion_s Řetězec
id_s Řetězec
identity_claim_appid_g Identifikátor GUID
identity_claim_ipaddr_s Řetězec
instanceId_s Řetězec
interval_end_time_d dvojité
interval_start_time_d dvojité
ip_s Řetězec
is_column_permission_s Řetězec
isAccessPolicyMatch_b Logická hodnota
JobDurationInSecs_s Řetězec
JobFailureCode_s Řetězec
JobId_g Identifikátor GUID
jobId_s Řetězec
JobOperation_s Řetězec
JobOperationSubType_s Řetězec
JobStartDateTime_s Řetězec
JobStatus_s Řetězec
JobUniqueId_g Identifikátor GUID
Level Řetězec
log_bytes_used_d dvojité
logical_io_reads_d dvojité
logical_io_writes_d dvojité
LogicalServerName_s Řetězec
macAddress_s Řetězec
matchedConnections_d dvojité
max_cpu_time_d dvojité
max_dop_d dvojité
max_duration_d dvojité
max_log_bytes_used_d dvojité
max_logical_io_reads_d dvojité
max_logical_io_writes_d dvojité
max_num_physical_io_reads_d dvojité
max_physical_io_reads_d dvojité
max_query_max_used_memory_d dvojité
max_rowcount_d dvojité
max_time_s Řetězec
mean_time_s Řetězec
Zpráva Řetězec
min_time_s Řetězec
msg_s Řetězec
num_physical_io_reads_d dvojité
object_id_d dvojité
object_name_s Řetězec
OperationName Řetězec
OperationVersion Řetězec
partitionKey_s Řetězec
physical_io_reads_d dvojité
plan_id_d dvojité
policy_s Řetězec
policyMode_s Řetězec
primaryIPv4Address_s Řetězec
priority_d dvojité
properties_enabledForDeployment_b Logická hodnota
properties_enabledForDiskEncryption_b Logická hodnota
properties_enabledForTemplateDeployment_b Logická hodnota
properties_s Řetězec
properties_sku_Family_s Řetězec
properties_sku_Name_s Řetězec
properties_tenantId_g Identifikátor GUID
query_hash_s Řetězec
query_id_d dvojité
query_max_used_memory_d dvojité
query_plan_hash_s Řetězec
query_time_d dvojité
querytext_s Řetězec
receivedBytes_d dvojité
Region_s Řetězec
requestCharge_s Řetězec
requestQuery_s Řetězec
requestResourceId_s Řetězec
requestResourceType_s Řetězec
requestUri_s Řetězec
reserved_storage_mb_s Řetězec
Prostředek Řetězec
resource_actionName_s Řetězec
resource_location_s Řetězec
resource_originRunId_s Řetězec
resource_resourceGroupName_s Řetězec
resource_runId_s Řetězec
resource_subscriptionId_g Identifikátor GUID
resource_triggerName_s Řetězec
resource_workflowId_g Identifikátor GUID
resource_workflowName_s Řetězec
ResourceGroup Řetězec
_Resourceid Řetězec Jedinečný identifikátor prostředku, ke kterému je záznam přidružený
ResourceProvider Řetězec
ResourceProvider Řetězec
ResourceType Řetězec
ResourceType Řetězec
response_rows_d dvojité
resultCode_s Řetězec
ResultDescription Řetězec
ResultDescription Řetězec
resultDescription_ChildJobs_s Řetězec
resultDescription_ErrorJobs_s Řetězec
resultMessage_s Řetězec
ResultSignature Řetězec
ResultType Řetězec
ResultType Řetězec
rootCauseAnalysis_s Řetězec
routingRuleName_s Řetězec
rowcount_d dvojité
ruleName_s Řetězec
RunbookName_s Řetězec
RunOn_s Řetězec
schema_name_s Řetězec
sentBytes_d dvojité
sequence_group_id_g Identifikátor GUID
sequence_number_d dvojité
server_principal_sid_s Řetězec
session_id_d dvojité