Použití protokolu diagnostiky Přehledy inteligentních Azure SQL Database a Azure SQL s výkonem spravovaných instancí

PLATÍ PRO: Azure SQL Database spravovaná instance SQL Azure

Tato stránka obsahuje informace o tom, jak používat protokol diagnostiky výkonu generovaný inteligentním Přehledy Azure SQL Database a problémy s výkonem spravované instance Azure SQL, jeho formát a data, která obsahuje pro vaše vlastní potřeby vývoje. Tento protokol diagnostiky můžete odeslat do protokolů Azure Monitoru, Azure Event Hubs, Azure Storagenebo do řešení třetích stran pro vlastní funkce DevOps a vytváření sestav.

Poznámka:

Inteligentní přehledy jsou funkce preview, která není dostupná v následujících oblastech: Západní Evropa, Severní Evropa, Západ USA 1 a Východ USA 1.

Záhlaví protokolu

Protokol diagnostiky používá standardní formát JSON k výstupu inteligentních Přehledy výsledků. Vlastnost přesné kategorie pro přístup k protokolu inteligentních Přehledy je pevná hodnota "SQLInsights".

Záhlaví protokolu je běžné a skládá se z časového razítka (TimeGenerated), které zobrazuje, kdy byla položka vytvořena. Obsahuje také ID zdroje (ResourceId), které odkazuje na konkrétní databázi, ke které se položka vztahuje. Kategorie (Kategorie), úroveň (úroveň) a název operace (Název_operace) jsou pevné vlastnosti, jejichž hodnoty se nemění. Označují, že položka protokolu je informační a že pochází z inteligentního Přehledy (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

Ovlivněné ID problému a databáze

Vlastnost identifikace problému (issueId_d) umožňuje jedinečně sledovat problémy s výkonem, dokud se nevyřeší. Stejné ID problému bude sdílet více záznamů událostí ve stavu protokolování stejného problému.

Spolu s ID problému hlásí protokol diagnostiky časová razítka začátku (intervalStartTime_t) a konce (intervalEndTme_t) konkrétní události související s problémem, který je hlášený v diagnostickém protokolu.

Vlastnost elastického fondu (elasticPoolName_s) označuje, do kterého elastického fondu patří databáze s problémem. Pokud databáze není součástí pružného fondu, nemá tato vlastnost žádnou hodnotu. Databáze, ve které byl zjištěn problém, se zveřejní ve vlastnosti název databáze (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"

Zjištěné problémy

Další část protokolu inteligentního Přehledy obsahuje problémy s výkonem, které byly zjištěny prostřednictvím integrované umělé inteligence. Zjišťování se prozkoumá ve vlastnostech v diagnostickém protokolu JSON. Tato zjišťování se skládají z kategorie problému, dopadu problému, ovlivněných dotazů a metrik. Vlastnosti zjišťování můžou obsahovat několik zjištěných problémů s výkonem.

Zjištěné problémy s výkonem se hlásí s následující strukturou vlastností zjišťování:

"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)
}]

Detekovatelné vzory výkonu a podrobnosti, které se vysílují do protokolu diagnostiky, najdete v následující tabulce.

Kategorie zjišťování

Vlastnost kategorie (kategorie) popisuje kategorii zjistitelných vzorů výkonu. Všechny možné kategorie zjistitelných vzorů výkonu najdete v následující tabulce. Další informace najdete v tématu Řešení problémů s výkonem databáze s inteligentním Přehledy.

V závislosti na zjištěném problému s výkonem se podrobnosti vystupované v souboru protokolu diagnostiky odpovídajícím způsobem liší.

Zjistitelné vzory výkonu Výstup podrobností
Dosažení limitů zdrojů
  • Ovlivněné zdroje
  • Hash dotazů
  • Procento spotřeby zdrojů
  • Zvýšení pracovního vytížení
  • Počet dotazů, jejichž spuštění se zvýšilo
  • Query hashes of queries with the largest contribution to the workload increase
  • Tlak v paměti
  • Paměťová referentka
  • Uzamčení
  • Hash ovlivněných dotazů
  • Blokování hash dotazů
  • Zvýšení MAXDOP
  • Hash dotazů
  • CXP wait times
  • Čekaní čekaní
  • Pagelatch Contention
  • Query hashes of queries causing contention
  • Chybějící index
  • Hash dotazů
  • Nový dotaz
  • Algoritmus hash dotazu nových dotazů
  • Neobvyklá statistika čekání
  • Neobvyklé typy čekání
  • Hash dotazů
  • Čekaní doby dotazu
  • Obsah databáze TempDB
  • Query hashes of queries causing contention
  • Přiřazení dotazu k celkovému čekaní pagelatch databáze [%]
  • Nedostatek DTU v elastickém fondu
  • Elastický fond
  • Top DTU-consuming database
  • Procento fondu DTU používaného nejvyšším spotřebitelem
  • Regrese plánu
  • Hash dotazů
  • Id dobrých tarifů
  • Chybná ID plánu
  • Database-Scoped hodnoty konfigurace
  • Změny konfigurace s rozsahem databáze ve srovnání s výchozími hodnotami
  • Pomalý klient
  • Hash dotazů
  • Čekaní čekaní
  • Snížení úrovně cen
  • Textové oznámení
  • Dopad

    Vlastnost dopad (dopad) popisuje, jak moc zjištěné chování přispělo k problému, který má databáze. Vlivy se pohybují od 1 do 3, 3 jako nejvyšší příspěvek, 2 jako střední a 1 jako nejnižší příspěvek. Hodnota dopadu se může použít jako vstup pro vlastní automatizaci upozornění v závislosti na konkrétních potřebách. Dotazy vlastností, na které se dotaz (QueryHashes) zasaoval, poskytují seznam hodnot hash dotazu, které byly ovlivněny konkrétním zjišťováním.

    Ovlivněné dotazy

    Další část protokolu Inteligentní Přehledy obsahuje informace o konkrétních dotazech, které byly ovlivněny zjištěným výkonem. Tyto informace se uveřejní jako matice objektů vložených do impact_s vlastnost. Vlastnost dopad se skládá z entit a metrik. Entity odkazují na konkrétní dotaz (Typ: Dotaz). Jedinečná hodnota hash dotazu se zveřejní pod vlastností hodnota (Hodnota). Za každým z zveřejněných dotazů navíc následuje metrika a hodnota, která označuje zjištěný problém s výkonem.

    V následujícím příkladu protokolu bylo zjištěno, že dotaz s hodnotou hash 0x9102EXZ4 má delší dobu provádění (Metric: DurationIncreaseSeconds). Hodnota 110 sekund označuje, že spuštění tohoto konkrétního dotazu trvalo o 110 sekund déle. Vzhledem k tomu, že je možné zjistit více dotazů, může tento oddíl protokolu zahrnovat více položek dotazu.

    "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)
    }]
    

    Metriky

    Měrná jednotka pro každou vykazovanou metriku je k dispozici v metrické (metrické) vlastnosti s možnými hodnotami sekund, čísla a procenta. Hodnota měřené metriky se vykádá ve vlastnosti hodnoty (hodnoty).

    Vlastnost DurationIncreaseSeconds poskytuje měrnou jednotku v sekundách. Měrná jednotka CriticalErrorCount je číslo představující počet chyb.

    "metric" : "DurationIncreaseSeconds", // issue metric type – possible values: DurationIncreaseSeconds, CriticalErrorCount, WaitingSeconds
    "value" : 102 // value of the measured metric (in this case seconds)
    

    Doporučení pro analýzu a vylepšení hlavní příčiny

    Poslední část protokolu Přehledy výkonu se týká automatizované analýzy hlavní příčiny identifikované chyby snížení výkonu. Tyto informace se zobrazí v podrobném údaje vhodném pro člověka ve vlastnosti rootCauseAnalysis_s příčin. Doporučení ke zlepšení jsou v protokolu zahrnuta tam, kde je to možné.

    // 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."
    

    Protokol výkonu Inteligentní Přehledy můžete použít s protokoly Azure Monitor nebo s řešením třetích stran pro vlastní funkce DevOps a vytváření sestav.

    Další kroky