Для отладки веб-приложения и запросов mysql я включил журнал запросов mysql. Однако это не очень хороший формат для отслеживания и grep. В идеале я хотел бы иметь возможность показывать только запросы от определенного пользователя или запросы к определенной базе данных. Если бы журнал запросов mysql печатал базу данных или пользователя в каждой строке, то я мог бы выполнить grep. Иногда я хочу посмотреть, что произошло в определенную дату, но поскольку журнал запросов mysql не печатает дату и время в каждой строке, это сложнее.
Есть ли способ сделать журнал запросов MySQL более удобным для tail/grep и т. д.?
решение1
Вероятно, вам следует использовать mk-query-digest — это невероятно мощный инструмент.
решение2
То, что вы пытаетесь сделать, регистрировать запросы для одного пользователя, может быть проще сделать черезпрокси-сервер mysql. По сути, это служба, которая может находиться между сервером mysql и клиентом(ами). Существует множество примеров кода о том, как регистрировать или обрабатывать данные на основе установленных вами критериев.
В любом случае, я не знаю никаких инструментов, чтобы сделать это. Что вам может понадобиться, так это найти библиотеку парсера логов mysql и написать скрипт, который использует библиотеку и извлекает нужные вам данные.