Ad Widget

Collapse

Monitorar log com chave logrt

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • BrunoSpinelli
    Member
    • Mar 2013
    • 34

    #1

    Monitorar log com chave logrt

    Boa tarde.

    Tenho a seguinte situação.
    Tenho log que são gerados diariamente dentro de uma pasta.
    Exemplo: backup-windows_20130806.log
    backup-windows_20130807.log
    backup-windows_20130808.log

    O que preciso é fazer com que a chave leia cada dia um desses logs, porém não estou conseguindo.

    ja utilizei diversas chaves como.

    logrt["/oracle/disco1/backup/logs/backup-windows_[0-9]{1,4}.log",,"UTF-8",]
    logrt[/oracle/disco1/backup/logs/backup-windows_*.log]
    logrt[/oracle/disco1/backup/logs/backup-windows_yyyyMMdd.log]

    e ainda não obtive sucesso

    Se eu colocar diretamente o nome do arquivo completo ele funciona. exemplo
    logrt[/oracle/disco1/backup/logs/backup-windows_20130806.log]

    porém todo dia muda a data do log, como ja comentado e explicado.

    Alguem tem alguma idéia?

    Obrigado.
  • bezarsnba
    Member
    • Aug 2013
    • 39

    #2
    Eai Bruno

    Não sou muito bom nisso mas eu fiz aqui no meu e deu certo:

    O que eu fiz foi o seguinte criei uma chave com as seguintes informações

    Type: Zabbix Agent(active)
    logrt["/var/log/cron-[0-9]{0,8}.log","run-parts"]
    Type of information: log

    e no arquivo estava desta forma:

    ls -lh /var/log/cron-20130813.log

    O que eu percebi foi se tem espaço ele vai dar erro:

    Eu vi neste link:


    Espero que tenha ajudado

    abc

    Bezaleel

    Comment

    • BrunoSpinelli
      Member
      • Mar 2013
      • 34

      #3
      Os números [0,9] e {0,8}
      Corresponde a que dados?

      Comment

      • bezarsnba
        Member
        • Aug 2013
        • 39

        #4
        Eai Bruno

        Como eu disse sou novo na área, mas pelo que eu percebi o em relação a expressões regulares:

        Ele pegou um exemplo:

        logrt["/home/user/filelog_.*_[0-9]{1,3}","pattern_to_match","UTF-8",100]

        The last one will collect data from files such “filelog_abc_1” or “filelog__001”.

        {1,3} é o delimitador ou seja ele vai ser 001,002,003

        [0-9] esta expressão você simplifica limitador em intervalos [0123456789]

        Como no seu log termina com 9 no caso seria {0,9}, ou seja:..20130801...20130802....20130803..

        A forma que o Zabbix faz isso eu não sei, mas como trabalha com ERs deve ser algo do tipo.

        Segue alguns materias bacana para entender:




        Abc

        Beza

        Comment

        • BrunoSpinelli
          Member
          • Mar 2013
          • 34

          #5
          Ok.
          Entendido. e muito obrigado.


          MAs caso eut enha lego para todos os dais do mês?
          ao invez do intervalo [0,9] tenho que colocar [0,31] no caso, ou ele ja faz esta jogada?

          Comment

          • bezarsnba
            Member
            • Aug 2013
            • 39

            #6
            Bruno

            Eu não sei como trabalha o zabbix com relação as ERs, mas eu ACHO que sim. que ele vai fazer todos os dias seguindo a ordem:


            Exemplo:
            20130801...20130802....20130803
            20130811...20130812....20130813

            E assim por diante.

            Não sou a pessoa certa, para te falar em relação as ERs pois minha logica não é a das melhores.

            Mas espero ter ajudado.


            Beza

            Comment

            • bezarsnba
              Member
              • Aug 2013
              • 39

              #7
              Bruno

              Hoje quando chegar em casa vou ver como podemos fazer esta captura


              Beza

              Comment

              • BrunoSpinelli
                Member
                • Mar 2013
                • 34

                #8
                blza amigo.

                Esta sendo muito util, estou tentando aqui também, se obtiver sucesso eu posto aqui também

                Obrigado

                Comment

                • bezarsnba
                  Member
                  • Aug 2013
                  • 39

                  #9
                  E ai Bruno

                  Olha, eu não sei como esta o seu ambiente,mas achei uma solução que substituiria o logrt e facilitaria a sua vida.

                  Eu criei um UserParameter no zabbix_agentd.conf informando o que eu queria que ele fizesse para mim.( esse UserParameter pode ser usado para qualquer comando)

                  Olha:
                  UserParameter=log.rtr,head /var/log/cron-`date +%Y%m%d`.log

                  O que ele vai fazer é usar a sessão bash do e executar este comando(,head /var/log/cron) , vale salientar que o usuário zabbix precisa ter acesso de leitura no arquivo para ele poder ler o arquivo.

                  Aumentei o debug do server para mostrar melhor o q ele fez:


                  3754:20130815:010924.265 In substitute_key_macros() data:'log.rtr'
                  3754:20130815:010924.265 End of substitute_key_macros():SUCCEED data:'log.rtr'
                  3754:20130815:010924.265 End of substitute_key_macros():SUCCEED data:'log.rtr'
                  3754:20130815:010924.267 In substitute_key_macros() data:'log.rtr'
                  3754:20130815:010924.267 End of substitute_key_macros():SUCCEED data:'log.rtr'
                  3754:20130815:010924.267 In substitute_key_macros() data:'log.rtr'
                  3754:20130815:010924.267 End of substitute_key_macros():SUCCEED data:'log.rtr'
                  1. testa_log (linux-2xey:log.rtr): warning
                  1. testa_log (linux-2xey:log.rtr): warning
                  1. testa_log (linux-2xey:log.rtr): warning
                  ^C

                  O que eu tive que fazer no servidor foi criar um item e apontar o log.rtr

                  FIcou assim:

                  Type:Zabbix agent (active)
                  key: log.rtr
                  Type of information:Log
                  Update interval (in sec) 10
                  Keep history (in days) 1

                  Um comando bem bacana para fazer isso é o:

                  #zabbix_get -s localhost -k log.rtr
                  warning
                  Jun 28 13:50:27 linux-2xey rsyslogd: [origin software="rsyslogd" swVersion="5.4.0" x-pid="3714" x-info="http://www.rsyslog.com"] start
                  Jun 28 13:50:28 linux-2xey kernel: [ 49.243498] ip6_tables: (C) 2000-2006 Netfilter Core Team

                  se der ZBX_NOTSUPPORT

                  é que deu erro.

                  E no demais é esperar, estou mandando um screenshot para vocÊ ver como ficou:

                  Espero que tenha ajudado.

                  Beza
                  Last edited by bezarsnba; 23-03-2016, 15:20.

                  Comment

                  • BrunoSpinelli
                    Member
                    • Mar 2013
                    • 34

                    #10
                    Opa.
                    bom dia.

                    Tinha feita ja a questão de usar o UserParameter, porém queria facilitar minha vida aqui, pois pensa, temos mais de 100 servidores para monitorar, teria que atualizar em todos os servidores este arquivo, fazendo por template so ajusto em um local.

                    Mas meu problema se solucionou com esta chave.

                    logrt["/oracle/disco1/backup/logs/backup-disco-externo_[0-9]{0,9}.*"]

                    Esta funcionando e fazendo o que necessito.

                    Muito obrigado pela a ajuda e um forte abraço.

                    Comment

                    • BrunoSpinelli
                      Member
                      • Mar 2013
                      • 34

                      #11
                      Cara, me da mais uma ajuda ai se souber, queria pontuar sua ajuda, pois foi bem util para mim.
                      Mas não to achando isso, sabe aonde é?

                      Abraço

                      Comment

                      • bezarsnba
                        Member
                        • Aug 2013
                        • 39

                        #12
                        E ai Bruno


                        Obrigado, mas eu tbm não sei.. sou novo na área, mas o importante é que resolveu.


                        Beza
                        Last edited by bezarsnba; 15-08-2013, 20:38.

                        Comment

                        • Daniel Andrade
                          Junior Member
                          • Oct 2018
                          • 1

                          #13
                          Bom dia,

                          Estou com um problema parecido... tenho os seguintes arquivos gerados mensalmente dentro de uma pasta

                          Temperatura-2018-08.txt
                          Temperatura-2018-09.txt
                          Temperatura-2018-10.txt

                          E o conteudo desses arquivos vem no seguinte padrão(dd/mm/yy;hh:mm;temperatura):
                          01/10/18;02:29;00,0;
                          01/10/18;02:34;18.5;
                          01/10/18;02:40;00,0;
                          01/10/18;02:45;17.8;

                          To tentando fazer uma chave para pegar a data e o valor da temperatura e não estou conseguindo. Como ficaria a chave para recuperar essa temperatura dentro do log?

                          Estou tentando com a seguinte chave:
                          logrt["\\gerenciamento01\c$\Program Files\Pro-Digital\Termometro\Temperatura\Temperatura-2018-[0-9]{0,9}.*"]

                          Comment

                          • 1berto
                            Senior Member
                            • Sep 2018
                            • 182

                            #14
                            Não conheço bem o logrt, mas esse nome do arquivo ai pode melhorar (vai parar de funcionar em 2019, por exemplo), supondo que o resto esteja correto, seria melhor
                            logrt["\\gerenciamento01\c$\Program Files\Pro-Digital\Termometro\Temperatura\Temperatura-[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}.txt" ]
                            Não conheço os detalhes desse processador de regex, mas em alguns casos pode ser necessário 'escapar' caracteres especiais, o ponto por exemplo quase certamente precisa ser \. talvez seja preciso 'escapar' as contrabarras também: \/ ou talvez seja possível simplesmente usar a barra normal / como separador.
                            Uma boa dica para quem não conhece muito de regex é usar um simulador online, em geral eles permitem que você cole um texto (o nome do arquivo no caso) e vá 'testando' a regex até 'bater', procurem por regex tester.
                            O log time format ficaria: d/M/y;h:m (talvez Y funcione melhor para ano com dois dígitos)
                            Não sei bem como fica nesse caso o último ; por que ele não precisaria ir na regex do logtime format.
                            O segundo parâmetro é uma regex para extrair o valor na leitura, mas como nesse caso pode-se desejar tanto a data quanto o valor em si, não seria necessário, só não sei bem como descartar o ponto e vírgula no item, depois que a data for parseada no servidor.
                            Last edited by 1berto; 02-11-2018, 04:21.

                            Comment

                            • Vinícius Röpke
                              Junior Member
                              • May 2019
                              • 1

                              #15
                              Boa tarde, Daniel Andrade, você conseguiu resolver o seu problema? Estou com o mesmo aqui, e o zabbix não colata o dado...

                              Comment

                              Working...