Korzystanie z dziennika diagnostyki wydajności usługi Intelligent Insights problemów z wydajnością usług Azure SQL Database i Azure SQL Managed Instance
Dotyczy: Azure SQL Database
Azure SQL Managed Instance
Ta strona zawiera informacje na temat używania dziennika diagnostyki wydajności wygenerowanego przez usługę Intelligent Insights problemów z wydajnością usługi Azure SQL Database i usługi Azure SQL Managed Instance, jego formatu i danych, które zawiera w ramach niestandardowych potrzeb programistycznych. Ten dziennik diagnostyczny można wysłać do dzienników usługi Azure Monitor, usługi Azure Event Hubs, usługi Azure Storage lub rozwiązania innej firmy w celu uzyskania niestandardowych możliwości alertów i raportowania usługi DevOps.
Uwaga
Inteligentne szczegółowe informacje to funkcja w wersji zapoznawczej, niedostępna w następujących regionach: Europa Zachodnia, Europa Północna, Zachodnie stany USA 1 i Wschodnie stany USA 1.
Nagłówek dziennika
Dziennik diagnostyczny używa standardowego formatu JSON do wyprowadzania wyników funkcji Intelligent Insights. Dokładna właściwość kategorii na potrzeby uzyskiwania dostępu do dziennika usługi Intelligent Insights to stała wartość "SQLInsights", niepowiązana z monitorowaniem usługi Azure SQL Database za pomocą usługi Azure Monitor SQL Insights (wersja zapoznawcza).
Nagłówek dziennika jest wspólny i składa się z sygnatury czasowej (TimeGenerated), która pokazuje, kiedy wpis został utworzony. Zawiera również identyfikator zasobu (ResourceId), który odwołuje się do konkretnej bazy danych, z którą odnosi się wpis. Kategoria (Kategoria), poziom (poziom) i nazwa operacji (OperationName) są stałymi właściwościami, których wartości nie zmieniają się. Wskazują one, że wpis dziennika jest informacyjny i pochodzi z usługi 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
Identyfikator problemu i baza danych, których dotyczy problem
Właściwość identyfikacji problemu (issueId_d) umożliwia unikatowe śledzenie problemów z wydajnością do momentu rozwiązania problemu. Wiele rekordów zdarzeń w stanie raportowania dziennika tego samego problemu będzie współużytkować ten sam identyfikator problemu.
Wraz z identyfikatorem problemu dziennik diagnostyki zgłasza znaczniki czasowe rozpoczęcia (intervalStartTime_t) i zakończenia (intervalEndTme_t) określonego zdarzenia związanego z problemem zgłoszonym w dzienniku diagnostycznym.
Właściwość elastycznej puli (elasticPoolName_s) wskazuje, do której elastycznej puli należy baza danych z problemem. Jeśli baza danych nie jest częścią puli elastycznej, ta właściwość nie ma wartości. Baza danych, w której wykryto problem, jest ujawniana we właściwości nazwa bazy danych (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"
Wykryte problemy
W następnej sekcji dziennika wydajności funkcji Intelligent Insights znajdują się problemy z wydajnością wykryte za pomocą wbudowanej sztucznej inteligencji. Wykrycia są ujawniane we właściwościach w dzienniku diagnostycznym JSON. Te wykrycia składają się z kategorii problemu, wpływu problemu, zapytań, których dotyczy problem, i metryk. Właściwości wykrywania mogą zawierać wiele wykrytych problemów z wydajnością.
Wykryte problemy z wydajnością są zgłaszane z następującą strukturą właściwości wykrywania:
"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)
}]
Wykrywalne wzorce wydajności i szczegółowe informacje wyjściowe w dzienniku diagnostycznym znajdują się w poniższej tabeli.
Kategoria wykrywania
Właściwość category (category) opisuje kategorię wykrywalnych wzorców wydajności. Poniższa tabela zawiera wszystkie możliwe kategorie wykrywalnych wzorców wydajności. Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z wydajnością bazy danych w usłudze Intelligent Insights.
W zależności od wykrytego problemu z wydajnością szczegóły wyjściowe w pliku dziennika diagnostyki różnią się odpowiednio.
Wykrywalne wzorce wydajności | Szczegóły wyjściowe |
---|---|
Osiąganie limitów zasobów | |
Zwiększanie obciążenia | |
Wykorzystanie pamięci | |
Blokowanie | |
Zwiększona wartość MAXDOP | |
Rywalizacja o strony | |
Brak indeksu | |
Nowe zapytanie | |
Statystyka nietypowego oczekiwania | |
tempdb Spór |
|
Niedobór jednostek DTU puli elastycznej | |
Regresja planu | |
Zmiana wartości konfiguracji w zakresie bazy danych | |
Powolny klient | |
Obniżanie warstwy cenowej |
Wpływ
Właściwość impact (impact) opisuje, ile wykryte zachowanie przyczyniło się do problemu, jaki ma baza danych. Wpływ waha się od 1 do 3, z 3 jako najwyższy wkład, 2 jako umiarkowany i 1 jako najniższy wkład. Wartość wpływu może być używana jako dane wejściowe dla niestandardowej automatyzacji alertów, w zależności od konkretnych potrzeb. Zapytania dotyczące właściwości (QueryHashes) zawierają listę skrótów zapytania, których dotyczy określone wykrywanie.
Zapytania, których to dotyczy
W następnej sekcji dziennika usługi Intelligent Insights znajdują się informacje o konkretnych zapytaniach, których dotyczyły wykryte problemy z wydajnością. Te informacje są ujawniane jako tablica obiektów osadzonych we właściwości impact_s. Właściwość impact składa się z jednostek i metryk. Jednostki odwołują się do określonego zapytania (typ: zapytanie). Unikatowy skrót zapytania jest ujawniany w ramach właściwości value (Value). Ponadto po każdej ujawnionej zapytaniu następuje metryka i wartość wskazująca wykryty problem z wydajnością.
W poniższym przykładzie dziennika wykryto, że zapytanie o skrót 0x9102EXZ4 miało zwiększony czas wykonywania (Metryka: DurationIncreaseSeconds). Wartość 110 sekund wskazuje, że wykonanie tego konkretnego zapytania trwało 110 sekund. Ponieważ można wykryć wiele zapytań, ta konkretna sekcja dziennika może zawierać wiele wpisów zapytania.
"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)
}]
Metryki
Jednostka miary dla każdej zgłoszonej metryki jest udostępniana we właściwości metryki (metryki) z możliwymi wartościami sekund, liczbą i wartościami procentowymi. Wartość mierzonej metryki jest zgłaszana we właściwości value (value).
Właściwość DurationIncreaseSeconds udostępnia jednostkę miary w sekundach. Jednostka CriticalErrorCount miary to liczba reprezentująca liczbę błędów.
"metric" : "DurationIncreaseSeconds", // issue metric type – possible values: DurationIncreaseSeconds, CriticalErrorCount, WaitingSeconds
"value" : 102 // value of the measured metric (in this case seconds)
Zalecenia dotyczące analizy głównej przyczyny i ulepszania
Ostatnia część dziennika wydajności usługi Intelligent Insights dotyczy zautomatyzowanej analizy głównej przyczyny zidentyfikowanego problemu z obniżeniem wydajności. Informacje są wyświetlane we właściwości analizy głównej przyczyny (rootCauseAnalysis_s). Zalecenia dotyczące poprawy są uwzględniane w dzienniku, jeśli jest to możliwe.
// 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."
Dziennik wydajności usługi Intelligent Insights można używać z dziennikami usługi Azure Monitor lub rozwiązaniem innej firmy na potrzeby niestandardowych funkcji alertów i raportowania metodyki DevOps.
Następne kroki
- Dowiedz się więcej o pojęciach związanych z usługą Intelligent Insights .
- Dowiedz się, jak rozwiązywać problemy z wydajnością za pomocą funkcji Intelligent Insights.
- Dowiedz się, jak monitorować problemy z wydajnością przy użyciu usługi Azure SQL Analytics.
- Dowiedz się, jak zbierać i wykorzystywać dane dziennika z zasobów platformy Azure.