我想为我的 discord 机器人创建一个日志文件,它是用 python 构建的。
我有几组命令通过打印命令输出控制台,我在打印输出中添加了日期和时间,以便在机器人运行时对其进行跟踪。但是,是否也可以轻松地将打印输出保存到文件中?这样我就可以制作一个日志文件来跟踪不同的日子和要求的内容。
控制台输出: Screenshot_1.png
我的代码中的打印命令示例:
异步定义硬币(ctx):
author = ctx.message.author
choice = random.randint(1,2)
if choice == 1:
await bot.say("Heads")
print(currentTime() + " - Coin Requested by " + str(author) + " It Landed on Heads!")
elif choice == 2:
await bot.say("Tails")
print(currentTime() + " - Coin Requested by " + str(author) + " It Landed on Tails!")
我曾尝试在线查看其他一些问题,但看到它们时我感到很困惑,因为没有明确解释发生了什么以及如何配置它以适用于我的代码。
原文由 antwilson1720 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用
logging
模块来完成此操作。在最简单的层面上,它将像这样设置:
您可以使用许多不同的级别来写入文件,例如:
您可以在要记录到文件的任何地方使用这些行。如果你想用日志记录替换控制台打印,只需将打印行替换为
logging.info(.......)
有关该主题的更多信息,例如更多可配置选项(例如时间戳),请查看文档 (python 3): https ://docs.python.org/3/library/logging.html