Überwachen von Azure SQL-Datenbank mithilfe von Azure SQL-Analyse (Vorschauversion)Monitor Azure SQL Database using Azure SQL Analytics (Preview)

Symbol Azure SQL Analytics

Azure SQL-Analyse ist eine erweiterte Cloudüberwachungslösung zum bedarfsorientierten und abonnementübergreifenden Überwachen der Leistung Ihrer gesamten Azure SQL-Datenbankinstanzen in einer zentralen Ansicht.Azure SQL Analytics is an advanced cloud monitoring solution for monitoring performance of all of your Azure SQL databases at scale and across multiple subscriptions in a single view. Azure SQL-Analyse erfasst und visualisiert wichtige Leistungsmetriken und umfasst integrierte Logik für die Problembehandlung in Bezug auf die Leistung.Azure SQL Analytics collects and visualizes key performance metrics with built-in intelligence for performance troubleshooting.

Indem Sie diese erfassten Metriken verwenden, können Sie benutzerdefinierte Überwachungsregeln und Warnungen erstellen.By using these collected metrics, you can create custom monitoring rules and alerts. Azure SQL-Analyse hilft Ihnen beim Erkennen von Problemen auf jeder Ebene Ihres Anwendungsstapels.Azure SQL Analytics helps you to identify issues at each layer of your application stack. Hierbei werden Azure-Diagnosemetriken zusammen mit Azure Monitor-Ansichten verwendet, um Daten zu Ihren gesamten Azure SQL-Datenbanken in einem zentralen Log Analytics-Arbeitsbereich darzustellen.It uses Azure Diagnostic metrics along with Azure Monitor views to present data about all your Azure SQL databases in a single Log Analytics workspace. Azure Monitor unterstützt Sie beim Erfassen, Korrelieren und Visualisieren strukturierter und nicht strukturierter Daten.Azure Monitor helps you to collect, correlate, and visualize structured and unstructured data.

Einen Überblick über die praktische Verwendung der Azure SQL-Analyse und über typische Verwendungsszenarien finden Sie im eingebetteten Video:For a hands-on overview on using Azure SQL Analytics solution and for typical usage scenarios, see the embedded video:

Verbundene QuellenConnected sources

Azure SQL-Analyse ist eine reine Cloudüberwachungslösung, die das Streaming von Diagnosetelemetriedaten für Ihre gesamten Azure SQL-Datenbanken unterstützt.Azure SQL Analytics is a cloud only monitoring solution supporting streaming of diagnostics telemetry for all of your Azure SQL databases. Da von Azure SQL-Analyse für die Verbindungsherstellung mit Azure Monitor keine Agents verwendet werden, wird die Überwachung von SQL Server (lokal oder auf virtuellen Computern gehostet) nicht unterstützt.Because Azure SQL Analytics does not use agents to connect to Azure Monitor, it does not support monitoring of SQL Server hosted on-premises or in virtual machines.

Verbundene QuelleConnected Source UnterstütztSupported BESCHREIBUNGDescription
DiagnoseeinstellungenDiagnostics settings JaYes Azure-Metrik- und Protokolldaten werden direkt von Azure an Azure Monitor-Protokolle gesendet.Azure metric and log data are sent to Azure Monitor Logs directly by Azure.
Azure-SpeicherkontoAzure storage account NeinNo Azure Monitor liest keine Daten aus einem Speicherkonto.Azure Monitor doesn't read the data from a storage account.
Windows-AgentsWindows agents NeinNo Von Azure SQL-Analyse werden keine direkten Windows-Agents verwendet.Direct Windows agents aren't used by Azure SQL Analytics.
Linux-AgentsLinux agents NeinNo Von Azure SQL-Analyse werden keine direkten Linux-Agents verwendet.Direct Linux agents aren't used by Azure SQL Analytics.
System Center Operations Manager-VerwaltungsgruppeSystem Center Operations Manager management group NeinNo Von Azure SQL-Analyse wird keine direkte Verbindung vom Operations Manager-Agent zu Azure Monitor verwendet.A direct connection from the Operations Manager agent to Azure Monitor is not used by Azure SQL Analytics.

Azure SQL-Analyse – OptionenAzure SQL Analytics options

In der folgenden Tabelle werden unterstützte Optionen für zwei Versionen des Dashboards der Azure SQL-Analyse beschrieben: eine für Azure SQL-Datenbank und die andere für Datenbanken einer verwalteten Azure SQL-Instanz.The below table outlines supported options for two versions of the Azure SQL Analytics dashboard, one for Azure SQL Database, and the other one for Azure SQL Managed Instance databases.

Option für Azure SQL-AnalyseAzure SQL Analytics option BESCHREIBUNGDescription Unterstützung für SQL-DatenbankSQL Database support Unterstützung für verwaltete SQL-InstanzSQL Managed Instance support
Ressource nach TypResource by type Perspektive, die alle überwachten Ressourcen zählt.Perspective that counts all the resources monitored. JaYes JaYes
EinblickeInsights Stellt einen hierarchischen Drilldown in die Leistung in Intelligent Insights bereit.Provides hierarchical drill-down into Intelligent Insights into performance. JaYes JaYes
ErrorsErrors Stellt den hierarchischen Drilldown in SQL-Fehler bereit, die in den Datenbanken aufgetreten sind.Provides hierarchical drill-down into SQL errors that happened on the databases. JaYes JaYes
ZeitlimitsTimeouts Stellt den hierarchischen Drilldown in SQL-Zeitlimits bereit, die in den Datenbanken aufgetreten sind.Provides hierarchical drill-down into SQL timeouts that happened on the databases. JaYes NeinNo
BlockierungenBlockings Stellt den hierarchischen Drilldown in SQL-Blockierungen bereit, die in den Datenbanken aufgetreten sind.Provides hierarchical drill-down into SQL blockings that happened on the databases. JaYes NeinNo
DatenbankwartevorgängeDatabase waits Stellt den hierarchischen Drilldown in SQL-Wartestatistiken auf Datenbankebene bereit.Provides hierarchical drill-down into SQL wait statistics on the database level. Enthält Zusammenfassungen der gesamten Wartezeit sowie die Wartezeit pro Wartetyp.Includes summaries of total waiting time and the waiting time per wait type. JaYes NeinNo
AbfragedauerQuery duration Stellt den hierarchischen Drilldown in die Statistiken zur Abfrageausführung bereit, z.B. Abfragedauer, CPU-Auslastung, Daten-E/A-Auslastung und Protokoll-E/A-Auslastung.Provides hierarchical drill-down into the query execution statistics such as query duration, CPU usage, Data IO usage, Log IO usage. JaYes JaYes
AbfragewartevorgängeQuery waits Stellt den hierarchischen Drilldown in die Statistiken zu Abfragewartevorgängen nach Wartekategorie bereit.Provides hierarchical drill-down into the query wait statistics by wait category. JaYes JaYes

KonfigurationConfiguration

Fügen Sie Azure SQL-Analyse (Vorschau) mithilfe des unter Hinzufügen von Azure Monitor-Lösungen aus dem Lösungskatalog beschriebenen Prozesses Ihrem Log Analytics-Arbeitsbereich hinzu.Use the process described in Add Azure Monitor solutions from the Solutions Gallery to add Azure SQL Analytics (Preview) to your Log Analytics workspace.

Konfigurieren von Azure SQL-Datenbank zum Streamen von DiagnosetelemetriedatenConfigure Azure SQL Database to stream diagnostics telemetry

Nachdem Sie die Azure SQL-Analyse-Lösung in Ihrem Arbeitsbereich erstellt haben, müssen Sie jede Ressource konfigurieren, für die Sie zur Überwachung die zugehörigen Diagnosetelemetriedaten an Azure SQL-Analyse streamen möchten.Once you have created Azure SQL Analytics solution in your workspace, you need to configure each resource that you want to monitor to stream its diagnostics telemetry to Azure SQL Analytics. Befolgen Sie dazu die detaillierten Anweisungen auf dieser Seite:Follow detailed instructions on this page:

Die oben abgebildete Seite enthält auch Anweisungen zum Aktivieren der Unterstützung für die Überwachung mehrerer Azure-Abonnements über einen einzelnen Azure SQL-Analysearbeitsbereich als zentrale Konsole.The above page also provides instructions on enabling support for monitoring multiple Azure subscriptions from a single Azure SQL Analytics workspace as a single pane of glass.

Verwenden von Azure SQL-AnalyseUsing Azure SQL Analytics

Wenn Sie Azure SQL-Analyse Ihrem Arbeitsbereich hinzufügen, wird die Kachel „Azure SQL-Analyse“ Ihrem Arbeitsbereich hinzugefügt und erscheint in der Übersicht.When you add Azure SQL Analytics to your workspace, the Azure SQL Analytics tile is added to your workspace, and it appears in Overview. Klicken Sie auf den Link „Zusammenfassung anzeigen“, um den Kachelinhalt zu laden.Select View Summary link to load the tile content.

Zusammenfassungskachel „Azure SQL Analytics“

Nach dem Laden werden auf der Kachel die Anzahl von Datenbanken und Pools für elastische Datenbanken in SQL-Datenbank sowie Instanzen und Instanzdatenbanken in einer verwalteten SQL-Instanz angezeigt, von denen Diagnosetelemetriedaten für Azure SQL-Analyse empfangen werden.Once loaded, the tile shows the number of databases and elastic pools in SQL Database and instances and instance databases in SQL Managed Instance from which Azure SQL Analytics is receiving diagnostics telemetry.

Kachel „Azure SQL Analytics“

Azure SQL-Analyse bietet zwei separate Ansichten: eine zur Überwachung der SQL-Datenbank und die andere zur Überwachung der verwalteten SQL-Instanz.Azure SQL Analytics provides two separate views -- one for monitoring SQL Database, and the other view for monitoring SQL Managed Instance.

Zum Anzeigen des Überwachungsdashboards der Azure SQL-Analyse für die SQL-Datenbank klicken Sie auf den oberen Bereich der Kachel.To view Azure SQL Analytics monitoring dashboard for SQL Database, click on the upper part of the tile. Zum Anzeigen des Überwachungsdashboards der Azure SQL-Analyse für die verwaltete SQL-Instanz klicken Sie auf den unteren Bereich der Kachel.To view Azure SQL Analytics monitoring dashboard for SQL Managed Instance, click on the lower part of the tile.

Anzeigen von Azure SQL Analytics-DatenViewing Azure SQL Analytics data

Das Dashboard umfasst die Übersicht über alle Datenbanken, die aus verschiedenen Perspektiven überwacht werden.The dashboard includes the overview of all databases that are monitored through different perspectives. Damit verschiedene Perspektiven funktionieren, müssen Sie die richtigen Metriken oder Protokolle auf Ihren SQL-Ressourcen aktivieren, die dann an den Log Analytics-Arbeitsbereich gestreamt werden.For different perspectives to work, you must enable proper metrics or logs on your SQL resources to be streamed to Log Analytics workspace.

Wenn einige Metriken oder Protokolle nicht nach Azure Monitor gestreamt werden, werden die Kacheln in Azure SQL-Analyse nicht mit Überwachungsinformationen gefüllt.If some metrics or logs are not streamed into Azure Monitor, the tiles in Azure SQL Analytics are not populated with monitoring information.

Ansicht der SQL-DatenbankSQL Database view

Nach Auswahl der Kachel „Azure SQL-Analyse“ für die Datenbank wird das Überwachungsdashboard angezeigt.Once the Azure SQL Analytics tile for the database is selected, the monitoring dashboard is shown.

Screenshot des Überwachungsdashboards

Die Auswahl einer Kachel öffnet einen Drilldown-Bericht zur entsprechenden Perspektive.Selecting any of the tiles, opens a drill-down report into the specific perspective. Nach Auswahl der Perspektive wird der Drilldownbericht geöffnet.Once the perspective is selected, the drill-down report is opened.

Screenshot des Drilldownberichts in eine bestimmte Perspektive

Jede Perspektive in dieser Ansicht enthält Zusammenfassungen zu den Ebenen für Abonnement, Server, Pool für elastische Datenbanken und Datenbank.Each perspective in this view provides summaries at the subscription, server, elastic pool, and database levels. Darüber hinaus zeigt jede Perspektive auf der rechten Seite eine Perspektive an, die für den Bericht spezifisch ist.In addition, each perspective shows a perspective specific to the report on the right. Durch die Auswahl eines Abonnements, Servers, Anwendungspools oder einer Datenbank aus der Liste wird der Drilldown fortgesetzt.Selecting subscription, server, pool, or database from the list continues the drill-down.

Ansicht der verwalteten SQL-InstanzSQL Managed Instance view

Nach Auswahl der Kachel „Azure SQL-Analyse“ für die Datenbank wird das Überwachungsdashboard angezeigt.Once the Azure SQL Analytics tile for the databases is selected, the monitoring dashboard is shown.

Azure SQL-Analyse – Übersicht

Die Auswahl einer Kachel öffnet einen Drilldown-Bericht zur entsprechenden Perspektive.Selecting any of the tiles, opens a drill-down report into the specific perspective. Nach Auswahl der Perspektive wird der Drilldownbericht geöffnet.Once the perspective is selected, the drill-down report is opened.

Nach dem Auswählen der Ansicht der verwalteten SQL-Instanz werden Details zur Instanznutzung, Instanzdatenbanken und Telemetriedaten zu den für die gesamte verwaltete Instanz ausgeführten Abfragen angezeigt.Selecting the SQL Managed Instance view, shows details on the instance utilization, instance databases, and telemetry on the queries executed across the managed instance.

Azure SQL-Analyse – Zeitlimits

Intelligent Insights-BerichtIntelligent Insights report

Intelligent Insights von Azure SQL-Datenbank informiert Sie über die Leistung all Ihrer Azure SQL-Datenbanken.Azure SQL Database Intelligent Insights lets you know what is happening with performance of all Azure SQL databases. Alle erfassten Intelligent Insights-Daten können visuell dargestellt und über die Insights Perspektive aufgerufen werden.All Intelligent Insights collected can be visualized and accessed through the Insights perspective.

Azure SQL-Analyse – Insights

Berichte zu Pools für elastische Datenbanken und DatenbankenElastic pools and database reports

Sowohl Pools für elastische Datenbanken als auch Datenbanken verfügen über eigene spezifische Berichte mit allen Daten, die für die Ressource im angegebenen Zeitraum gesammelt werden.Both elastic pools and databases have their own specific reports that show all the data that is collected for the resource in the specified time.

Azure SQL-Analyse –Datenbank

Pool für elastische Azure SQL-Datenbanken

AbfrageberichteQuery reports

Anhand der Perspektive für Abfragedauer und Abfragewartevorgänge können Sie die Leistung von Abfragen über den Abfragebericht korrelieren.Through the query duration and query waits perspectives, you can correlate the performance of any query through the query report. Dieser Bericht vergleicht die Abfrageleistung in verschiedenen Datenbanken und erleichtert das Ermitteln von Datenbanken, die die ausgewählte Abfrage im Vergleich zu langsamen Datenbanken ordnungsgemäß ausführen.This report compares the query performance across different databases and makes it easy to pinpoint databases that perform the selected query well versus ones that are slow.

Azure SQL-Analyse – Abfragen

BerechtigungenPermissions

Für die Verwendung von Azure SQL-Analyse benötigen Benutzer mindestens die Rolle „Leser“ in Azure.To use Azure SQL Analytics, users need to be granted a minimum permission of the Reader role in Azure. Diese Rolle erlaubt es Benutzern jedoch nicht, den Abfragetext anzuzeigen oder automatische Optimierungsaktionen durchzuführen.This role, however, does not allow users to see the query text, or perform any Automatic tuning actions. Rollen mit umfassenderen Berechtigungen in Azure, die eine Nutzung von Azure SQL-Analyse in vollem Umfang ermöglichen, sind „Besitzer“, „Mitwirkender“, „SQL-DB-Mitwirkender“ und „SQL Server-Mitwirkender“.More permissive roles in Azure that allow using Azure SQL Analytics to the fullest extent are Owner, Contributor, SQL DB Contributor, or SQL Server Contributor. Sie sollten auch erwägen, im Portal eine benutzerdefinierte Rolle mit spezifischen Berechtigungen zu erstellen, die nur erforderlich sind, um Azure SQL-Analyse zu verwenden, aber keinen Zugriff auf die Verwaltung anderer Ressourcen bieten.You also might want to consider creating a custom role in the portal with specific permissions required only to use Azure SQL Analytics, and with no access to managing other resources.

Erstellen einer benutzerdefinierten Rolle im PortalCreating a custom role in portal

Hinweis

Dieser Artikel wurde mit der Verwendung des Azure Az PowerShell-Moduls aktualisiert.This article has been updated to use the Azure Az PowerShell module. Das Azure Az PowerShell-Modul wird für die Interaktion mit Azure empfohlen.The Az PowerShell module is the recommended PowerShell module for interacting with Azure. Informationen zu den ersten Schritten mit dem Az PowerShell-Modul finden Sie unter Installieren von Azure PowerShell.To get started with the Az PowerShell module, see Install Azure PowerShell. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.To learn how to migrate to the Az PowerShell module, see Migrate Azure PowerShell from AzureRM to Az.

Da einige Organisationen eine strenge Berechtigungssteuerung in Azure erzwingen, können Sie das folgende PowerShell-Skript verwenden. Es ermöglicht das Erstellen der benutzerdefinierten Rolle „SQL Analytics Monitoring Operator“ im Azure-Portal. Sie umfasst nur die mindestens erforderlichen Lese- und Schreibberechtigungen, um Azure SQL-Analyse in vollem Umfang zu nutzen.Recognizing that some organizations enforce strict permission controls in Azure, find the following PowerShell script enabling creation of a custom role “SQL Analytics Monitoring Operator” in Azure portal with the minimum read and write permissions required to use Azure SQL Analytics to its fullest extent.

Ersetzen Sie „{SubscriptionId}“ im Skript unten durch Ihre Azure-Abonnement-ID, und führen Sie das Skript aus, während Sie mit der Rolle „Besitzer“ oder „Mitwirkender“ in Azure angemeldet sind.Replace the “{SubscriptionId}" in the below script with your Azure subscription ID, and execute the script logged in as an Owner or Contributor role in Azure.

 Connect-AzAccount
 Select-AzSubscription {SubscriptionId}
 $role = Get-AzRoleDefinition -Name Reader
 $role.Name = "SQL Analytics Monitoring Operator"
 $role.Description = "Lets you monitor database performance with Azure SQL Analytics as a reader. Does not allow change of resources."
 $role.IsCustom = $true
 $role.Actions.Add("Microsoft.SQL/servers/databases/read");
 $role.Actions.Add("Microsoft.SQL/servers/databases/topQueries/queryText/*");
 $role.Actions.Add("Microsoft.Sql/servers/databases/advisors/read");
 $role.Actions.Add("Microsoft.Sql/servers/databases/advisors/write");
 $role.Actions.Add("Microsoft.Sql/servers/databases/advisors/recommendedActions/read");
 $role.Actions.Add("Microsoft.Sql/servers/databases/advisors/recommendedActions/write");
 $role.Actions.Add("Microsoft.Sql/servers/databases/automaticTuning/read");
 $role.Actions.Add("Microsoft.Sql/servers/databases/automaticTuning/write");
 $role.Actions.Add("Microsoft.Sql/servers/advisors/read");
 $role.Actions.Add("Microsoft.Sql/servers/advisors/write");
 $role.Actions.Add("Microsoft.Sql/servers/advisors/recommendedActions/read");
 $role.Actions.Add("Microsoft.Sql/servers/advisors/recommendedActions/write");
 $role.Actions.Add("Microsoft.Resources/deployments/write");
 $role.AssignableScopes = "/subscriptions/{SubscriptionId}"
 New-AzRoleDefinition $role

Nachdem die neue Rolle erstellt wurde, weisen Sie sie allen Benutzern zu, denen Sie benutzerdefinierte Berechtigungen zum Verwenden von Azure SQL-Analyse gewähren möchten.Once the new role is created, assign this role to each user that you need to grant custom permissions to use Azure SQL Analytics.

Analysieren von Daten und Erstellen von WarnungenAnalyze data and create alerts

Die Datenanalyse in Azure SQL-Analyse basiert auf der Log Analytics-Sprache für Ihre benutzerdefinierten Abfragen und Berichte.Data analysis in Azure SQL Analytics is based on Log Analytics language for your custom querying and reporting. Eine Beschreibung der von der Datenbankressource für benutzerdefinierte Abfragen gesammelten Daten finden Sie unter Verfügbare Metriken und Protokolle.Find description of the available data collected from database resource for custom querying in metrics and logs available.

Automatisierte Warnungen in Azure SQL-Analyse basieren auf dem Schreiben einer Log Analytics-Abfrage, die eine Warnung auslöst, wenn eine Bedingung erfüllt ist.Automated alerting in Azure SQL Analytics is based on writing a Log Analytics query that triggers an alert upon a condition met. Im Folgenden finden Sie mehrere Beispiele für Log Analytics-Abfragen, für die in Azure SQL-Analyse Warnungen eingerichtet werden können.Find below several examples on Log Analytics queries upon which alerting can be set up in Azure SQL Analytics.

Erstellen von Warnungen für Azure SQL-DatenbankCreating alerts for Azure SQL Database

Sie können problemlos Warnungen mit den Daten erstellen, die aus Azure SQL-Datenbank-Ressourcen stammen.You can easily create alerts with the data coming from Azure SQL Database resources. Im Folgenden finden Sie einige nützliche Protokollabfragen, die Sie mit einer Protokollwarnung verwenden können:Here are some useful log queries that you can use with a log alert:

Hohe CPU-AuslastungHigh CPU

AzureMetrics
| where ResourceProvider=="MICROSOFT.SQL"
| where ResourceId contains "/DATABASES/"
| where MetricName=="cpu_percent"
| summarize AggregatedValue = max(Maximum) by bin(TimeGenerated, 5m)
| render timechart

Hinweis

  • Voraussetzung für die Einrichtung dieser Warnung ist, dass überwachte Datenbanken grundlegende Metriken an Azure SQL-Analyse streamen.Pre-requirement of setting up this alert is that monitored databases stream basic metrics to Azure SQL Analytics.
  • Ersetzen Sie den MetricName-Wert „cpu_percent“ durch „dtu_consumption_percent“ um stattdessen hohe DTU-Ergebnisse zu erhalten.Replace the MetricName value cpu_percent with dtu_consumption_percent to obtain high DTU results instead.

Hohe CPU-Auslastung der Pools für elastische DatenbankenHigh CPU on elastic pools

AzureMetrics
| where ResourceProvider=="MICROSOFT.SQL"
| where ResourceId contains "/ELASTICPOOLS/"
| where MetricName=="cpu_percent"
| summarize AggregatedValue = max(Maximum) by bin(TimeGenerated, 5m)
| render timechart

Hinweis

  • Voraussetzung für die Einrichtung dieser Warnung ist, dass überwachte Datenbanken grundlegende Metriken an Azure SQL-Analyse streamen.Pre-requirement of setting up this alert is that monitored databases stream Basic metrics to Azure SQL Analytics.
  • Ersetzen Sie den MetricName-Wert „cpu_percent“ durch „dtu_consumption_percent“ um stattdessen hohe DTU-Ergebnisse zu erhalten.Replace the MetricName value cpu_percent with dtu_consumption_percent to obtain high DTU results instead.

Speicher im Durchschnitt über 95 % in der letzten StundeStorage in average above 95% in the last 1 hr

let time_range = 1h;
let storage_threshold = 95;
AzureMetrics
| where ResourceId contains "/DATABASES/"
| where MetricName == "storage_percent"
| summarize max_storage = max(Average) by ResourceId, bin(TimeGenerated, time_range)
| where max_storage > storage_threshold
| distinct ResourceId

Hinweis

  • Voraussetzung für die Einrichtung dieser Warnung ist, dass überwachte Datenbanken grundlegende Metriken an Azure SQL-Analyse streamen.Pre-requirement of setting up this alert is that monitored databases stream basic metrics to Azure SQL Analytics.
  • Diese Abfrage erfordert die Einrichtung einer Warnungsregel, die eine Warnung auslöst, wenn Ergebnisse (> 0 Ergebnisse) von der Abfrage vorhanden sind, die angeben, dass die Bedingung in einigen Datenbanken vorhanden ist.This query requires an alert rule to be set up to fire off an alert when there exist results (> 0 results) from the query, denoting that the condition exists on some databases. Die Ausgabe ist eine Liste von Datenbankressourcen, die im definierten Zeitbereich den Speicherschwellenwert überschreiten.The output is a list of database resources that are above the storage_threshold within the time_range defined.
  • Die Ausgabe ist eine Liste von Datenbankressourcen, die im definierten Zeitbereich den Speicherschwellenwert überschreiten.The output is a list of database resources that are above the storage_threshold within the time_range defined.

Warnung in Intelligent InsightsAlert on Intelligent insights

Wichtig

Wenn die Leistung einer Datenbank zufriedenstellend war und keine Intelligent Insights-Ergebnisse erzeugt werden konnten, wird für diese Abfrage folgende Fehlermeldung zurückgegeben: „Failed to resolve scalar expression named 'rootCauseAnalysis_s'“ (Der Skalarausdruck namens „rootCauseAnalysis_s“ konnte nicht aufgelöst werden).In case a database is performing well, and that no Intelligent Insights have been generated, this query will fail with an error message: Failed to resolve scalar expression named 'rootCauseAnalysis_s'. Dieses Verhalten ist für alle Fälle zu erwarten, in denen keine Intelligent Insights-Ergebnisse für die Datenbank vorhanden sind.This behavior is expected for all cases where there exist no intelligent insights for the database.

let alert_run_interval = 1h;
let insights_string = "hitting its CPU limits";
AzureDiagnostics
| where Category == "SQLInsights" and status_s == "Active"
| where TimeGenerated > ago(alert_run_interval)
| where rootCauseAnalysis_s contains insights_string
| distinct ResourceId

Hinweis

  • Voraussetzung für die Einrichtung dieser Warnung ist, dass überwachte Datenbanken ein SQLInsights-Diagnoseprotokoll an Azure SQL-Analyse streamen.Pre-requirement of setting up this alert is that monitored databases stream SQLInsights diagnostics log to Azure SQL Analytics.
  • Diese Abfrage erfordert die Einrichtung einer Warnungsregel, die mit der gleichen Häufigkeit wie „alert_run_interval“ ausgeführt wird, um Duplikate zu vermeiden.This query requires an alert rule to be set up to run with the same frequency as alert_run_interval in order to avoid duplicate results. Die Regel muss für das Auslösen der Warnung eingerichtet werden, wenn Ergebnisse (> 0 Ergebnisse) von der Abfrage vorhanden sind.The rule should be set up to fire off the alert when there exist results (> 0 results) from the query.
  • Passen Sie den Wert „alert_run_interval“ an, um den Zeitbereich festzulegen, für den überprüft wird, ob die Bedingung in Datenbanken aufgetreten ist, die zum Streamen des SQLInsights-Protokolls an Azure SQL-Analyse konfiguriert sind.Customize the alert_run_interval to specify the time range to check if the condition has occurred on databases configured to stream SQLInsights log to Azure SQL Analytics.
  • Passen Sie „insights_string“ so an, dass die Ausgabe des Texts der Insights-Analyse der Grundursache erfasst wird.Customize the insights_string to capture the output of the Insights root cause analysis text. Der gleiche Text wird auf der Azure SQL-Analyse-Benutzeroberfläche angezeigt, die sie über die vorhandenen Einblicke nutzen können.This is the same text displayed in the UI of Azure SQL Analytics that you can use from the existing insights. Alternativ können Sie die folgende Abfrage verwenden, um den Text aller in Ihrem Abonnement generierten Einblicke anzuzeigen.Alternatively, you can use the query below to see the text of all Insights generated on your subscription. Verwenden Sie die Ausgabe der Abfrage, um die unterschiedlichen Zeichenfolgen für die Einrichtung von Warnungen für Insights zu nutzen.Use the output of the query to harvest the distinct strings for setting up alerts on Insights.
AzureDiagnostics
| where Category == "SQLInsights" and status_s == "Active"
| distinct rootCauseAnalysis_s

Erstellen von Warnungen für verwaltete SQL-InstanzCreating alerts for SQL Managed Instance

Speicher liegt über 90 %Storage is above 90%

let storage_percentage_threshold = 90;
AzureDiagnostics
| where Category =="ResourceUsageStats"
| summarize (TimeGenerated, calculated_storage_percentage) = arg_max(TimeGenerated, todouble(storage_space_used_mb_s) *100 / todouble (reserved_storage_mb_s))
   by ResourceId
| where calculated_storage_percentage > storage_percentage_threshold

Hinweis

  • Voraussetzung für die Einrichtung dieser Warnung ist, dass für die überwachte verwaltete Instanz das Streaming des ResourceUsageStats-Protokolls an Azure SQL-Analyse aktiviert ist.Pre-requirement of setting up this alert is that the monitored managed instance has the streaming of ResourceUsageStats log enabled to Azure SQL Analytics.
  • Diese Abfrage erfordert die Einrichtung einer Warnungsregel, die eine Warnung auslöst, wenn Ergebnisse (> 0 Ergebnisse) für die Abfrage vorhanden sind, die angeben, dass die Bedingung auf der verwalteten Instanz vorhanden ist.This query requires an alert rule to be set up to fire off an alert when there exist results (> 0 results) from the query, denoting that the condition exists on the managed instance. Die Ausgabe ist der prozentuale Speicherverbrauch auf der verwalteten Instanz.The output is storage percentage consumption on the managed instance.

Durchschnittliche CPU-Auslastung über 95 % in der letzten StundeCPU average consumption is above 95% in the last 1 hr

let cpu_percentage_threshold = 95;
let time_threshold = ago(1h);
AzureDiagnostics
| where Category == "ResourceUsageStats" and TimeGenerated > time_threshold
| summarize avg_cpu = max(todouble(avg_cpu_percent_s)) by ResourceId
| where avg_cpu > cpu_percentage_threshold

Hinweis

  • Voraussetzung für die Einrichtung dieser Warnung ist, dass für die überwachte verwaltete Instanz das Streaming des ResourceUsageStats-Protokolls an Azure SQL-Analyse aktiviert ist.Pre-requirement of setting up this alert is that the monitored managed instance has the streaming of ResourceUsageStats log enabled to Azure SQL Analytics.
  • Diese Abfrage erfordert die Einrichtung einer Warnungsregel, die eine Warnung auslöst, wenn Ergebnisse (> 0 Ergebnisse) für die Abfrage vorhanden sind, die angeben, dass die Bedingung auf der verwalteten Instanz vorhanden ist.This query requires an alert rule to be set up to fire off an alert when there exist results (> 0 results) from the query, denoting that the condition exists on the managed instance. Die Ausgabe ist die durchschnittliche CPU-Auslastung der verwalteten Instanz im definierten Zeitraum in Prozent.The output is average CPU utilization percentage consumption in defined period on the managed instance.

PreisePricing

Obwohl Azure SQL-Analyse kostenlos verwendet werden kann, fallen für die Nutzung von Diagnosetelemetriedaten über die kostenlosen Einheiten hinaus, die für die Datenerfassung jeden Monat zugeteilt werden, Gebühren an. Weitere Informationen finden Sie unter Log Analytics – Preise.While Azure SQL Analytics is free to use, consumption of diagnostics telemetry above the free units of data ingestion allocated each month applies, see Log Analytics pricing. Die kostenlosen Einheiten der bereitgestellten Datenerfassung ermöglichen die kostenlose Überwachung von mehreren Datenbanken pro Monat.The free units of data ingestion provided enable free monitoring of several databases each month. Bei einer größeren Anzahl aktiver Datenbanken mit umfangreicheren Workloads können mehr Daten als bei Datenbanken im Leerlauf erfasst werden.More active databases with heavier workloads ingest more data versus idle databases. Sie können problemlos Ihre Datenerfassungsnutzung in Azure SQL-Analyse überwachen, indem Sie den OMS-Arbeitsbereich im Navigationsmenü von Azure SQL-Analyse und dann „Nutzungs- und geschätzte Kosten“ auswählen.You can easily monitor your data ingestion consumption in Azure SQL Analytics by selecting OMS Workspace on the navigation menu of Azure SQL Analytics, and then selecting Usage and Estimated Costs.

Nächste SchritteNext steps