Python crontab 脚本写入两个位置

问题描述 投票:0回答:1

我有一个通过 crontab 运行的 python 脚本。

这是 crontab:

0 14 * * * python3 /opt/app/script.py >> /var/log/app/script_log.txt

以前,我在脚本末尾有一个打印语句,该语句将写入

/var/log/app/script_log.txt
,但切换到
logging
后,那里什么也没有写入(脚本成功写入
data.log
- 如日志处理程序中设置的那样)。

这是我的日志配置:

logging.basicConfig(
    level=logging.INFO,
    format='%(asctime)s - %(levelname)s - %(message)s',
    handlers=[
        logging.FileHandler("data.log"),
        logging.StreamHandler()
    ]
)

有没有办法设置记录器写入两个位置?

python python-3.x logging cron
1个回答
0
投票

将所需文件的另一个

FileHandler
添加到
handlers
列表中。

handlers=[
    logging.FileHandler("data.log"),
    logging.FileHandler("/var/log/app/script_log.txt"),
    logging.StreamHandler()
]
© www.soinside.com 2019 - 2024. All rights reserved.