Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python日志记录RotatingFileHandler和TimedRotatingFileHandler无法使用队列_Python_Python 3.x_Logging - Fatal编程技术网

python日志记录RotatingFileHandler和TimedRotatingFileHandler无法使用队列

python日志记录RotatingFileHandler和TimedRotatingFileHandler无法使用队列,python,python-3.x,logging,Python,Python 3.x,Logging,新的日志记录包(RotatingFileHandler和TimedRotatingFileHandler) 未按预期工作 问题:它创建的文件数量与 未完成其最大字节限制的用户(备份计数) 它创建任意大小的文件,即使用户定义 最大字节数(文件大小可能为10kb、34B等) 它将日志发送到任何文件中的任何位置,这太随机了 文件1:#用于在队列中添加 import redis from newTesting1 import executeJobQueue import json import ti

新的日志记录包(RotatingFileHandler和TimedRotatingFileHandler) 未按预期工作

问题:它创建的文件数量与 未完成其最大字节限制的用户(备份计数)

它创建任意大小的文件,即使用户定义 最大字节数(文件大小可能为10kb、34B等)

它将日志发送到任何文件中的任何位置,这太随机了

文件1:#用于在队列中添加

import redis 
from newTesting1 import executeJobQueue
import json
import time
from apscheduler.schedulers.background import BackgroundScheduler
conn = redis.Redis('127.0.0.1')
def addInQueue(queueName, PartnerId, CompanyName):
    newQ = Queue(queueName, connection=conn)
    for i in range(1000):
        newQ.enqueue(executeJobQueue, str(json.dumps({"ObjectId":"", 
                       "DisplayName":"", "FirstName":"", "LastName":"", 
                       "UserPrincipalName":"", "IsLicensed":"", 
                       "Licenses":"", "City":""})))

if __name__ == "__main__":
    scheduler = BackgroundScheduler()
    scheduler.start()
    scheduler.add_job(addInQueue, 'cron', ["syncDirectoryQueue", None, None], month='*', day='*', hour='10', minute='12')
    while True:
        time.sleep(3000)
文件2:从队列进行处理

from rq import Worker, Queue, Connection
import redis
conn = redis.Redis('127.0.0.1')
import logging.handlers
import logging
logger = logging.getLogger('MyLogger')
logger.setLevel(logging.DEBUG)
handler = logging.handlers.RotatingFileHandler("/Users/SMishra/log/application", maxBytes=100000, backupCount=10)
logger.addHandler(handler)

def executeJobQueue(newEntry):
    rq = Queue('syncDirectoryQueue', connection=conn)
    logger.info("executing queue %s %s", newEntry, len(rq))
    logger.info("executing queue %s %s", newEntry, len(rq))
    logger.info("executing queue %s %s", newEntry, len(rq))
    logger.info("executing queue %s %s", newEntry, len(rq))

if __name__ == "__main__":
    with Connection(conn):
        worker = Worker(list(map(Queue, ['syncDirectoryQueue'])))
        worker.work()
输出:


  • -rw-r--r--1名SMishra员工1.2K Dec 23 10:13申请。10
    -rw-r--r--1名SMishra员工1.2K 12月23日10:13申请。9
    -rw-r--r--1名SMishra员工1.2K 12月23日10:13申请。8
    -rw-r--r--1斯米什拉员工1.2K 12月23日10:13申请。7
    -rw-r--r--1名SMishra员工1.2K Dec 23 10:13申请。6
    -rw-r--r--1名SMishra员工1.2K 12月23日10:13申请。5
    -rw-r--r--1名SMishra员工1.2K 12月23日10:13申请。4
    -rw-r--r--1名SMishra员工1.2K 12月23日10:13申请。3
    -rw-r--r--1斯米什拉员工1.2K 12月23日10:13申请。2
    -rw-r--r--1 SMishra staff 632B Dec 23 10:13应用程序
    -rw-r--r--1 SMishra staff 1.2K Dec 23 10:13申请表1


  • 嗨,Satyam,欢迎来到Stack Overflow!你能给我们看看你用过的代码吗?嘿,@genericnard Nerd谢谢你的重播。我已经添加了代码,请参见。我期待着你的回答这是否回答了你的问题?嘿,buran,但是python2.7中没有同样的问题