Problema Agendamento Sarg (Cron) [RESOLVIDO]



  • Olá.

    Fiz agendamentos na interface do sarg para relatórios diários, contudo notei alguns problemas:

    • O agendamento tem falhado!

    • E quando funciona, é executado em horário "errado" (tem sido executado nas primeiras horas do dia (0h), logo, o relatório do dia ainda está vazio nesse horário)

    Não consegui encontrar o problema, então resolvi fazer um script e executar via cron, contudo outro problema: o cron não está executando o script (o script funciona manualmente mas não via cron).

    Alguma ideia de como resolver esse problema?



  • Olá!

    Ajudaríamos se você nos desse mais detalhes, poste as configurações de agendamento do Sarg.

    Também a tabela do Cron e seu Script.



  • @LFCavalcanti:

    Olá!

    Ajudaríamos se você nos desse mais detalhes, poste as configurações de agendamento do Sarg.

    Também a tabela do Cron e seu Script.

    Sarg

    O script

    
    #!/bin/sh
    
    data=$(date "+%d/%m/%Y")
    
    sarg -f /usr/local/etc/sarg/sarg.conf -d $data-$data
    
    

    crontab (/etc/crontab)

    
    50      23      *       *       1-5     root    /usr/local/etc/sarg/scripts/rel_sarg_dia.sh
    
    


  • Crie o agendamento do sarg e mude seu horario para executar aos 40 minutos no lugar de as 00 horas.

    Isso deve resolver a questão do relatório vazio.

    Seu script só está rodando na mão porque você provavlemente não incluiu o caminho completo dos binários.

    echo vira /bin/echo e assim por diante.



  • @marcelloc:

    Crie o agendamento do sarg e mude seu horario para executar aos 40 minutos no lugar de as 00 horas.

    Isso deve resolver a questão do relatório vazio.

    Onde eu encontro a configuração da hora que o agendamento vai ser executado? Porque não encontrei tal configuração na interface do Sarg e também não consegui ainda achar essa opção na configuração (sarg.conf)!

    @marcelloc:

    Seu script só está rodando na mão porque você provavlemente não incluiu o caminho completo dos binários.

    echo vira /bin/echo e assim por diante.

    Tentei isso também, contudo não deu certo!
    Já fiz as mais variadas variações de execução de scripts no cron e nada! Até mesmo coloquei comando atrás de comando, separando por ; e com caminho completo, mas nada!
    Simplesmente não entendo o porque de não funcionar. Já pesquisei pra caramba e tentei de todas as formas que eu conheço e que vi nos fóruns internet a fora, contudo ainda assim não funcionou!

    Água benta? Figa? O que eu preciso? T_T



  • @UnDr3aD:

    Onde eu encontro a configuração da hora que o agendamento vai ser executado? Porque não encontrei tal configuração na interface do Sarg e também não consegui ainda achar essa opção na configuração (sarg.conf)!

    system -> packages -> available packages -> cron

    Depois de instalar, acesse services -> cron

    @UnDr3aD:

    Simplesmente não entendo o porque de não funcionar. Já pesquisei pra caramba e tentei de todas as formas que eu conheço e que vi nos fóruns internet a fora, contudo ainda assim não funcionou!

    Coloca o script aqui.
    Tenho vários agendamentos via cron e funcionam perfeitamente.



  • @marcelloc:

    @UnDr3aD:

    Onde eu encontro a configuração da hora que o agendamento vai ser executado? Porque não encontrei tal configuração na interface do Sarg e também não consegui ainda achar essa opção na configuração (sarg.conf)!

    system -> packages -> available packages -> cron

    Depois de instalar, acesse services -> cron

    @UnDr3aD:

    Simplesmente não entendo o porque de não funcionar. Já pesquisei pra caramba e tentei de todas as formas que eu conheço e que vi nos fóruns internet a fora, contudo ainda assim não funcionou!

    Coloca o script aqui.
    Tenho vários agendamentos via cron e funcionam perfeitamente.

    MAGIA NEGRA! kkkk
    funfou agora!

    Eu já tinha instalado o cron antes e testado nele, mas não tinha dado certo. Logo, resolvi fazer os teste via cli e tinha parado de usar a interface do cron.
    Depois da sua resposta resolvi dar mais uma chance ao cron (interface web) e testar de novo.
    Antes estava assim:

    
    33  	14  	*  	*  	1-5  	root  	sh "/usr/local/etc/sarg/scripts/rel_sarg_dia.sh"  
    
    

    Aí eu mudei para:

    
    33  	14  	*  	*  	1-5  	root  	/sbin/sh "/usr/local/etc/sarg/scripts/rel_sarg_dia.sh"  
    
    

    E atualizei o script também:

    
    #!/bin/sh
    
    data=$(date "+%d/%m/%Y")
    
    /usr/local/bin/sarg -f /usr/local/etc/sarg/sarg.conf -d $data-$data
    
    

    O estranho é que eu já tinha feito tudo isso via cli e não tinha funcionado. Agora, já fiz dois teste e ambos funcionaram (via cron web interface)!

    Bom! Dou-me por satisfeito! Está tudo funcionando! Mas se alguém puder dar alguma informação complementar sobre o funcionamento do cron pra eu tentar entender melhor o que aconteceu eu agradeço!

    Congrats!



  • O caminho correto dos binários são:

    
    33  	14  	*  	*  	1-5  	root  	/bin/sh "/usr/local/etc/sarg/scripts/rel_sarg_dia.sh"  
    
    
    
    #!/bin/sh
    
    data=$(/bin/date "+%d/%m/%Y")
    
    /usr/local/bin/sarg -f /usr/local/etc/sarg/sarg.conf -d $data-$data
    
    


  • @UnDr3aD:

    
    33  	14  	*  	*  	1-5  	root  	/sbin/sh "/usr/local/etc/sarg/scripts/rel_sarg_dia.sh"  
    
    

    Deixa eu ver se entendi esse agendamento…
    ele vai executar as 14 e 33 ? 5 dias da semana ??



  • @Guilherme:

    @UnDr3aD:

    
    33  	14  	*  	*  	1-5  	root  	/sbin/sh "/usr/local/etc/sarg/scripts/rel_sarg_dia.sh"  
    
    

    Deixa eu ver se entendi esse agendamento…
    ele vai executar as 14 e 33 ? 5 dias da semana ??

    não, o quinto campo alí é referente aos dia da semana, começando de 0 e indo até 6, ou seja, 1-5 corresponde a segunda à sexta!
    os campos seguem a ordem: minuto,hora,dia do mês, mês, dia da semana, usuário e comando.
    dá uma olhadinha no manual do cron.



  • @UnDr3aD:

    @Guilherme:

    @UnDr3aD:

    
    33  	14  	*  	*  	1-5  	root  	/sbin/sh "/usr/local/etc/sarg/scripts/rel_sarg_dia.sh"  
    
    

    Deixa eu ver se entendi esse agendamento…
    ele vai executar as 14 e 33 ? 5 dias da semana ??

    não, o quinto campo alí é referente aos dia da semana, começando de 0 e indo até 6, ou seja, 1-5 corresponde a segunda à sexta!
    os campos seguem a ordem: minuto,hora,dia do mês, mês, dia da semana, usuário e comando.
    dá uma olhadinha no manual do cron.

    Entendi, li o manual agora e compreendi melhor como funciona, a questão é que eu também estava com o mesmo problema
    que o seu…
    Fazia todos procedimentos e não ia, removi o package Cron 0.1.7 e atualizei para o 0.1.8
    E resolveu o problema..

    Obrigado desde já


Log in to reply