Pythonのロギングモジュールは、デフォルトでは標準エラー出力にログを書き込みます。JenkinsでPythonスクリプトを実行する場合、logging.basicConfig
を使用してログの設定を行うことが一般的です。
logging.basicConfig(filename="/tmp/test.log", format="%(asctime)s %(levelname)s %(message)s", filemode="a", level=logging.INFO)
上記の設定がない場合、logging.info("xxxxxxx")
によって生成されるログは見つけることができません。しかし、デフォルトのログレベルは警告なので、情報メッセージは表示されません。
import logging
logging.error('a message!') # ERROR:root:a message!
logging.warning('a message!') # WARNING:root:a message!
logging.info('a message!') # No output
このように、PythonのロギングモジュールとJenkinsを組み合わせて使用すると、CI/CDパイプラインでのスクリプトの実行状況を詳細に追跡することができます。これにより、問題の診断やデバッグが容易になります。