logging 日志旗舰版

1、系统日志:记录操作系统、服务器的硬件性能状态(cpu,网卡,内存运行),将你获取到的参数通过日志写入文件中,记录运维人员的命令
2、网站日志:用户的访问次数,用户的停留时间,访问量,各地区的访问量等等
3、开发辅助日志:debug,info模式,代替print,try:错误 except: 日志记录
4、用户信息日志:记录用户的转账,流水,等用户对系统的操作

"""
logging配置
"""

import os
import logging.config

# 定义三种日志输出格式 开始(放settings)

standard_format = '[%(asctime)s][%(threadName)s:%(thread)d][task_id:%(name)s][%(filename)s:%(lineno)d]' \
                  '[%(levelname)s][%(message)s]'  # 其中name为getlogger指定的名字

simple_format = '在 %(asctime)s %(message)s'

id_simple_format = '[%(levelname)s][%(asctime)s] %(message)s'

# log配置字典(放settings)

LOGGING_DIC = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'standard': {
            'format': standard_format
        },
        'simple': {
            'format': simple_format
        },
    },
    'filters': {},
    'handlers': {

        # 打印到终端的日志

        'stream': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',  # 打印到屏幕
            'formatter': 'simple'
        },

        # 打印到文件的日志,收集info及以上的日志

        'file': {
            'level': 'DEBUG',
            'class': 'logging.handlers.RotatingFileHandler',  # 保存到文件
            'formatter': 'standard',
            'filename': None,  # 日志文件
            'maxBytes': 1024 * 1024 * 5,  # 日志大小 5M
            'backupCount': 5,
            'encoding': 'utf-8',  # 日志文件的编码,再也不用担心中文log乱码了
        },
    },
    'loggers': {

        # logging.getLogger(__name__)拿到的logger配置

        '': {
            'handlers': ['stream', 'file'],  # 这里把上面定义的两个handler都加上,即log数据既写入文件又打印到屏幕
            'level': 'DEBUG',
            'propagate': True,  # 向上(更高level的logger)传递
        },
    },
}


# 放common

def get_logger():
    path = r'/Users/ylinn/python_pycharm/Ylinn.log'
    LOGGING_DIC['handlers']['file']['filename'] = path
    logging.config.dictConfig(LOGGING_DIC)  # 导入上面定义的logging配置
    logger = logging.getLogger()  # 生成一个log实例
    return logger


def save():
    logger = get_logger()
    logger.info('Ylinn存入300元')  # 记录该文件的运行状态


save()
posted @ 2020-11-13 15:30  Ylinn  阅读(70)  评论(0)    收藏  举报