在 Python 中记录到标准输出 stdout
本教程将介绍在 Python 中将日志写入文件和 stdout 的方法。
使用 Python 中的 logging.basicConfig()
函数登录到 stdout
如果我们想将日志打印到控制台窗口并将日志写入文件中,我们可以使用 logging.basicConfig()
函数 来完成此过程。logging.basicConfig()
函数为 Python 中的日志记录配置一些基本参数。我们可以使用此函数的 stream
参数来指定我们也希望在控制台窗口上打印此日志。其余配置与使用 logging.basicConfig()
函数将日志写入文件相同。以下代码演示了我们如何将日志写入控制台窗口。
import logging
import sys
# Creating and Configuring Logger
Log_Format = "%(levelname)s %(asctime)s - %(message)s"
logging.basicConfig(
filename="logfile.log",
stream=sys.stdout,
filemode="w",
format=Log_Format,
level=logging.ERROR,
)
logger = logging.getLogger()
# Testing our Logger
logger.error("Our First Error Message")
输出:
2021-06-13 05:15:24,093 - root - ERROR - Our First Error Message
使用 Python 中的 logging.StreamHandler()
函数登录到 stdout
我们还可以使用 logging.StreamHandler()
函数将日志写入 Python 中的控制台窗口。通过将 sys.stdout
传递给 logging.StreamHandler()
函数,我们可以创建一个可以将日志消息打印到控制台窗口的流处理程序。然后我们可以使用 addHandler()
函数将此流处理程序添加到我们的记录器对象。以下代码片段向我们展示了如何使用 logging.StreamHandler()
函数将日志消息打印到控制台窗口。
import logging
import sys
logger = logging.getLogger()
fileHandler = logging.FileHandler("logfile.log")
streamHandler = logging.StreamHandler(sys.stdout)
formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")
streamHandler.setFormatter(formatter)
fileHandler.setFormatter(formatter)
logger.addHandler(streamHandler)
logger.addHandler(fileHandler)
logger.error("This is the first error")
输出:
2021-06-13 05:03:37,510 - root - ERROR - This is the first error
我们在上面的代码中使用 logging.FileHandler()
和 logging.StreamHandler()
函数将日志消息 This is the first error
写入文件 logfile.log
和控制台窗口。我们首先创建了一个 logger 对象,我们将使用该对象通过 logging.getLogger()
函数编写日志。然后,我们创建了一个文件处理程序 fileHandler
并为其分配了 logging.FileHandler('logfile.log')
。
之后,我们创建了一个流处理程序 streamHandler
,并分配了 logging.StreamHandler(sys.stdout)
。之后,我们创建了一个格式化程序来使用 logging.Formatter()
函数格式化我们的输出,并使用 setFormatter()
函数为 fileHandler
和 streamHandler
设置格式化程序。在上一步之后,我们使用 addHandler()
函数将两个新的处理程序添加到我们的记录器对象中。最后,我们使用 logger.error('This is the first error')
将错误消息写入我们的文件和控制台窗口。
相关文章
在 Python 中漂亮打印字典
发布时间:2023/12/21 浏览次数:162 分类:Python
-
它演示了如何在 Python 中漂亮地打印字典。本教程将介绍如何在 Python 中漂亮地打印字典。漂亮打印的意思是以一种更可读的格式或风格来呈现一些打印的内容。
在 Python 中刷新打印输出
发布时间:2023/12/21 浏览次数:142 分类:Python
-
本教程演示了如何在 Python 中把打印函数的输出刷新到屏幕上。在本教程中,我们将讨论在 Python 中把 print() 和 sys.stdout.write() 等打印函数的输出刷新到屏幕上的各种方法。
在 Python 中打印制表符
发布时间:2023/12/21 浏览次数:138 分类:Python
-
通过使用 Python 代码,可以在字符串或文件中插入一个制表符。Python 字符串中的反斜杠 '\' 是一个特殊的字符,有时被称为转义字符。
在 Python 中以表格形式打印数据
发布时间:2023/12/21 浏览次数:105 分类:Python
-
本教程演示了如何在 Python 中以表格格式打印数据。列表可以按特定顺序存储多个元素。但是,当我们打印列表时,是否使用行格式的数据可能会有点不清楚。
在 Python 中将打印输出重定向到文件
发布时间:2023/12/21 浏览次数:53 分类:Python
-
本教程演示如何在 Python 中将打印输出重定向到文件。在文件处理中还有另一种任务可以使用 python 完成,即将输出重定向到外部文件。基本上,标准输出可以打印到用户自己选择的文件中。有
在 Python 中将日志写入文件
发布时间:2023/12/21 浏览次数:131 分类:Python
-
我们可以使用 logging 模块将日志写入 Python 中的文件。本教程将介绍在 Python 中将日志写入文件的方法。使用 Python 中的 logging 模块将日志写入文件
使用 Python 的加权随机选择
发布时间:2023/12/21 浏览次数:133 分类:Python
-
本教程演示如何在 python 中获得加权随机选择。在 Python 中,我们可以使用 Random 和 NumPy 库轻松生成随机数。
Python 中的平滑数据
发布时间:2023/12/20 浏览次数:101 分类:Python
-
本教程演示了如何在 Python 中平滑图形中的曲线。Python 在数据分析和可视化方面有着广泛的应用。
Python 中捕获键盘中断错误
发布时间:2023/12/20 浏览次数:187 分类:Python
-
本教程讨论如何在 Python 中捕获 KeyboardInterrupt。当用户使用 Ctrl + C 或 Ctrl + Z 手动尝试停止正在运行的程序时,或在 Jupyter Notebook 的情况下通过中断内核