欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    python logging learning01日志重复记录,日志记录混乱副本.docx

    • 资源ID:3164797       资源大小:36.98KB        全文页数:3页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    python logging learning01日志重复记录,日志记录混乱副本.docx

    python logging learning01日志重复记录,日志记录混乱 副本1. 编写python脚本实现不间断ping, 并且实现日志记录 import osimport timeimport threadingimport multiprocessingimport logging#switch=target='CCCPrinter01':'192.168.0.12','CertificatePrinter01':'192.168.0.13','formatter = logging.Formatter('%(name)s %(asctime)s %(levelname)s %(message)smutex=threading.Lockdef logmaker(info,logfile,logger): logger=logging.getLogger(logger) handler=logging.FileHandler(logfile) handler.setFormatter(formatter) logger.addHandler(handler) logger.error('ping %s failed'%info) logger.removeHandler(handler) def logmaker_mutex(info,logfile): if mutex.acquire: logger=logging.getLogger handler=logging.FileHandler(logfile) handler.setFormatter(formatter) logger.addHandler(handler) logger.error('ping %s failed'%info) mutex.release 1.1、出现问题,记录日志的时候,日志重复记录,第一遍循环时,重复记录一次;第二次循环时候,重复记录两次,依次增加下去 问题函数如下: def logmaker(info,logfile,logger): logger=logging.getLogger(logger) handler=logging.FileHandler(logfile) handler.setFormatter(formatter) logger.addHandler(handler) logger.error('ping %s failed'%info) 原因: 问题函数中没有调用logger.removeHandler(handler) 改进后的代码如下: def logmaker(info,logfile,logger): logger=logging.getLogger(logger) handler=logging.FileHandler(logfile) handler.setFormatter(formatter) logger.addHandler(handler) logger.error('ping %s failed'%info) logger.removeHandler(handler) 问题得以解决 1.2、代码中设计有三个log文件用来记录三个打印机的网络连接日志,如果ping不通,就记录在相应的日志里面,出现的问题:记录日志时,日志混乱,相应打印机的日志没有记录到对应的log文件中,呈现随机存放到三个文件的现象。 问题代码段: 红色加粗字体部分 def logmaker(info,logfile,logger): logger=logging.getLogger handler=logging.FileHandler(logfile) handler.setFormatter(formatter) logger.addHandler(handler) logger.error('ping %s failed'%info) logger.removeHandler(handler) 原因: 在调用getLogger时要提供Logger的名称(注:多次使用相同名称来调用getLogger,返回的是同一个对象的引用。getLogger如果不提供参数,默认为root 改进后的代码如下: 添加函数参数,当记录不同打印机的日志时,指定不同的logger名称 def logmaker(info,logfile,logger): logger=logging.getLogger(logger) handler=logging.FileHandler(logfile) handler.setFormatter(formatter) logger.addHandler(handler) logger.error('ping %s failed'%info) logger.removeHandler(handler)

    注意事项

    本文(python logging learning01日志重复记录,日志记录混乱副本.docx)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开