Получить инструкцию SQL из ошибки категории в Azure Log Analytics

#sql #azure-log-analytics

#sql #azure-log-analytics

Вопрос:

Я новичок в Log Analytics, и хотя я могу обнаружить, что происходят ошибки SQL, я могу их подсчитать, сгруппировать и т. Д. Я не вижу в документации, как добраться до инструкции SQL, вызывающей их.

В настоящее время у меня есть приведенное ниже, и я ожидал расширения и проекта, но все столбцы *_s пусты.

 AzureDiagnostics 
| where Category == "Errors" and error_number_d  == 241
 

Что мне нужно сделать, чтобы добраться до проблемного SQL?

Большое спасибо всем.

Комментарии:

1. вы имеете в виду получить подробную инструкцию sql, например select * from mytable ?

2. это тот самый. просто у меня в голове не укладывается это.

Ответ №1:

Для этого необходимо включить диагностику. Для получения подробной информации ЛУЧШЕ использовать AZURE SQL DB И LOG ANALYTICS ВМЕСТЕ. Инструкции SQL можно найти в statement_s столбце. Например:

 //Detailed errors
AzureDiagnostics
| where TimeGenerated >= ago(15d)  //Last 15 days
| where Category =~ "SQLSecurityAuditEvents"
| where succeeded_s == "false"
| where additional_information_s contains "8134" //Looking for specift error. Ex Div by zero
| extend additional_information_xml=parse_xml(additional_information_s)
| extend failure_reason=additional_information_xml.batch_information.failure_reason
| project    
    ResourceGroup,
    LogicalServerName_s,
    database_name_s,
    session_id_d,
    action_name_s,
    client_ip_s,
    application_name_s,
    failure_reason,
    statement_s,
    additional_information_s
 

Для этого вы также можете добавить Azure SQL Analytics (предварительный просмотр) в рабочую область Log Analytics. После настройки отображается панель мониторинга.
Скриншот, показывающий панель мониторинга.

При выборе любого из листов открывается детализированный отчет с определенной перспективой. После выбора перспективы открывается детализированный отчет.