当前位置: 首页 > news >正文

个人帮企业做网站校园内部网站平台建设方案

个人帮企业做网站,校园内部网站平台建设方案,网站栅格布局,网站建设哪些在多线程中将logging.info输出到不同的文件中,可以使用Python标准库中的Queue和Thread模块。具体实现步骤如下: 创建多个Queue队列用于不同线程的日志输出,每个队列对应一个日志文件。 import queue# 创建三个队列用于不同线程的日志输出 l…

在多线程中将logging.info输出到不同的文件中,可以使用Python标准库中的QueueThread模块。具体实现步骤如下:

  1. 创建多个Queue队列用于不同线程的日志输出,每个队列对应一个日志文件。
import queue# 创建三个队列用于不同线程的日志输出
log_q1 = queue.Queue()
log_q2 = queue.Queue()
log_q3 = queue.Queue()
  1. 创建多个Handler对象,分别处理不同的队列,并设置不同的输出格式和日志级别。
import logging# 配置日志记录器
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)# 定义输出格式
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')# 创建三个handler,分别处理不同的队列
handler1 = logging.FileHandler("log1.txt")
handler1.setFormatter(formatter)
handler1.setLevel(logging.ERROR)
handler1.setStream(log_q1)handler2 = logging.FileHandler("log2.txt")
handler2.setFormatter(formatter)
handler2.setLevel(logging.WARNING)
handler2.setStream(log_q2)handler3 = logging.FileHandler("log3.txt")
handler3.setFormatter(formatter)
handler3.setLevel(logging.INFO)
handler3.setStream(log_q3)# 将三个handler添加到logger中
logger.addHandler(handler1)
logger.addHandler(handler2)
logger.addHandler(handler3)
  1. 创建多个线程,在每个线程中从相应的队列中获取日志信息并输出到相应的文件中。
import threadingdef worker1():while True:try:record = log_q1.get()if record is None:breaklogger.handle(record)except Exception:passdef worker2():while True:try:record = log_q2.get()if record is None:breaklogger.handle(record)except Exception:passdef worker3():while True:try:record = log_q3.get()if record is None:breaklogger.handle(record)except Exception:passt1 = threading.Thread(target=worker1)
t1.start()t2 = threading.Thread(target=worker2)
t2.start()t3 = threading.Thread(target=worker3)
t3.start()
  1. 在主线程中使用logging.info等函数输出日志,将日志信息放入相应的队列中即可。
# 在主线程中使用logging.info等函数输出日志,将日志信息放入相应的队列中
log_q1.put(logging.makeRecord("logger1", logging.ERROR, "test message", (), None, None, None))
log_q2.put(logging.makeRecord("logger2", logging.WARNING, "test message", (), None, None, None))
log_q3.put(logging.makeRecord("logger3", logging.INFO, "test message", (), None, None, None))

通过以上步骤,即可实现多线程中将logging.info输出到不同的文件中。需要注意的是,在使用Queue传递日志信息时,需要使用logging.makeRecord()方法创建LogRecord对象,并指定相应的logger名称、日志级别、消息内容等信息。

http://www.yayakq.cn/news/997845/

相关文章:

  • 家居建材网站源码网站怎么做百度认证
  • 怎样建网站买东西建筑网站大全免费
  • 成品网站1688入口网页版威联通做网站
  • 制作网站公司首 荐乐云seo专家班级优化大师免费下载学生版
  • 随州网站设计开发服务成都医疗seo整站优化
  • 安康市网站建设公司河南网站建设公司哪个好呀
  • php网站开发待遇seo网站排名全选
  • 博客系统做网站深圳营销型网站建设设计公司
  • 广东网站建设微信商城开发佛山企业网站制作
  • 江油市建设局网站作网站公司
  • 六安网络推广公司怎样优化网站案例
  • chinacd wordpress99济南官网seo厂家
  • 在凡科做网站织梦示范网站
  • 做网站一般什么价格在线设计平台市场环境
  • 网站转wordpress优化方案怎么写
  • 杭州自助建站软件网页布局的设计原则
  • 网站前端与后台必须同时做吗吉林珠海网站建设
  • 传世手游新开服网站光辉国际猎头公司
  • 最好网页游戏网站网络营销课程自学
  • 专门做外国的网站四川省建筑人才网
  • 淘宝客导购网站模板优秀网站大全
  • h5个人博客网站模板淘宝网站的推广方案
  • asp网站搭建工具做软件的软件
  • 代码网站模板win7下使用wordpress
  • wordpress 用iis建站购物网站毕业设计论文
  • 昆明企业网站开发公司用vue开发的网站
  • 做酒店网站多少钱做简单网站用什么软件
  • app网站建设费用莱芜泉网站建设
  • 网站官方首页设计营销型网站免费企业网站模版
  • o2o网站建设包括哪些建房子找哪个网站设计