[recovery mode] Beaver mysql logger или как найти ошибку в MySql приложении

Здравствуй Хабр! Периодически возникает необходимость отследить запросы, которые отправляет Ваше приложение к базе данных. К примеру: — Вам нужно отладить/доработать чужой код— Запросы генерируются с помощью сторонней библиотеки (к примеру ActiveRecord), не понятно, какие именно и сколько их.— Нужно оптимизировать приложение: посмотреть какие запросы и сколько их, посмотреть explain этих запросов.

На помощь приходит Beaver mysql logger!

Для отслеживания запросов достаточно mysql консоли, включить set global general_log = 'on'; и set global log_output = 'table'; и просматривать логи в таблице general_log, но это не удобно: — отсутствие форматирования и подсветки— если параллельно выполняется несколько потоков — визуально сложнее найти искомый запросetc

Поскольку в general_log мне приходилось заглядывать часто, а готовых инструментов я не нашел — я написал Beaver mysql logger.Демо.На демо сайте explain и выполнение ограничены одним запросом в целях безопасности (всегда будет выполняться запрос по умолчанию, независимо от того, какой Вы запрос выбрали).

2e677c602a8f5f0bf1abd3164a016e98.png

Что умеет: — включать/отключать general_log— выводить лог в приятный Web интерфейс— поиск по логам— делать explain запросов— можно отредактировать и выполнить запрос— очищать general_log

Скачать можно отсюда: Сайт проекта

При обнаружении багов — просьба сообщить. Спасибо!

© Habrahabr.ru