Nginx e Apache registra monitoramento com o GoAccess

Monitore e analise os logs do servidor da Web com o analisador de logs em tempo real de código aberto – GoAccess


A solução de problemas na Web é divertida e pode ser frustrante se você não estiver equipado com as ferramentas certas.

Se você oferece suporte a sites de tráfego intenso, geralmente precisa analisar e monitorar os logs dos servidores da Web para obter desempenho & planejamento de capacidade. Isso é essencial para o engenheiro da web.

Verificar manualmente um tamanho menor de log é bom, mas se você tiver um arquivo grande, não seria divertido percorrer milhões de linhas para encontrar as métricas.

É por isso que você precisa de ferramentas para facilitar o trabalho do administrador e torná-lo mais produtivo.

GoAccess é um analisador de log de código aberto leve que suporta vários formatos de log e pode ser usado com qualquer um dos seguintes.

  • Nginx
  • HTTP Apache
  • AWS ELB, S3, CloudFront
  • Armazenamento na nuvem do Google

Quais métricas você pode analisar com o GoAccess?

Quase tudo o que você captura nos logs. Para lhe dar uma ideia:

  • O tempo necessário para atender à solicitação
  • IP do visitante, DNS, host
  • Navegador do visitante & Detalhes do sistema operacional
  • 404 não encontrados detalhes
  • Principais solicitações / visitante
  • Largura de banda
  • Arquivos estáticos
  • Localização geográfica
  • Código de status
  • e mais..

Procurando essas métricas a serem monitoradas do seu site?

Boa!

Em qual sistema operacional você pode instalar?

O GoAccess possui apenas uma dependência – ncurses. Se você pode instalar, você pode usá-lo em qualquer SO.

Está disponível no pacote de distribuição para:

  • Ubuntu
  • Debian
  • Fedora
  • CentOS
  • FreeBSD / OpenBSD
  • Slackware
  • Arch Linux
  • Gentoo
  • Mac OS
  • Windows através do Cygwin

No entanto, você também pode criar a partir da fonte ou usar com o Docker.

Se você é novo no Docker, recomendo que você faça isso Curso de domínio do Docker.

Instalando o GoAccess no Ubuntu

  • Entre no servidor Ubuntu com o privilégio de root
  • Use o apt-get para instalar como abaixo

apt-get install goaccess

Fácil.

Instalando no CentOS

Efetue login no servidor e execute o yumcommand

yum instalar goaccess

Instalando usando o Source no CentOS / Ubuntu

Amor compilando da fonte?

Aqui estão os passos.

  • Instale as seguintes dependências se estiver usando CentOS

yum instalar gcc ncurses-devel glib2-devel geoip-devel tokyocabinet-devel

  • Se estiver usando Ubuntu

apt-get install libncursesw5-dev libgeoip-dev make

  • Baixe o pacote mais recente usando o wget

wget http://tar.goaccess.io/goaccess-1.2.tar.gz

  • Extraia o arquivo baixado

gunzip –c goaccess-1.2.tar.gz | tar xvf –

  • Vá para a pasta recém-criada, que você obteve após a extração

cd goaccess-1.2

  • Compile com o comando abaixo

./ configure –enable-geoip = legado –enable-utf8
faço
faça instalar

Bem feito, você instalou o GoAccess e tudo pronto para analisar os logs.

Verificar instalação

Uma vez instalado, basta executar o goaccess no prompt de comando e ele deve imprimir o uso como abaixo.

[[protegido por email] goaccess-1.2] # goaccess
GoAccess – 1.2
Uso: goaccess [nome do arquivo] [opções …] [-c] [- M] [- H] [- q] [- d] […]
As seguintes opções também podem ser fornecidas ao comando:
Registro & Opções de formato de data
  –date-format = – Especifique o formato da data do log. por exemplo,% d /% b /% Y
  –log-format = – Especifique o formato do log. As cotações internas precisam ser
                                    escapou ou use aspas simples.
  –time-format = – Especifique o formato da hora do log. por exemplo,% H:% M:% S
Opções da interface do usuário
  -c –config-dialog – Janela de prompt de log / data / hora.
  -i –hl-header – Painel ativo de destaque de cores.
  -m –with-mouse – Ative o suporte ao mouse no painel principal.
  –color = – Especifique cores personalizadas. Veja a página de manual para mais
                                    detalhes e opções.
  –esquema de cores =<1 | 2 | 3>          – Esquemas: 1 => Cinza, 2 => Verde, 3 => Monokai.
  –html-custom-css = – Especifique um arquivo CSS personalizado no relatório HTML.
  –html-custom-js = – Especifique um arquivo JS customizado no relatório HTML.
  –html-prefs = – Defina as preferências padrão do relatório HTML.
  –html-report-title = – Defina o título e o cabeçalho da página de relatório HTML.
  –json-pretty-print – Formata saída JSON com guias & novas linhas.
  –max-items – Número máximo de itens a serem exibidos por painel.
                                    Veja a página de manual para limites.
  –sem cor – Desativar saída colorida.
  –no-column-names – Não escreva nomes de colunas na saída do termo.
  –no-csv-summary – Desative as métricas de resumo na saída CSV.
  –no-progress – Desative métricas de progresso.
  –no-tab-scroll – Desativa a rolagem pelos painéis na guia TAB.
  –no-html-last-updated – Ocultar campo da última atualização em HTML.
Opções do servidor
  –addr = – Especifique o endereço IP ao qual ligar o servidor.
  –daemonize – Executar como daemon (se –real-time-html ativado).
  –fifo-in = – Caminho para ler o pipe nomeado (FIFO).
  –fifo-out = – Caminho para escrever pipe nomeado (FIFO).
  –origin = – Garanta que os clientes enviem o cabeçalho de origem especificado
                                    no handshake do WebSocket.
  –port = – Especifique a porta a ser usada.
  –real-time-html – Ativa a saída HTML em tempo real.
  –ssl-cert = – Caminho para o certificado TLS / SSL.
  –ssl-key = – Caminho para a chave privada TLS / SSL.
  –ws-url = – URL ao qual o servidor WebSocket responde.
Opções de arquivo
  –                               – O arquivo de log a ser analisado é lido a partir de stdin.
  -f –log-file = – Caminho para o arquivo de log de entrada.
  -l –debug-file = – Envia todas as mensagens de depuração para o especificado
                                    Arquivo.
  -p –config-file = – Arquivo de configuração customizado.
  –invalid-orders = – Registra solicitações inválidas no arquivo especificado.
  –no-global-config – Não carrega o arquivo de configuração global.
Opções de análise
  -a –agent-list – Ativa uma lista de user-agents pelo host.
  -d –with-output-resolver – Ativar resolvedor de IP na saída HTML | JSON.
  -e –exclude-ip = – Exclui um ou vários IPv4 / 6. Permite IP
                                    varia por exemplo 192.168.0.1-192.168.0.10
  -H –http-protocol = – Define / desmarca o protocolo de solicitação HTTP, se encontrado.
  -M –http-method = – Defina / anule o método de solicitação HTTP, se encontrado.
  -o –output = file.html | json | csv – gera um arquivo HTML, JSON ou CSV.
  -q –no-query-string – Ignora a string de consulta da solicitação. Removendo o
                                    a string de consulta pode diminuir bastante a memória
                                    consumo.
  -r –no-term-resolver – Desativa o resolvedor IP na saída do terminal.
  –444-as-404 – Trate o código de status não padrão 444 como 404.
  –4xx-to-unique-count – adicione erros de cliente 4xx aos visitantes únicos
                                    contagem.
  –all-static-files – inclui arquivos estáticos com uma string de consulta.
  –somente rastreadores – Analise e exiba apenas rastreadores.
  –date-spec = – Especificidade da data. Valores possíveis: `data`
                                    (padrão) ou `hr`.
  –decodificação dupla – decodifica valores com codificação dupla.
  –enable-panel = – Ativa a análise / exibição do painel fornecido.
  –hour-spec = – Especificidade da hora. Valores possíveis: `hr ‘
                                    (padrão) ou `min` (décimo de minuto).
  –ignore-crawlers – Ignorar rastreadores.
  –ignore-panel = – Ignora a análise / exibição do painel especificado.
  –ignore-referer = – Ignora que um referenciador seja contado. Curingas
                                    são autorizadas. ou seja, * .bing.com
  –ignore-status = – Ignora a análise do código de status fornecido.
  –num-tests = – Número de linhas a serem testadas. >= 0 (10 padrão)
  –process-and-exit – Analise o log e saia sem gerar dados.
  –real-os – Exibe os nomes reais do sistema operacional. por exemplo, Windows XP, Snow
                                    Leopardo.
  –sort-panel = PANEL, METRIC, ORDER – painel de classificação no carregamento inicial. Por exemplo:
                                    –painel de classificação = VISITANTES, BY_HITS, ASC. Vejo
                                    página de manual para obter uma lista de painéis / campos.
  –static-file = – Adicione extensão de arquivo estática. por exemplo: .mp3.
                                    As extensões diferenciam maiúsculas de minúsculas.
Opções de GeoIP
  -g –std-geoip – banco de dados GeoIP padrão para menos memória
                                  consumo.
  –geoip-database = – Especifique o caminho para o arquivo de banco de dados GeoIP. isto é.,
                                    GeoLiteCity.dat, GeoIPv6.dat …
Outras opções
  -h –help – Esta ajuda.
  -V –version – Exibe informações da versão e sai.
  -s –storage – Exibe o método de armazenamento atual. por exemplo, B+
                                    Árvore, Hash.
  –dcf – Exibe o caminho da configuração padrão
                                    arquivo quando `-p` não é usado.
Exemplos podem ser encontrados executando `man goaccess`.
Para mais detalhes, visite: http://goaccess.io
Direitos Autorais do GoAccess (C) 2009-2016 por Gerardo Orellana
[[protegido por email] goaccess-1.2] #

Analisando o Nginx & Apache com GoAccess

Uma das maneiras mais rápidas de analisar o access.log é usando-fparameter.

Ex:

goaccess -f access.log

Acima, estou instruindo a abrir o arquivo access.log. Isso mostrará o painel geral e as 15 seções a seguir.

  • Visitantes únicos por dia
  • Arquivos solicitados
  • Solicitações estáticas (fontes, imagem, pdf, etc)
  • Pedidos não encontrados (404)
  • Detalhes de IP / host do visitante
  • SO do visitante
  • Detalhes do navegador
  • Distribuição de tempo
  • Referenciador
  • Código de status HTTP
  • Localização geográfica

Se o arquivo escolhido estiver sendo atualizado em tempo real, você notará que as métricas são atualizadas no terminal. Aqui, você pode percorrer as métricas necessárias para analisar.

Monitoramento em tempo real por HTTP (s)

O GoAccess permite redirecionar a saída para o arquivo HTML, que você pode usar como um monitoramento em tempo real. Isso é útil quando você não deseja fazer login no servidor sempre que precisar verificar algumas métricas.

goaccess /var/log/nginx/access.log -o /var/www/geekflare.com/htdocs/real-time.html –log-format = COMBINADO –real-time-html

Acima, estou redirecionando a saída para o arquivo real-time.html, disponível em htdocs. Como são htdocs, posso acessar esse arquivo em https://geekflare.com/real-time.html sempre que precisar ver as métricas.

Um belo painel!

No entanto, não recomendo fazer isso dessa maneira na produção. Tenho certeza de que você não deseja que alguém leia os registros do servidor da web e aplique a seguinte restrição.

  • Proteger o arquivo com usuário e senha
  • Permitir acesso apenas a partir do seu IP
  • Use outro URL com porta personalizada e coloque-o atrás de um firewall para que somente os IP / usuários permitidos possam acessar

O GoAccess parece um poderoso analisador de logs de código aberto. É leve e gratuito, então vá em frente e tente.

Talvez você também esteja interessado em verificar o analisador de logs baseado em nuvem.

TAG:

  • Monitoramento

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map