O cron que acompanha o OS X registra suas ações em algum lugar?
Não estou procurando a saída de nenhum trabalho cron específico, mas o log do que o cron está fazendo. Em algumas máquinas Linux que verifiquei, existe um /var/log/cron
conteúdo como:
Apr 26 11:00:01 localhost crond[27755]: (root) CMD (/root/bin/mysql-backup)
Apr 26 11:01:01 localhost crond[27892]: (root) CMD (run-parts /etc/cron.hourly)
Apr 26 11:07:01 localhost crond[28138]: (root) CMD (/usr/local/bin/python /home/
user1/scripts/pythonscript.py)
Apr 26 11:18:18 localhost crontab[28921]: (user2) LIST (user2)
Apr 26 11:18:22 localhost crontab[28929]: (user2) BEGIN EDIT (user2)
Apr 26 11:18:59 localhost crontab[28929]: (user2) REPLACE (user2)
Isso mostra quando os trabalhos foram executados, quando os usuários visualizaram ou editaram os crontabs etc. Esse material não foi encontrado em nenhum lugar na minha máquina Snow Leopard.
macos
osx-snow-leopard
cron
Doug Harris
fonte
fonte
Imaginei como registrar minha atividade de trabalho cron sem mudar cada um deles para os trabalhos launchd.
A página de manual do cron menciona
-x
opções que permitem "gravar informações de depuração na saída padrão". Um efeito colateral disso é que eles também gravam informações básicas em erros padrão. Os dados enviados para o erro padrão são gravados/var/log/system.log
.Isso resulta em dados como este sendo gravados em
/var/log/system.log
:Como o próprio cron é lançado pelo launchd, para ativar isso, eu tive que editar
/System/Library/LaunchDaemons/com.vix.cron.plist
para que agora se pareça com:Eu usei
-x misc
aqui, mas não parecia importar quais opções eu usei. Adicionando o-x
início do log da atividade do trabalho. Também adicionei o StandardErrorPath para gravar em/var/log/cron.log
vez do padrão/var/log/system.log
.E, em seguida, descarregue e recarregue isso:
fonte
O OSX agora tende a usar o launchd em vez do cron - Apple dev doc -, portanto, pode haver que não haja nada no cron para registrar.
Use launchctl para controlar o nível de log do launchd. As informações do registro de som aparecem em system.log, mas mais no aplicativo de console -> Todas as mensagens
fonte
0 0 7 11 0 happybirthday
.Pelo menos no Yosemite, o cron registra a saída como
mail
mensagens, então use omail
para lê-las.fonte
cron
envia a saída (caso contrário não redirecionada) para o proprietário do trabalho por email. Se toda a saída for redirecionada, nenhum email será enviado. (Mesmo que uma mensagem seja enviada, não tenho certeza se mostra o comando que foi executado.) A questão é perguntar como o administrador pode ver todos os comandoscron
executados. Para usar sua resposta, uma pessoa precisaria examinar o arquivo de mensagens de todos.