drmcarvalho / PyQueryMonitor

Ferramento para monitoramento de consultas lentas em SQL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PyQueryMonitor

Ferramento para monitoramento de consultas lentas em SQL

Atualmente só possue suporte para MySQL, futuramente sera adicionado para outros SGBDs

Instalação

Clone o repositório para sua maquina:

git clone https://github.com/drmcarvalho/PyQueryMonitor.git

Acesse o diretorio do repositorio clonado:

cd PyQueryMonitor

Crie e ative seu ambiente virtual (virtualenv) e em seguida instale as depedencias executando o seguinte comando:

pip install -r requirements.txt

Após ter seguido esses passos a ferramenta vai estar pronta para uso.


Executando

Para executar o PyQueryMonitor você pode começar vendo as opções disponivel executando o seguinte comando:

python app.py --help

Opções:

usage: app.py [-h] [--host HOST] [--user USER] [--password PASSWORD]
              [--port PORT] [--time TIME] [--interval INTERVAL]
              [--discord DISCORD] [--channel CHANNEL] [--token TOKEN]

PyQueryMonitor ferramenta para monitoramento de consultas SQL

optional arguments:
  -h, --help           show this help message and exit
  --host HOST          Endereço do servidor de banco de dados e o valor padrão
                       é o localhost.
  --user USER          Usuário que vai utilizar para fazer o monitoramento,
                       sendo o valor padrão root.
  --password PASSWORD  Senha do banco de dados.
  --port PORT          Porta utilizada para se conectar no banco, padrão 3306.
  --time TIME          Especifica o tempo que a query esta executando para que
                       ela possa ser capturada pelo monitor.
  --interval INTERVAL  O intervalo que o monitor vai executar para obter os
                       processos das consultas que estão demorando. Exemplo:
                       se definir 5 segundos, ele vai verificar os processos
                       das consultadas a cada 5 segundos.
  --discord DISCORD    Opção para determinar se vai usar o Discord como log.
  --channel CHANNEL    Id do webhook do Discord.
  --token TOKEN        Token do canal do webhook do Discord.

Iniciando um monitoramento

Vamos começar com um monitoramento basico:

python app.py --user root --password minha_senha

Você também pode especificar servidores remotos utilizando a opção host para monitorar. Segue um exemplo de saída:

Process id: 12345678
User: user
Host: 127.0.0.1:0000
DB: database
Time: 10
State: Sending data
Info:
SELECT conteudo FROM posts WHERE autor like '%fulano%'

A ferramenta possui integração com webhook do Discord.

About

Ferramento para monitoramento de consultas lentas em SQL

License:MIT License


Languages

Language:Python 100.0%