一个安全可靠高效的进程间日志处理器 A safe, reliable and efficient inter process log processor 新增压缩和压缩等级参数 add gzip fix bugs

multiprocess-logger的Python项目详细描述


多进程日志切换处理器

  • 一个安全可靠高效的进程间日志处理器 A safe, reliable and efficient inter process log processor fix bugs 修复上一版的bug

  • speed about 7100 lines/s 0.8M/s (10 processes) 7100行/s 0.8M/s 测试环境 虚拟机(virtual machine)

  • CentOS7 64

  • python3.7

  • 机械硬盘 hard disk

  • 添加测试用例

  • 新增参数 need_zip 是否需要日志压缩 布尔值 (需要以命名关键字参数传入)

  • 新增参数 compresslevel 日志压缩的gzip等级 默认为9 (需要以命名关键字参数传入)

  • v 0.5 修复上一版(0.4)的bug

  • import logging
    
    from multiprocessing import Process
    from logging import Formatter
    
    from multiprocess_logger import MultiprocessingHandler
    
    handler = MultiprocessingHandler(filename='./ppp.log',
                                     maxBytes=1024 * 1024, backupCount=10, need_zip=True, compresslevel=9)
    fmt = Formatter(fmt='%(asctime)s - %(process)d - %(name)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')
    handler.setFormatter(fmt=fmt)
    logger = logging.getLogger('SHIT')
    logger.addHandler(handler)
    logger.setLevel(logging.INFO)
    
    logging.basicConfig(level=logging.ERROR,
                        format='%(asctime)s - %(process)d - %(name)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')
    
    
    def write_log():
        while True:
            logger.info('Hello World!------------Hello World!')
    
    
    if __name__ == '__main__':
        # write_log()
        p_list = []
        for i in range(6):
            p_list.append(Process(target=write_log))
    
        for i in p_list:
            i.start()
    
    
    

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
由于java的原因,maven无法运行代码。lang.NoClassDefFoundError:com/fasterxml/jackson/annotation/JsonMerge   Android项目中的java Creative SDK图像编辑器UI   java如何在Android Studio中使用DataOutputStream上传文件并将其他参数传递到web服务器   java倒计时服务打开时崩溃   java将RubyonRails项目转换为JRubyonRails项目   java我的图库意图是不显示图像?为什么?   java如何在春季启动时跳过mongodb/   java@Autowired在Spring中是如何实现的   甲骨文Akka java。util。同时发生的timeoutexception线程池频繁超时   java maven依赖项对spring启动应用程序有何影响?   java Firestore执行复合查询,未截获事件“已修改”   java ItemStreamException:未能初始化读取器,原因是:IllegalStateException:流已初始化。重新开放前关闭   java将空标记解组到集合的新实例中   使用AspectJ的java新手:无法调用aspect   java查找棋类游戏的所有组合   你为什么要这样做and==与Java中的equals方法不一样吗?   如何对使用JavaUUID的代码进行单元测试?