+ Responder ao Tópico



  1. #1

    Padrão Script para ler log em tempo real

    Prezados,

    Alguém sabe me informar como posso fazer um script (ou algo assim), para que fique lendo em tempo real os logs do squid?

    Quero que esse script seja um processo rodando.


    Como posso desenvolver esse script?

  2. #2
    MODERADOR-CHEFE Avatar de osmano807
    Ingresso
    Aug 2008
    Localização
    Araguari - Minas Gerais
    Posts
    1.980
    Posts de Blog
    5

    Padrão Re: Script para ler log em tempo real

    Humm, tail -f lê em tempo real.
    Agora, se precisa de algo mais aprimorado, dá pra juntar isso com outros programas, ou tu faz um em alguma linguagem e fica lendo o tempo todo do arquivo.

    Código :
    tail -f /var/log/squid/access.log | grep TCP_MISS
    por exemplo.

  3. #3

    Padrão Re: Script para ler log em tempo real

    Sim,

    O tail le o arquivo em tempo real. Mas como faço para pegar cada linha que é gerar e jogar um BD por exemplo?

  4. #4
    MODERADOR-CHEFE Avatar de osmano807
    Ingresso
    Aug 2008
    Localização
    Araguari - Minas Gerais
    Posts
    1.980
    Posts de Blog
    5

    Padrão Re: Script para ler log em tempo real

    Código bash:
    tail -f /var/log/squid/access.log | awk '{print "INSERT INTO BLA_BLA_BLA VALUES ("$1","$2");"}'
    Algo assim, tem que pegar os termos usando outro programa, etc.

  5. #5
    Analista de Suporte em TI Avatar de demattos
    Ingresso
    Jul 2011
    Localização
    Criciuma/SC
    Posts
    1.923
    Posts de Blog
    3

    Padrão Re: Script para ler log em tempo real

    O que vc quer que seja visto pelo script no log do squid:

    O sites, os ip e etc

  6. #6

    Padrão Re: Script para ler log em tempo real

    tenta assim
    tail -f /var/log/squid/access.log \ awk '{print $3 " " S8 " " $7}'

  7. #7
    MODERADOR-CHEFE Avatar de osmano807
    Ingresso
    Aug 2008
    Localização
    Araguari - Minas Gerais
    Posts
    1.980
    Posts de Blog
    5

    Padrão Re: Script para ler log em tempo real

    Citação Postado originalmente por neimardias Ver Post
    tenta assim
    tail -f /var/log/squid/access.log | awk '{print $3 " " S8 " " $7}'
    Código bash:
    tail -f /var/log/squid/access.log | awk '{print $3 " " S8 " " $7}'

    É um pipe (|) e não uma barra invertida (\).