сессия Extended Events по-умолчанию (system_health)

Административные скрипты MS SQL > сессия Extended Events по-умолчанию (system_health)
18.02.2019 11:53:41



Статья:

ИЗ BOL можно узнать, что она собирает:

  • Ошибки со срочностью >= 20
  • Ошибки, относящиеся к памяти (17803, 701, 802, 8645, 8651, 8657 и 8902)
  • Дедлоки
  • Сессии, которые ожидали блокировки более 30 секунд
  • Ошибки CLR allocation & virtual allocation
  • и тд.

Наиболее полезные события, это ошибки, дедлоки и ожидания блокировок. Обратите внимание, что system_health возвращает иную информацию, нежели трасса по-умолчанию.

Первое место хранения находится на файловой системе и файлы имеют названия типа system_heals*.xel, обратите внимание, что подобных файлов обычно несколько, за исключением моментов, когда SQL Server был совсем недавно установлен, хранятся они примерно по следующему пути C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log. Второе место хранения находится ориентировочно по пути Program Files\Microsoft SQL Server\130\Setup Bootstrap\Log\, здесь файлы так же имеют название типа system_health*.xel, но длина названия значительно больше.

Сессия Extended Events по-умолчанию (system_health) собирает очень полезные события о работе вашего SQL Server, в моей практике она не раз помогала понять причины проблем или хотя бы направляла в нужную сторону. Самое ценное в system_health то, что она работает «из коробки» и позволит получить некоторую информацию из прошлого, даже если никакого мониторинга настроено не было.