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.
-
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.
-
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)!
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. -
@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 ?? -
@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:
@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á