Foi decidido que deveríamos usar um banco de dados (MySQL) para nossos logs de aplicativos (é um aplicativo Java usando a lib de logback). Espero encontrar algo assim tail -f
que possa ser usado com uma tabela específica nesse banco de dados que me mostrará novas linhas à medida que forem adicionadas (semelhante à maneira como tail -f
funcionou nos arquivos de log).
12
Não acho que algumas pessoas entendam a pergunta (ou não). Você não deseja registrar as consultas no banco de dados; em vez disso, um log de um aplicativo está entrando em um banco de dados. Se fosse um arquivo, você poderia ajustar o log. Como você adapta uma tabela para que, quando uma nova linha é adicionada, ela seja impressa?
Não deve ser difícil escrever um loop simples para lidar com isso, supondo que você tenha um campo exclusivo que aumente monotonicamente ao longo do tempo (por exemplo, um número de sequência).
fonte
Parece que muitos de nós não entendemos bem sua pergunta. O que você quer dizer com "banco de dados de log" , que não é um termo padrão do MySQL.
Use o MySQL General Query Log , que registra cada instrução recebida de um cliente.
Você pode então definir log_output = TABLE no seu my.cnf. O arquivo será gravado em $ mysql_data_directory / general_log.CSV. Você pode
tail -f
este arquivo para visualizar consultas em tempo real.fonte
Aqui está o que eu uso. Parece a solução mais simples, embora não seja muito eficiente:
watch "mysql db_name -e '(SELECT * FROM my_table ORDER BY id DESC LIMIT 10) ORDER BY id ASC;'"
fonte
Você pode fazer isso de maneira hacky usando tail -f no arquivo de banco de dados (/var/lib/mysql/database_name/table_name.MY*) e executando sua consulta sempre que uma linha for lida.
fonte
Sugiro adicionar um campo de carimbo de data / hora a qualquer tabela que você deseja seguir. Isso permitirá que você obtenha os resultados desejados com muita facilidade com uma simples consulta.
fonte
Você pode tentar:
http://www.jetprofiler.com/blog/10/tail--f-table-with-myterm/#comments
É velho e não foi tocado por 3 anos - mas eu apenas tentei e funciona bem. Clone o repositório BZR e leia o README.
fonte