AzureDiagnostics
Slaat resourcelogboeken op voor Azure-services die gebruikmaken van Azure Diagnostics-modus. Resourcelogboeken beschrijven de interne werking van Azure-resources.
Het resourcelogboek voor elke Azure-service heeft een unieke set kolommen. De tabel AzureDiagnostics bevat de meest voorkomende kolommen die worden gebruikt door Azure-services. Als een resourcelogboek een kolom bevat die nog niet bestaat in de tabel AzureDiagnostics, wordt die kolom toegevoegd wanneer er voor de eerste keer gegevens worden verzameld. Als het maximumaantal van 500 kolommen is bereikt, worden gegevens voor eventuele extra kolommen toegevoegd aan een dynamische kolom.
Azure-services die gebruikmaken van de resourcespecifieke modus, slaan gegevens op in een tabel die specifiek is voor die service en maken geen gebruik van de tabel AzureDiagnostics. Zie Resourcetypen hieronder voor de services die gebruikmaken van elke methode. Zie Azure-resourcelogboeken voor meer informatie over de verschillen.
De kolom AdditionalFields
In tegenstelling tot andere tabellen is AzureDiagnostics veel gevoeliger voor het overschrijden van de limiet van 500 kolommen die is ingesteld voor elke tabel in een Log Analytics-werkruimte vanwege het brede assortiment Azure-resources waarmee gegevens naar deze tabel kunnen worden verzonden. Om ervoor te zorgen dat er geen gegevens verloren gaan vanwege het aantal actieve kolommen dat deze limiet van 500 kolommen overschrijdt, wordt het maken van AzureDiagnostics-kolommen op een andere manier verwerkt dan andere tabellen.
De tabel AzureDiagnostics in elke werkruimte bevat minimaal dezelfde 200 kolommen. Voor werkruimten die vóór 19 januari 2021 zijn gemaakt, bevat de tabel ook kolommen die al aanwezig waren vóór deze datum. Wanneer gegevens worden verzonden naar een kolom die nog niet aanwezig is:
- Als het totale aantal kolommen in AzureDiagnostics in de huidige werkruimte niet groter is dan 500, wordt er een nieuwe kolom gemaakt, net als bij elke andere tabel.
- Als het totale aantal kolommen gelijk is aan of hoger is dan 500, worden de overtollige gegevens als een eigenschap toegevoegd aan een kolom met dynamische eigenschappenverzameling met de naam AdditionalFields .
Voorbeeld
Om dit gedrag te illustreren, stelt u zich voor dat vanaf (implementatiedatum) de tabel AzureDiagnostics in onze workpsace er als volgt uitziet:
Kolom 1 | Kolom 2 | Kolom 3 | ... | Kolom 498 |
---|---|---|---|---|
abc | def | 123 | ... | 456 |
... | ... | ... | ... | ... |
Een resource die gegevens naar AzureDiagnostics verzendt, voegt vervolgens een nieuwe dimensie toe aan de gegevens die ze NewInfo1 noemen. Omdat de tabel nog steeds minder dan 500 kolommen bevat, wordt er bij de eerste gebeurtenis die gegevens voor deze nieuwe dimensie bevat, een nieuwe kolom aan de tabel toegevoegd:
Kolom 1 | Kolom 2 | Kolom 3 | ... | Kolom 498 | NewInfo1_s |
---|---|---|---|---|---|
abc | def | 123 | ... | 456 | xyz |
... | ... | ... | ... | ... | ... |
U kunt deze nieuwe gegevens retourneren in een eenvoudige query:
AzureDiagnostics | where NewInfo1_s == "xyz"
Op een later tijdstip verzendt een andere resource gegevens naar AzureDiagnostics waarmee nieuwe dimensies worden toegevoegd met de naam NewInfo2 en NewInfo3. Omdat de tabel 500 kolommen in deze werkruimte heeft bereikt, worden de nieuwe gegevens in de kolom AdditionalFields geplaatst:
Kolom 1 | Kolom 2 | Kolom 3 | ... | Kolom 498 | NewInfo1_s | AdditionalFields |
---|---|---|---|---|---|---|
abc | def | 123 | ... | 456 | xyz | {"NewInfo2":"789","NewInfo3":"qwerty"} |
... | ... | ... | ... | ... | ... | ... |
U kunt nog steeds query's uitvoeren op deze gegevens, maar u moet deze ophalen uit de eigenschappenverzameling met behulp van een van de dynamische eigenschapsoperators in KQL:
AzureDiagnostics
| where AdditionalFields.NewInfo2 == "789" and AdditionalFields.NewInfo3 == "qwerty"
Tips voor het gebruik van de kolom AdditionalFields
Hoewel algemene aanbevolen procedures voor query's, zoals altijd filteren op tijd als de eerste component in de query, moeten worden gevolgd, zijn er enkele andere aanbevelingen waarmee u rekening moet houden wanneer u met AdditionalFields werkt:
- U moet gegevens typen voordat u er verdere bewerkingen op uitvoert. Als er bijvoorbeeld een kolom bestaat met de naam Perf1Sec_i en een eigenschap in AdditionalFields met de naam Perf2Sec, en u het totale perf wilt berekenen door beide waarden toe te voegen, gebruikt u iets als:
AzureDiagnostics | extend TotalPerfSec = Perf1Sec_i + toint(AdditionalFields.Perf2Sec) | ....
. - Gebruik where-componenten om het gegevensvolume tot het kleinst mogelijk te beperken voordat u complexe logica schrijft om de prestaties aanzienlijk te verbeteren. TimeGenerated is één kolom die altijd tot het kleinst mogelijke venster moet worden teruggebracht. In het geval van AzureDiagnostics moet ook altijd een extra filter worden opgenomen boven aan de query rond de resourcetypen die worden opgevraagd met behulp van de kolom ResourceType .
- Bij het uitvoeren van query's op zeer grote hoeveelheden gegevens is het soms efficiënter om een filter uit te voeren op AdditionalFields als geheel in plaats van het te parseren. Voor grote hoeveelheden gegevens
AzureDiagnostics | where AdditionalFields has "Perf2Sec"
is bijvoorbeeld vaak efficiënter danAzureDiagnostics | where isnotnull(toint(AdditionalFields.Perf2Sec))
.
Azure Diagnostics modus
De volgende services maken gebruik van de diagnostische modus van Azure voor hun resourcelogboeken en verzenden gegevens naar de Azure Diagnostics tabel.
- Analysis Services
- Toepassingsgateways
- Automation-accounts
- Azure Database for MariaDB-servers
- Azure Database for MySQL-servers
- Azure Database for PostgreSQL-servers
- Azure Database for PostgreSQL servers v2
- Batch-accounts
- CDN-profielen
- Cognitive Services
- Data Lake Analytics
- DataLake Storage Gen1
- Device Provisioning Services
- Digital Twins
- Event Grid-onderwerpen
- Event Hubs
- ExpressRoute-circuits
- Front Doors
- Integratieaccounts
- Key Vault
- Kubernetes-services
- Load balancers
- Logic Apps
- Mediaservices
- Netwerkinterfaces
- Netwerkbeveiligingsgroepen
- P2S VPN-gateways
- Power BI Embedded
- Openbare IP-adressen
- Recovery Services-kluizen (Site Recovery)
- Zoekservices
- Service Bus
- SQL-databases
- Beheerde SQL-exemplaren
- SQL-servers
- Stream Analytics-taken
- Traffic Manager-profielen
- Virtuele netwerken
- Virtuele netwerkgateways
- VPN-gateways
Azure Diagnostics modus of resourcespecifieke modus
De volgende services gebruiken de diagnostische modus van Azure of de resourcespecifieke modus voor hun resourcelogboeken, afhankelijk van hun configuratie. Wanneer ze de resourcespecifieke modus gebruiken, verzenden ze geen gegevens naar de tabel AzureDiagnostics. Zie Azure-resourcelogboeken voor meer informatie over deze configuratie.
- API Management Services
- Azure Cosmos DB
- Data factory's (V2)
- IoT Hub
- Recovery Services-kluizen (back-up)
- Firewalls
Categorieën
- Azure-bronnen
- Beveiliging
- Netwerk
Oplossingen
- LogManagement
Resourcetypen
- Toepassingsgateways
- CDN-profielen
- Azure Cosmos DB
- Event Grid-onderwerpen
- Event Hubs
- Firewalls
- Sleutelkluizen
- Kubernetes Services
- Recovery Services-kluizen
- Service Bus
- Azure Database for MySQL Flexibele servers
- Azure Database for PostgreSQL Flexibele servers
- Media Services
- Analysis Services
- Batch-accounts
- Cognitive Services
- Event Grid-partnernaamruimten
- Event Grid-partneronderwerpen
- Event Grid-systeemonderwerpen
- Kubernetes met Azure Arc
- Ingerichte Azure Arc-clusters
- IoT Hub
- Logic Apps
- API Management-services
- Automation-account
- Data factory's
- Data Lake Storage Gen1
- Data Lake Analytics
- Power BI Embedded
- Beheerde SQL-exemplaren
- SQL-servers
- SQL Databases
- Azure Database for MySQL-servers
- Azure Database for PostgreSQL servers
- Azure Database for PostgreSQL Servers V2
- Azure Database for MariaDB servers
- Device Provisioning Services
- ExpressRoute-circuits
- Front Doors
- Netwerkinterfaces
- Netwerkbeveiligingsgroepen
- Openbare IP-adressen
- Traffic Manager-profielen
- Virtuele netwerkgateways
- Virtuele privénetwerkgateways
- Virtuele netwerken
- Search-services
- Stream Analytics-taken
Kolommen
Kolom | Type | Beschrijving |
---|---|---|
action_id_s | Tekenreeks | |
action_name_s | Tekenreeks | |
action_s | Tekenreeks | |
ActivityId_g | Guid | |
AdditionalFields | ||
AdHocOrScheduledJob_s | Tekenreeks | |
application_name_s | Tekenreeks | |
audit_schema_version_d | Dubbel | |
avg_cpu_percent_s | Tekenreeks | |
avg_mean_time_s | Tekenreeks | |
backendHostname_s | Tekenreeks | |
Caller_s | Tekenreeks | |
callerId_s | Tekenreeks | |
CallerIPAddress | Tekenreeks | |
calls_s | Tekenreeks | |
Categorie | Tekenreeks | |
client_ip_s | Tekenreeks | |
clientInfo_s | Tekenreeks | |
clientIP_s | Tekenreeks | |
clientIp_s | Tekenreeks | |
clientIpAddress_s | Tekenreeks | |
clientPort_d | Dubbel | |
code_s | Tekenreeks | |
collectionName_s | Tekenreeks | |
conditions_destinationIP_s | Tekenreeks | |
conditions_destinationPortRange_s | Tekenreeks | |
conditions_None_s | Tekenreeks | |
conditions_protocols_s | Tekenreeks | |
conditions_sourceIP_s | Tekenreeks | |
conditions_sourcePortRange_s | Tekenreeks | |
CorrelationId | Tekenreeks | |
count_executions_d | Dubbel | |
cpu_time_d | Dubbel | |
database_name_s | Tekenreeks | |
database_principal_name_s | Tekenreeks | |
DatabaseName_s | Tekenreeks | |
db_id_s | Tekenreeks | |
direction_s | Tekenreeks | |
dop_d | Dubbel | |
duration_d | Dubbel | |
duration_milliseconds_d | Dubbel | |
DurationMs | Bigint | |
ElasticPoolName_s | Tekenreeks | |
endTime_t | DateTime | |
Environment_s | Tekenreeks | |
error_code_s | Tekenreeks | |
error_message_s | Tekenreeks | |
errorLevel_s | Tekenreeks | |
event_class_s | Tekenreeks | |
event_s | Tekenreeks | |
event_subclass_s | Tekenreeks | |
event_time_t | DateTime | |
EventName_s | Tekenreeks | |
execution_type_d | Dubbel | |
executionInfo_endTime_t | DateTime | |
executionInfo_exitCode_d | Dubbel | |
executionInfo_startTime_t | DateTime | |
host_s | Tekenreeks | |
httpMethod_s | Tekenreeks | |
httpStatus_d | Dubbel | |
httpStatusCode_d | Dubbel | |
httpStatusCode_s | Tekenreeks | |
httpVersion_s | Tekenreeks | |
id_s | Tekenreeks | |
identity_claim_appid_g | Guid | |
identity_claim_ipaddr_s | Tekenreeks | |
instanceId_s | Tekenreeks | |
interval_end_time_d | Dubbel | |
interval_start_time_d | Dubbel | |
ip_s | Tekenreeks | |
is_column_permission_s | Tekenreeks | |
isAccessPolicyMatch_b | Booleaanse waarde | |
JobDurationInSecs_s | Tekenreeks | |
JobFailureCode_s | Tekenreeks | |
JobId_g | Guid | |
jobId_s | Tekenreeks | |
JobOperation_s | Tekenreeks | |
JobOperationSubType_s | Tekenreeks | |
JobStartDateTime_s | Tekenreeks | |
JobStatus_s | Tekenreeks | |
JobUniqueId_g | Guid | |
Niveau | Tekenreeks | |
log_bytes_used_d | Dubbel | |
logical_io_reads_d | Dubbel | |
logical_io_writes_d | Dubbel | |
LogicalServerName_s | Tekenreeks | |
macAddress_s | Tekenreeks | |
matchedConnections_d | Dubbel | |
max_cpu_time_d | Dubbel | |
max_dop_d | Dubbel | |
max_duration_d | Dubbel | |
max_log_bytes_used_d | Dubbel | |
max_logical_io_reads_d | Dubbel | |
max_logical_io_writes_d | Dubbel | |
max_num_physical_io_reads_d | Dubbel | |
max_physical_io_reads_d | Dubbel | |
max_query_max_used_memory_d | Dubbel | |
max_rowcount_d | Dubbel | |
max_time_s | Tekenreeks | |
mean_time_s | Tekenreeks | |
Bericht | Tekenreeks | |
min_time_s | Tekenreeks | |
msg_s | Tekenreeks | |
num_physical_io_reads_d | Dubbel | |
object_id_d | Dubbel | |
object_name_s | Tekenreeks | |
OperationName | Tekenreeks | |
OperationVersion | Tekenreeks | |
partitionKey_s | Tekenreeks | |
physical_io_reads_d | Dubbel | |
plan_id_d | Dubbel | |
policy_s | Tekenreeks | |
policyMode_s | Tekenreeks | |
primaryIPv4Address_s | Tekenreeks | |
priority_d | Dubbel | |
properties_enabledForDeployment_b | Booleaanse waarde | |
properties_enabledForDiskEncryption_b | Booleaanse waarde | |
properties_enabledForTemplateDeployment_b | Booleaanse waarde | |
properties_s | Tekenreeks | |
properties_sku_Family_s | Tekenreeks | |
properties_sku_Name_s | Tekenreeks | |
properties_tenantId_g | Guid | |
query_hash_s | Tekenreeks | |
query_id_d | Dubbel | |
query_max_used_memory_d | Dubbel | |
query_plan_hash_s | Tekenreeks | |
query_time_d | Dubbel | |
querytext_s | Tekenreeks | |
receivedBytes_d | Dubbel | |
Region_s | Tekenreeks | |
requestCharge_s | Tekenreeks | |
requestQuery_s | Tekenreeks | |
requestResourceId_s | Tekenreeks | |
requestResourceType_s | Tekenreeks | |
requestUri_s | Tekenreeks | |
reserved_storage_mb_s | Tekenreeks | |
Resource | Tekenreeks | |
resource_actionName_s | Tekenreeks | |
resource_location_s | Tekenreeks | |
resource_originRunId_s | Tekenreeks | |
resource_resourceGroupName_s | Tekenreeks | |
resource_runId_s | Tekenreeks | |
resource_subscriptionId_g | Guid | |
resource_triggerName_s | Tekenreeks | |
resource_workflowId_g | Guid | |
resource_workflowName_s | Tekenreeks | |
ResourceGroup | Tekenreeks | |
_Resourceid | Tekenreeks | Een unieke id voor de resource waaraan de record is gekoppeld |
ResourceProvider | Tekenreeks | |
ResourceProvider | Tekenreeks | |
ResourceType | Tekenreeks | |
ResourceType | Tekenreeks | |
response_rows_d | Dubbel | |
resultCode_s | Tekenreeks | |
ResultDescription | Tekenreeks | |
ResultDescription | Tekenreeks | |
resultDescription_ChildJobs_s | Tekenreeks | |
resultDescription_ErrorJobs_s | Tekenreeks | |
resultMessage_s | Tekenreeks | |
ResultSignature | Tekenreeks | |
ResultType | Tekenreeks | |
ResultType | Tekenreeks | |
rootCauseAnalysis_s | Tekenreeks | |
routingRuleName_s | Tekenreeks | |
rowcount_d | Dubbel | |
ruleName_s | Tekenreeks | |
RunbookName_s | Tekenreeks | |
RunOn_s | Tekenreeks | |
schema_name_s | Tekenreeks | |
sentBytes_d | Dubbel | |
sequence_group_id_g | Guid | |
sequence_number_d | Dubbel | |
server_principal_sid_s | Tekenreeks | |
session_id_d | Dubbel |
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor