Log.io é um pequeno aplicativo simples, mas eficaz, construído em cima de Node.js e Socket.io, que permite monitorar arquivos de log de servidores Linux em tempo real por meio de widgets de tela de interface web.
Este tutorial irá guiá-lo sobre como você pode instalar e monitorar qualquer arquivo de log local em tempo real com Log.io instalado no RHEL / CentOS 7 / 6.x configurando Log.io arquivo harvester para monitorar quaisquer alterações locais nos arquivos de log.
1. CentOS Epel repositórios fornece os pacotes binários para Node.js e NPM – Módulos empacotados de nós. Instale os repositórios Epel emitindo o seguinte comando.
# yum install http://fedora.mirrors.telekom.ro/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm.
No RHEL / CentOS 6.x - 32 bits # yum install http://fedora.mirrors.telekom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm No RHEL / CentOS 6.x - 64 bits # yum install http://fedora.mirrors.telekom.ro/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm.
2. Depois que você adicionou Epel Repos em seu sistema, faça uma atualização do sistema executando o seguinte comando.
# atualização yum.
3.Node.js é uma plataforma de programação do lado do servidor Javascript que permite criar aplicativos de rede com funcionalidade de back-end. NPM (Node Package Manager) é praticamente o gerenciador de pacotes para Node.js. Então, na próxima etapa, vá em frente e instale os binários Node.js e NMP em seu sistema por meio de Gerenciador de pacotes YUM emitindo os seguintes comandos.
# curl --silent --location https://rpm.nodesource.com/setup_5.x | bash - # yum install -y nodejs.
4.Log.io O aplicativo deve ser instalado em seu sistema por meio do NPM, especificando um usuário de sistema local válido, por meio do qual a instalação deve ocorrer. Embora você possa usar qualquer usuário de sistema válido para instalar o Log.io, eu pessoalmente recomendo instalar o aplicativo por meio de raiz usuário ou outro usuário do sistema com privilégios de root.
A razão para usar esta abordagem é que Log.io deve ter acesso para ler arquivos de log localmente e um usuário com privilégios de root sem privilégios geralmente não pode acessar e ler alguns arquivos de log importantes.
Portanto, faça o login com a conta root e instale o aplicativo Log.io através da conta root, emitindo o seguinte comando (se você usar outro usuário, substitua a conta root pelo usuário do sistema de acordo).
# npm install -g log.io --user “root”
5. Depois que o aplicativo for instalado, altere seu diretório de trabalho para Log.io pasta, que fica oculta, e faça uma listagem de diretórios para visualizar o conteúdo da pasta para poder configurar ainda mais a aplicação.
# pwd [Certifique-se de que está no caminho certo] # cd .log.io / # ls.
6. Agora é hora de configurar Log.io para monitorar arquivos de log locais em tempo real. Vamos ver como funciona o Log.io.
Primeira abertura harvester.conf arquivo para edição, que por padrão monitora apenas os arquivos de log do Apache e substitui nodeName declaração para corresponder ao seu nome de host e definir o logStreams declarações com quais arquivos de log internos você deseja monitorar (neste caso, estou monitorando vários arquivos de log, como auditoria, mensagens e logs seguros). Use o trecho do arquivo abaixo como um guia.
# nano harvester.conf.
Trecho do arquivo Harvester.
export.config = {nodeName: "pxe-server", logStreams: {audit: ["/var/log/audit/audit.log"], mensagens: ["/ var / log / messages"], seguro: ["/ var / log / secure"]}, servidor: {host: '0.0.0.0', porta: 28777 } }
Além disso, se você não precisa que a saída do harvester seja enviada para um remoto Log.io servidor muda a linha hospedar em servidor declaração para enviar sua saída localmente, modificando o endereço 0.0.0.0 com o endereço de loopback (127.0.0.1).
7. Por razões de segurança, se você não está esperando a saída de harvesters remotos para seu local Log.io servidor aberto log_server.conf arquivar e substituir 0.0.0.0 endereço com endereço de loopback (127.0.0.1).
# nano log_server.conf.
8. Outros recursos de segurança, como login de credenciais, HTTPS ou restrição baseada em IPs para o servidor da web Log.io podem ser aplicados no lado do servidor da web. Para este tutorial, usarei apenas como medida de segurança apenas o login de credencial.
Então abra web_server.conf arquivo, descomente todo auth declaração excluindo todas as barras e asteriscos e substituindo do utilizador e passar diretivas de acordo como sugerido na imagem inferior.
# nano web_server.conf.
9. A fim de obter acesso à web para Log.io servidor adicionar uma regra em RHEL/CentOS 7 Firewall para abrir TCP 28778 porta emitindo o seguinte comando.
# firewall-cmd --add-port = 28778 / tcp --permanent. # firewall-cmd --reload.
Observação: Usuários RHEL / CentOS 6.x podem abrir a porta 28778 no firewall iptable.
10. Para começar Log.io aplicativo de monitoramento de log garante que seu diretório de trabalho atual é a casa do root .log.io e use os seguintes comandos na ordem a seguir para iniciar o aplicativo.
Primeiro inicie o servidor, coloque-o em segundo plano e pressione a tecla Enter # log.io-server & Iniciar o coletor de logs em segundo plano # log.io-harvester &
11. Após o servidor ter sido iniciado, abra um navegador, digite o IP do seu servidor seguido por 28778 o número da porta usando o protocolo HTTP no endereço URL e um prompt solicitando suas credenciais de login deve aparecer.
Digite seu usuário e senha configurados em passo 8 para prosseguir e Log.io o aplicativo agora deve estar visível em seu navegador, apresentando arquivos de log monitorados em tempo real.
http://192.168.1.20:28778.
Na interface da Web, adicione novas telas e organize seus fluxos ou nós de acordo.
12. Parar Log.io aplicativo execute o seguinte comando.
# nó pkill.
13. Para usar um comando que gerencie Log.io aplicativo com três interruptores ( começar, Pare e status) crie o seguinte script chamado log.io em /usr/local/bin diretório executável e adicionar permissões de execução a este script.
# nano /usr/local/bin/log.io. # chmod + x /usr/local/bin/log.io.
Adicione o seguinte trecho a este arquivo de script.
#! / bin / bash start () {echo "Iniciando processo log.io ..." /usr/bin/log.io-server & /usr/bin/log.io-harvester &} stop () {echo "Interrompendo processo io-log ..." pkill node} status () {echo "Status do processo io-log ..." netstat -tlp | grep node} caso "$ 1" em começar) começar;; Pare) Pare;; status) status;; *) echo "Uso: start | stop | status";; Esac.
14. Para iniciar, pare ou visualize o login de status do Log.io com conta root (ou o usuário que o aplicativo Log.io foi instalado) e apenas execute os seguintes comandos para gerenciar facilmente o aplicativo.
# log.io start. # log.io status. # log.io parar.
Isso é tudo! Na minha opinião Log.io é um excelente e eficaz aplicativo da web para monitorar arquivos de log de servidores locais ou remotos em tempo real e obter uma visão geral do que está acontecendo internamente nos sistemas e especialmente para depurar problemas de servidor quando os sistemas tendem a não responder ou travar, sem a necessidade de usar um console.