如何自定义python rq的日志系统?

时间:2016-05-16 18:06:30

标签: python python-rq

目前rq的日志是这样的: -

15:15:03 
15:15:03 *** Listening on ingest...
15:17:41 ingest: tasks.ingest_job(aws_key='SDLKASFJHJKAHAJ', aws_secret='LDFKASJKDFJKSAHKJHkjsadhfkjaKJDSAHK')

因此,它也记录了作业的参数,这是一个安全问题,因为参数包含aws secret和access key。有没有办法在python rq中解决这个问题?这样它就不会记录参数或任何其他方式

3 个答案:

答案 0 :(得分:0)

您可以使日志记录静音:

rq worker ingest --quiet

我不认为用户可以直接修改日志记录的格式。

答案 1 :(得分:0)

您可以设置自己的工作脚本(described in the documentation)而不是运行rq worker。这使您可以设置log_job_description对象的Worker标志。

例如:

#!/usr/bin/env python
import sys
from rq import Connection, Worker

# Preload libraries
import library_that_you_want_preloaded

# Provide queue names to listen to as arguments to this script,
# similar to rq worker
with Connection():
    qs = sys.argv[1:] or ['default']

    w = Worker(qs, log_job_description=False)
    w.work()

这将在创建每个作业时记录下来,但不会在日志中显示功能参数。

答案 2 :(得分:0)

只需使用--log-format运行工作程序 https://python-rq.org/docs/workers/#worker-arguments