Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Elke GraphQL-query en mutatie die wordt uitgevoerd via uw Fabric-API voor GraphQL genereert gedetailleerde bewerkingslogboeken waarmee prestatiegegevens, querytekst, verificatiedetails en uitvoeringsresultaten worden vastgelegd. Deze logboeken worden automatisch verzameld en opgeslagen in de bewakingsdatabase van uw werkruimte, zodat u inzicht krijgt in hoe uw GraphQL-API's worden gebruikt en hoe ze presteren.
GraphQL-bewerkingslogboeken maken deel uit van de bewakingsfunctie voor werkruimten van Fabric. Wanneer u werkruimtebewaking inschakelt, maakt Fabric een Eventhouse-database in uw werkruimte die continu logboeken verzamelt van al uw GraphQL-API's. U kunt query's uitvoeren op deze logboeken met behulp van KQL (Kusto Query Language) om problemen op te lossen, prestaties te optimaliseren, gebruikspatronen bij te houden en ervoor te zorgen dat uw API's voldoen aan DE SLA-vereisten.
Vereiste voorwaarden
Om graphQL-bewerkingslogboeken te openen en er query's op uit te voeren:
- Werkruimtebewaking inschakelen in uw Fabric-werkruimte
- Toegang tot de eventhouse KQL-database die voor uw werkruimte is gemaakt
- Bekendheid met Kusto Query Language (KQL) voor het uitvoeren van query's op de logboeken
Zodra bewaking is ingeschakeld, worden GraphQL-bewerkingen automatisch vastgelegd in twee tabellen: GraphQLMetrics voor geaggregeerde metrische gegevens en GraphQLLog voor gedetailleerde bewerkingslogboeken.
Wie gebruikt GraphQL-bewerkingslogboeken
Bewerkingslogboeken en -bewaking zijn essentieel voor:
- Fabric-werkruimtebeheerders controleren het Gebruik, de prestaties en het capaciteitsverbruik van GraphQL-API's
- Data engineers volgen patronen voor gegevenstoegang en optimaliseren fabric lakehouse- en magazijnquery's
- DevOps-teams zorgen ervoor dat productietoepassingen die Fabric-gegevens gebruiken, voldoen aan de SLA-vereisten
- Infrastructuurcapaciteitsbeheerders begrijpen metrische gegevens over API-verbruik voor capaciteitsplanning en kostenbeheer
Gebruik bewerkingslogboeken wanneer u de prestaties en het gebruik van uw Fabric GraphQL-API's moet bewaken, oplossen of analyseren.
GraphQL-bewerkingslogboeken
Een logboekgebeurtenis voor elke query die wordt uitgevoerd door de Fabric-API voor GraphQL op de verbonden gegevensbronnen, wordt opgeslagen in twee aanvullende tabellen:
- GraphQLMetrics: Bevat geaggregeerde metrische gegevens met tijdsintervalsamenvattingen, ideaal voor prestatiebewaking en trendanalyse
- GraphQLLog: bevat gedetailleerde bewerkingslogboeken met volledige querytekst en uitvoeringsdetails, ideaal voor het oplossen van problemen met specifieke query's
Gebruik deze logboeken om:
- Gedragswijzigingen en mogelijke API-degradatie identificeren
- Ongebruikelijke query's of query's met veel resources detecteren
- Gebruikers en toepassingen identificeren met het hoogste aantal query's
- Queryprestaties en trends analyseren
- Problemen met trage query's oplossen
- Problemen met specifieke GraphQL-query's vaststellen
GraphQLMetrics-tabel
In de GraphQLMetrics tabel worden geaggregeerde metrische gegevens voor GraphQL-bewerkingen opgeslagen. Gebruik deze tabel voor prestatiebewaking, capaciteitsplanning en het identificeren van trends in de loop van de tijd.
Deze tabel bevat de volgende kolommen:
| Kolomnaam | Type | Description |
|---|---|---|
| Tijdstempel | datetime | De tijdstempel (UTC) van wanneer de logboekvermelding is gegenereerd toen de record werd gemaakt door de gegevensbron. |
| ItemId | tekenreeks | Unieke id van de resource die de gegevens registreren. |
| ItemKind | tekenreeks | Type van artikel dat de operatie logt. |
| ItemName | tekenreeks | De naam van het Fabric-item dat deze bewerking registreert. |
| WorkspaceId | tekenreeks | Unieke identificatie van de Fabric-werkruimte waarin het item wordt gebruikt bevat |
| WorkspaceName | tekenreeks | Naam van de Fabric-werkruimte waarin het item staat. |
| CapacityId | tekenreeks | Unieke identificatie van de capaciteit waarop het item wordt gespeeld. |
| CustomerTenantId | tekenreeks | Tenant-id van klant, waar de bewerking is uitgevoerd. |
| PlatformMonitoringTableName | tekenreeks | De naam van de tabel aan records behoort tot (of het gecertificeerde gebeurtenistype van de record). Indeling is <WorkloadName> + [OperationType>]+ <TelemetryType> |
| Regio | tekenreeks | De regio van de resource die de gebeurtenis verzendt; Bijvoorbeeld VS - oost of Frankrijk - zuid. |
| MetricTimeGrain | tekenreeks | Tijdsinterval van de metrische waarde (ISO 8601-duur). |
| MetricUnitName | tekenreeks | Eenheid van de metrische waarde. |
| MetricSumValue | long | De geaggregeerde somwaarde van een metrische waarde gedurende één minuut. |
| DatasourceTypes | dynamisch | Matrix van DataSource-typen die door het model worden gebruikt. |
| ResultCode | tekenreeks | Foutcode van de mislukte activiteiten, gebruikt om het gebruik uit te breiden naar betrouwbaarheid. |
| Status | tekenreeks | Status van de bewerking. De query is uitgevoerd met fouten/mislukt. |
GraphQLLog-tabel
In de GraphQLLog tabel worden gedetailleerde bewerkingslogboeken opgeslagen voor elke GraphQL-queryuitvoering. Gebruik deze tabel voor het oplossen van problemen met specifieke query's, het analyseren van querytekst en het onderzoeken van fouten of prestatieproblemen.
Zie Gebeurtenissen en schema voor meer informatie over de gebeurtenissen en een inzoomactie op de ExecutionMetrics gebeurtenis.
Deze tabel bevat de volgende kolommen:
| Kolomnaam | Type | Description |
|---|---|---|
| Tijdstempel | datetime | De tijdstempel (UTC) van wanneer de logboekvermelding is gegenereerd toen de record werd gemaakt door de gegevensbron. |
| OperationName | tekenreeks | De naam van de bewerking. |
| ItemId | tekenreeks | Unieke id van de resource die de gegevens registreren. |
| ItemKind | tekenreeks | Type van artikel dat de operatie logt. |
| ItemName | tekenreeks | De naam van het Fabric-item dat deze bewerking registreert. |
| WorkspaceId | tekenreeks | Unieke identificatie van de Fabric-werkruimte waarin het item wordt bediend bevat. |
| WorkspaceName | tekenreeks | Naam van de Fabric-werkruimte waarin het item staat. |
| CapacityId | tekenreeks | Unieke identificatie van de capaciteit waarop het item wordt gespeeld. |
| CorrelationId | tekenreeks | Hoofdactiviteits-id. |
| OperationId | tekenreeks | Unieke id voor de bewerking die wordt geregistreerd. |
| Identiteit | dynamisch | Details van gebruiker en claim. De gebruiker die is gekoppeld aan de bewerking die wordt gerapporteerd. |
| CustomerTenantId | tekenreeks | Tenant-id van klant, waar de bewerking is uitgevoerd. |
| DurationMs | long | Verstreken CPU-tijd die is verstreken terwijl alle vereiste bewerkingen zijn verwerkt. Eenheid is in milliseconden. |
| Status | tekenreeks | Status van de bewerking. De query is uitgevoerd met fouten/mislukt. |
| Niveau | tekenreeks | Metagegevens die zijn vereist voor het platformbewakingsteam. |
| Regio | tekenreeks | De regio van de resource die de gebeurtenis verzendt; Bijvoorbeeld VS - oost of Frankrijk - zuid. |
| PlatformMonitoringTableName | tekenreeks | De naam van de tabel aan records behoort tot (of het gecertificeerde gebeurtenistype van de record). Indeling is <WorkloadName> + [OperationType>]+ <TelemetryType> |
| QueryTekst | tekenreeks | De tekst van de query. |
| GraphQLOverheadDurationMs | long | De GraphQL-overhead in ms voor een dataplane-aanvraag. |
| Verwerkte bytes | long | Verwerkte gegevensvolume in byte. |
| TransportProtocol | tekenreeks | Transportprotocol voor een aanvraag. |
| QueryResultMessage | tekenreeks | Deze dimensie wordt gebruikt om extra context te geven aan het resultaat van een querybewerking. |
Voorbeeldquery's
Gebruik deze KQL-query's om uw GraphQL-bewerkingslogboeken te analyseren. Je kunt deze queries direct uitvoeren in de eventhouse query-editor binnen je werkruimte.
Trage query's zoeken
Identificeer GraphQL-query's die langer dan 5 seconden duren om uit te voeren:
GraphQLLog
| where DurationMs > 5000
| project Timestamp, ItemName, DurationMs, QueryText, Status, Identity
| order by DurationMs desc
| take 20
Belangrijkste gebruikers op aantal query's
Zoek welke gebruikers of toepassingen de meeste GraphQL-aanvragen maken:
GraphQLLog
| summarize QueryCount = count() by Identity
| order by QueryCount desc
| take 10
Analyse van foutpercentage
Bereken de foutsnelheid voor GraphQL-bewerkingen in de loop van de tijd:
GraphQLLog
| summarize
TotalQueries = count(),
FailedQueries = countif(Status == "failed"),
ErrorRate = (countif(Status == "failed") * 100.0) / count()
by bin(Timestamp, 1h)
| order by Timestamp desc
De meeste resource-intensieve query's
Identificeer query's die de grootste hoeveelheid gegevens verwerken:
GraphQLLog
| where ProcessedBytes > 0
| project Timestamp, ItemName, ProcessedBytes, QueryText, DurationMs
| order by ProcessedBytes desc
| take 20
Trends in queryprestaties
Analyseer de gemiddelde queryprestaties gedurende de afgelopen 24 uur:
GraphQLMetrics
| where Timestamp > ago(24h)
| summarize
AvgDuration = avg(MetricSumValue),
MaxDuration = max(MetricSumValue),
QueryCount = count()
by bin(Timestamp, 1h), ItemName
| order by Timestamp desc
Ga naar werkruimtebewaking in de GitHub-opslagplaats voor infrastructuurvoorbeelden voor meer voorbeelden van werkruimtebewaking.