"""
#设置输出的日志内容格式
fmt = '%(asctime)s %(filename)s %(funcName)s [line:%(lineno)d] %(levelname)s %(message)s'
datefmt = '%a, %d %b %Y %H:%M:%S'
"""
# datetime ===

# 日志操作
# .log 文件形式
# 日志级别、时间、信息展示
# 日志的作用:记录了执行过程。程序干了什么,做了什么事情。

# 标准库 - logging
import logging

logging.debug("我是一条,debug级别的日志!!")
logging.info("我是一条,info级别的日志!!")
logging.warning("我是一条,warning级别的日志!!")
logging.error("我是一条,error级别的日志!!")
logging.critical("我是一条,critical级别的日志!!")

# info级别以上的,才会打印。info和debug是不打印的。
# 设置显示哪些级别的日志!!! ---设置操作。
# 默认的日志收集器rootLogger,它默认的显示的日志级别为:WARN

# 设置显示的级别,来决定哪些日志可以输出。

# 定义一个自己的日志收集器。我自己来决定显示哪些级别的日志。
logger = logging.getLogger("py17")
# 设置输出级别
print("=================================")
# logger.setLevel("INFO")
logger.setLevel(logging.INFO)
logger.info("我是一条,info级别的日志!!")
logger.warning("我是一条,warning级别的日志!!")
logger.error("我是一条,error级别的日志!!")
logger.debug("我是一条,debug级别的日志!!")

# 想设置日志内容呈现的形式。
# 专门的类:Formatter
# logging.Formatter(fmt,datefmt)
fmt = '%(asctime)s %(filename)s %(funcName)s [line:%(lineno)d] %(levelname)s %(message)s'
ft = logging.Formatter(fmt)

# handle === 输出渠道。控制台?文件?日志输出到哪里.容器。
handler1 = logging.StreamHandler() # 日志内容输出到控制台
handler1.setFormatter(ft) # 确定控制台当中,日志内容的呈现格式

# 将格式绑定到日志收集器py17 -- 不能直接绑定。
logger.addHandler(handler1)
logger.info("我是一条,info级别的日志!!")

# 日志收集器-logger handler - 输出渠道 formatter -- 日志内容的呈现样式
# 1、创建一个自己的日志收集器 - logger = getLogger("py17")
# 2、设置显示的日志级别 - logger.setLevel()

# 如果你想改变默认的输出样式
# 3、创建一个handler - handler1 = logging.StreamHandler() - 输出在哪里。
# 4、创建一个formatter - ft = logging.Formatter(fmt) - 输出的日志样式
# 5、设置handler的日志输出样式 - handler1.setFormatter(ft)
# 6、绑定到日志收集器当中。 logger.addHandler(handler1)

# 下节课:日志输出到文件-处理。 --- 定义一个自己的日志类!!
# 如果与excel类结合使用。
# 两个类组合使用!!!

python学习-logging的更多相关文章

  1. day27 python学习 logging

    logging模块 函数式简单配置 import logging logging.debug('debug message') logging.info('info message') logging ...

  2. [python 学习] logging模块

    1.将简单日志打印到屏幕: import logging logging.debug('debug message') logging.info('info message') logging.war ...

  3. Python模块学习 ---- logging 日志记录

    许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行跟踪.在.NET平台中,有非常著名的第三方开源日志组件log4net,c++中,有人们熟悉的log4cp ...

  4. python学习之logging

    学习地址:http://blog.csdn.net/zyz511919766/article/details/25136485 首先如果我们想简要的打印出日志,可以: import logging l ...

  5. python学习笔记二:(python3 logging函数中format说明)

    背景,在学习logging时总是遇到无法理解的问题,总结,尝试一下更清晰明了了,让我们开始吧! logging模块常用format格式说明 %(levelno)s: 打印日志级别的数值 %(level ...

  6. Python学习笔记——基础篇【第六周】——logging模块

    常用模块之logging 用于便捷记录日志且线程安全的模块 import logging logging.basicConfig(filename='log.log', format='%(ascti ...

  7. python学习第五十二天logging模块的使用

    很多程序都有记录日志的需求,并且日志包含的信息即有正常的程序访问日志,还可能有错误,警告等信息输出,python的 logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,loggin ...

  8. python学习之路 第六天

    1.正则表达式 re.match() 从头匹配: re.match("[0-9]","123abc789") 只匹配一个数字: re.match("[ ...

  9. Python学习记录day5

    title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函 ...

随机推荐

  1. 领扣(LeetCode)删除链表的倒数第N个节点 个人题解

    给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 ...

  2. Centos7安装redis5.0.7

    1. 安装依赖包 yum install -y gcc gcc-c++ 2. 下载最新版redis安装包并解压安装 cd /usr/local/src wget http://download.red ...

  3. .NET core3.0 使用Jwt保护api

    摘要: 本文演示如何向有效用户提供jwt,以及如何在webapi中使用该token通过JwtBearerMiddleware中间件对用户进行身份认证. 认证和授权区别? 首先我们要弄清楚认证(Auth ...

  4. WebSocket网络通信协议

    WebSocket 协议在2008年诞生,2011年成为国际标准.所有浏览器都已经支持了. HTTP 协议有一个缺陷:通信只能由客户端发起.这种单向请求的特点,注定了如果服务器有连续的状态变化,客户端 ...

  5. python_07

    破解极限滑动认证 from selenium import webdriver from selenium.webdriver import ActionChains from PIL import ...

  6. Orleans 3.0 为我们带来了什么

    原文:https://devblogs.microsoft.com/dotnet/orleans-3-0/ 作者:Reuben Bond,Orleans首席软件开发工程师 翻译:艾心 这是一篇来自Or ...

  7. config system setting for elasticsearch

    1. disable swapping. swap 分区会导致garbage collections 花费太多时间,elasticsearch 响应变慢. 方法1:swapoff -a 方法2:vi ...

  8. Redis 4.0鲜为人知的功能将加速您的应用程序

    来源:Redislabs 作者:Kyle Davis 翻译:Kevin (公众号:中间件小哥) Redis 4.0给Redis生态带来了一个惊人的功能:Modules(模块).Modules是Redi ...

  9. 内网环境搭建NTP服务器

    说在前面:ntp和ntpdate区别 ①两个服务都是centos自带的(centos7中不自带ntp).ntp的安装包名是ntp:ntpdate的安装包是ntpdate.他们并非由一个安装包提供. ② ...

  10. 请求https前缀的网站验证SSL证书的解决方案之一

    from requests.packages.urllib3.exceptions import InsecureRequestWarning # 禁用安全请求警告requests.packages. ...