Um log de consulta MySQL mais útil, adequado para tail -f'ing

Um log de consulta MySQL mais útil, adequado para tail -f'ing

Para depurar consultas webapp e mysql, habilitei o log de consulta mysql. No entanto, não é um formato muito bom para seguir e percorrer. Idealmente, eu gostaria de poder mostrar apenas consultas de um determinado usuário ou consultas de um determinado banco de dados. Se o log de consulta do MySQL imprimisse o banco de dados ou o usuário em cada linha, eu poderia fazer o grep. Às vezes eu quero ver o que aconteceu em uma determinada data, mas como o log de consulta do MySQL não imprime a data e hora em cada linha, isso é mais difícil.

Existe alguma maneira de tornar o log de consulta do mysql mais agradável para seguir/grep/etc?

Responder1

Você provavelmente deveria usar mk-query-digest - é incrivelmente poderoso.

http://www.maatkit.org/doc/mk-query-digest.html

Responder2

O que você está tentando fazer, registrar consultas para um único usuário, pode ser mais fácil de realizar por meio doproxy mysql. Basicamente, é um serviço que pode ficar entre o servidor MySQL e o(s) cliente(s). Existem muitos exemplos de código sobre como registrar ou manipular dados com base nos critérios definidos.

De qualquer forma, não conheço nenhuma ferramenta para fazer isso. O que você pode precisar fazer é encontrar uma biblioteca de analisador de log mysql e escrever um script que use a biblioteca e extraia os dados desejados.

informação relacionada