Agrupando a saída do cron para e-mails periódicos

1

vixie-cron envia por e-mail a saída de tarefas agendadas, com uma mensagem por tarefa.

Eu preferiria receber mensagens em lotes, com um número configurável de mensagens por lote ou (melhor) cada lote cobrindo um período de tempo definido. Eu já uso logwatch para receber e-mails diários; uma solução que poderia ser integrada a este sistema seria ideal.

Não consigo encontrar uma maneira de configurar vixie-cron (versão 4.1-81 ) para enviar para um diretório ou arquivo de log em vez de diretamente para o cliente SMTP. Estou ciente de que posso redirecionar manualmente a saída para um local diferente em crontab , mas parece que deve haver uma maneira de alterar o padrão.

Eu também me pergunto qual seria a melhor ferramenta para enviar os e-mails (se não logwatch).

    
por supervacuo 06.08.2012 / 05:58

2 respostas

1

Você pode dizer ao Cron para enviar a saída para o syslog. Eu acredito que a saída do cron será enviada para / var / log / cron na maioria dos sistemas. A partir daqui, você pode criar um trabalho de logwatch para escanear / var / log / cron e enviar a saída uma vez por dia.

De man 8 cron :

-s

This option will direct cron to send job output to the system log using syslog(3). This is useful if your system has no sendmail(8), or if mail is disabled using -m off.

Em algumas distros, o logwatch vem com um script logwatch chamado 'cron' e um arquivo de configuração chamado 'cron.conf'. Veja o link para um exemplo. Eu não tenho esses arquivos no meu sistema RHEL6.

    
por 23.08.2012 / 19:50
0

Que tal configurar o endereço de e-mail para um cron específico (MAILTO = mailname, se bem me lembro) onde todas as mensagens de e-mail vão e ter um alias para simplesmente colocá-lo em um arquivo. Em seguida, processe o arquivo como desejar, .... logrotate ou o que você quiser.

    
por 06.08.2012 / 23:02