zoukankan      html  css  js  c++  java
  • Python logging 模块,日志

    logging 模块,计算机的日志记录。

    它是一个线程安全的记录模块。

    当多个计算机来对服务器写入日志的时候。每台计算机都需要对服务器上的文件做, 打开文件 ,写入文件 ,保存文件 的操作。由于每台计算机的记录时间是不同的。这就需要保证线程的安全。

    logging 模块在内部就保证了这一功能。

    一,单个文件的记录。

     1 import logging
     2 
     3 """
     4 CRITICAL = 50
     5 FATAL = CRITICAL
     6 ERROR = 40
     7 WARNING = 30
     8 WARN = WARNING
     9 INFO = 20
    10 DEBUG = 10
    11 NOTSET = 0
    12 """
    13 
    14 logging.basicConfig(filename='logname.log',
    15                     format='%(asctime)s - %(name)s - %(levelname)s - %(module)s: %(message)s',
    16                     datefmt='%Y-%m-%d %H:%M:%S %p',
    17                     level=logging.INFO)
    18 logging.critical("this is a critical issue")
    19 logging.log(10, 'this is noset issue')
    20 logging.debug("ABC")

    二,多个文件的日志:

    # !/usr/bin/env python
    # -*- coding:utf8 -*-
    import logging
    
    # 创建文件
    file_1_1 = logging.FileHandler('1-1.log', 'a')
    # 创建格式
    fmt = logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s - %(module)s:%(message)s",
                            datefmt='%Y-%m-%d %H:%M:%S %p')
    # 文件应用格式
    file_1_1.setFormatter(fmt)
    
    file_2_2 = logging.FileHandler('2-2.log', 'a')
    # fmt = logging.Formatter()
    file_2_2.setFormatter(fmt)
    
    lgger1 = logging.Logger('Simon', level=logging.ERROR)
    
    lgger1.addHandler(file_1_1)
    lgger1.addHandler(file_2_2)
    
    # 写日志
    lgger1.critical('1111')
    lgger1.log(200,'这是一个level 200 的错误')
  • 相关阅读:
    6.linux下指定项目使用特定jdk
    5.linux 执行shell报bad interpreter:No such file or directory错误
    定时任务基础版本
    同一台电脑安装两个jdk切换问题
    接口如何设计?安全如何保证?签名如何实现?防重如何实现?
    spring boot常见get 、post请求参数处理
    bat例子
    1.Volatile关键字详解
    1.linux目录
    解析xml报文,xml与map互转
  • 原文地址:https://www.cnblogs.com/xuwenwei/p/14408239.html
Copyright © 2011-2022 走看看