モヒカンメモ

髪色が定期的に変わることに定評のある(比較的)若者Webエンジニアの備忘録

cronの実行ログを見るにはjournalctlコマンドを使う

概要

定期的にコマンドを実行するためのcronという仕組みがある。 いつ、どういうコマンドがcronによって実行されたかを確認したくて、実行ログの確認方法を調べた。

調べて分かったことのまとめ

  • Ubuntu 18 (というか今どきのLinuxたぶん全般) では、crondはsystemdによって管理されている
  • systemdで動かされるプロセスのログは、ファイルではなくjournaldが保持している
  • journalctl -u cron というコマンドで、cronによるコマンド実行ログが確認出来る

吐かれる実行ログの例

実行ログを作るために、crontabに下記のジョブを登録。

* * * * * echo 1

時を待つと、下記のようなログが出た。

$ sudo journalctl -f -u cron
-- Logs begin at Thu 2019-05-30 11:01:44 JST. --
...snip
 6月 22 23:03:01 pinkumohikan.com CRON[2080]: (pinkumohikan) CMD (echo 1)
...snip

ログから何時に、どのユーザで、どういうコマンドを実行したかが分かる。便利!