Använda prestandadiagnostikloggen för Intelligent Insights för prestandaproblem i Azure SQL Database och Azure SQL Managed Instance
Gäller för:Azure SQL DatabaseAzure SQL Managed Instance
Den här sidan innehåller information om hur du använder prestandadiagnostikloggen som genereras av Intelligent Insights i Azure SQL Database och Prestandaproblem med Azure SQL Managed Instance, dess format och de data som den innehåller för dina anpassade utvecklingsbehov. Du kan skicka den här diagnostikloggen till Azure Monitor-loggar, Azure Event Hubs, Azure Storage eller en tredjepartslösning för anpassade DevOps-aviserings- och rapporteringsfunktioner.
Kommentar
Intelligenta insikter är en förhandsversionsfunktion som inte är tillgänglig i följande regioner: Europa, västra, Europa, norra, USA, västra 1 och USA, östra 1.
Loggrubrik
Diagnostikloggen använder JSON-standardformat för att mata ut Intelligent Insights-resultat. Den exakta kategoriegenskapen för åtkomst till en Intelligent Insights-logg är det fasta värdet "SQLInsights", som inte är relaterat till Övervakning av Azure SQL Database med Azure Monitor SQL Insights (förhandsversion).
Logghuvudet är vanligt och består av tidsstämpeln (TimeGenerated) som visar när en post skapades. Den innehåller också ett resurs-ID (ResourceId) som refererar till den specifika databas som posten relaterar till. Kategorin (kategori), nivå (nivå) och åtgärdsnamnet (OperationName) är fasta egenskaper vars värden inte ändras. De anger att loggposten är informationsbaserad och att den kommer från Intelligent Insights (SQLInsights).
"TimeGenerated" : "2017-9-25 11:00:00", // time stamp of the log entry
"ResourceId" : "database identifier", // value points to a database resource
"Category": "SQLInsights", // fixed property
"Level" : "Informational", // fixed property
"OperationName" : "Insight", // fixed property
Problem-ID och databas som påverkas
Problemidentifieringsegenskapen (issueId_d) ger ett sätt att unikt spåra prestandaproblem tills den har lösts. Flera händelseposter i loggrapporteringsstatusen för samma problem delar samma problem-ID.
Tillsammans med problem-ID:t rapporterar diagnostikloggen tidsstämplarna start (intervalStartTime_t) och slut (intervalEndTme_t) för den specifika händelsen som är relaterad till ett problem som rapporteras i diagnostikloggen.
Egenskapen elastisk pool (elasticPoolName_s) anger vilken elastisk pool databasen med ett problem tillhör. Om databasen inte ingår i en elastisk pool har den här egenskapen inget värde. Databasen där ett problem upptäcktes avslöjas i egenskapen databasnamn (databaseName_s).
"intervalStartTime_t": "2017-9-25 11:00", // start of the issue reported time stamp
"intervalEndTme_t":"2017-9-25 12:00", // end of the issue reported time stamp
"elasticPoolName_s" : "", // resource elastic pool (if applicable)
"databaseName_s" : "db_name", // database name
"issueId_d" : 1525, // unique ID of the issue detected
"status_s" : "Active" // status of the issue – possible values: "Active", "Verifying", and "Complete"
Identifierade problem
Nästa avsnitt i Prestandaloggen för Intelligent Insights innehåller prestandaproblem som har identifierats via inbyggd artificiell intelligens. Identifieringar visas i egenskaper i JSON-diagnostikloggen. Dessa identifieringar består av kategorin för ett problem, effekten av problemet, de frågor som påverkas och måtten. Identifieringsegenskaperna kan innehålla flera prestandaproblem som har identifierats.
Identifierade prestandaproblem rapporteras med följande egenskapsstruktur för identifieringar:
"detections_s" : [{
"impact" : 1 to 3, // impact of the issue detected, possible values 1-3 (1 low, 2 moderate, 3 high impact)
"category" : "Detectable performance pattern", // performance issue detected, see the table
"details": <Details outputted> // details of an issue (see the table)
}]
Detekterbara prestandamönster och information som matas ut till diagnostikloggen finns i följande tabell.
Identifieringskategori
Egenskapen kategori (kategori) beskriver kategorin för detekterbara prestandamönster. Se följande tabell för alla möjliga kategorier av detekterbara prestandamönster. Mer information finns i Felsöka problem med databasprestanda med Intelligent Insights.
Beroende på det identifierade prestandaproblemet skiljer sig informationen som matas ut i diagnostikloggfilen i enlighet med detta.
Identifierbara prestandamönster | Utdata för information |
---|---|
Nå resursgränser | |
Arbetsbelastningsökning | |
Minnestryck | |
Låsning | |
Ökad MAXDOP | |
Pagelatch-konkurrens | |
Index saknas | |
Ny fråga | |
Ovanlig väntestatistik | |
tempdb Påstående |
|
DTU-brist för elastisk pool | |
Planera regression | |
Ändra konfigurationsvärde för databasomfattning | |
Långsam klient | |
Nedgradering av prisnivå |
Påverkan
Egenskapen impact (impact) beskriver hur mycket ett identifierat beteende bidrog till problemet som en databas har. Påverkan varierar från 1 till 3, med 3 som det högsta bidraget, 2 som måttligt och 1 som det lägsta bidraget. Påverkansvärdet kan användas som indata för anpassad aviseringsautomatisering, beroende på dina specifika behov. De egenskapsfrågor som påverkas (QueryHashes) innehåller en lista över de fråge-hashvärden som påverkades av en viss identifiering.
Frågor som påverkas
Nästa avsnitt i Intelligent Insights-loggen innehåller information om specifika frågor som påverkades av de identifierade prestandaproblemen. Den här informationen visas som en matris med objekt som är inbäddade i egenskapen impact_s. Påverkansegenskapen består av entiteter och mått. Entiteter refererar till en viss fråga (Typ: Fråga). Den unika frågehashen visas under egenskapen value (Value). Dessutom följs var och en av de frågor som avslöjas av ett mått och ett värde, vilket indikerar ett identifierat prestandaproblem.
I följande loggexempel identifierades frågan med hash 0x9102EXZ4 ha en ökad körningstid (Mått: DurationIncreaseSeconds). Värdet på 110 sekunder anger att den här frågan tog 110 sekunder längre tid att köra. Eftersom flera frågor kan identifieras kan det här loggavsnittet innehålla flera frågeposter.
"impact" : [{
"entity" : {
"Type" : "Query", // type of entity - query
"Value" : "query hash value", // for example "0x9102EXZ4" query hash value },
"Metric" : "DurationIncreaseSeconds", // measured metric and the measurement unit (in this case seconds)
"Value" : 110 // value of the measured metric (in this case seconds)
}]
Mått
Måttenheten för varje rapporterat mått tillhandahålls under egenskapen mått (mått) med möjliga värden för sekunder, antal och procent. Värdet för ett uppmätt mått rapporteras i egenskapen value (value).
Egenskapen DurationIncreaseSeconds tillhandahåller måttenheten i sekunder. Måttenheten CriticalErrorCount är ett tal som representerar ett felantal.
"metric" : "DurationIncreaseSeconds", // issue metric type – possible values: DurationIncreaseSeconds, CriticalErrorCount, WaitingSeconds
"value" : 102 // value of the measured metric (in this case seconds)
Rekommendationer för rotorsaksanalys och förbättringar
Den sista delen av prestandaloggen för Intelligent Insights avser den automatiserade rotorsaksanalysen av det identifierade prestandaförsämringsproblemet. Informationen visas i mänskligt vänligt verbiage i egenskapen rotorsaksanalys (rootCauseAnalysis_s). Förbättringsrekommendationer ingår i loggen där det är möjligt.
// example of reported root cause analysis of the detected performance issue, in a human-readable format
"rootCauseAnalysis_s" : "High data IO caused performance to degrade. It seems that this database is missing some indexes that could help."
Du kan använda prestandaloggen Intelligent Insights med Azure Monitor-loggar eller en lösning från tredje part för anpassade DevOps-aviserings- och rapporteringsfunktioner.
Nästa steg
- Lär dig mer om Begrepp för Intelligent Insights .
- Lär dig hur du felsöker prestandaproblem med Intelligent Insights.
- Lär dig hur du övervakar prestandaproblem med hjälp av Azure SQL Analytics.
- Lär dig hur du samlar in och använder loggdata från dina Azure-resurser.