Overview
在本指南中,您可以学习如何使用Ruby驱动程序为应用程序配置日志记录。日志记录允许您查看基于事件的驱动程序活动的离散日志。
记录器按您可以指定的严重性或详细程度日志消息。当您在应用程序中启用日志记录功能时,您可以接收不同详细程度的应用程序活动信息。驱动程序允许您日志按以下严重性级别分类的信息:
unknownfatalerrorwarninfodebug
前面的列表按严重性级别降序排列,其中 unknown 为最高严重性级别。指定严重性级别时,驱动程序还会日志所有具有更高严重性级别的消息。示例,如果将日志级别设立为 error,则驱动程序还将记录严重性级别为 fatal 和 unknown 的消息。
指定的严重性级别越低,驱动程序日志的信息就越多,这可能会影响应用程序的性能。
创建记录器
要将应用程序配置为接收有关驱动程序事件的消息,请创建 Logger 类的实例。(可选)指定日志记录严重性级别。如果不指定严重性级别,默认严重性级别为 INFO。然后,配置 Mongo::Client对象以使用记录器。
以下示例执行以下动作:
创建记录器并将输出记录到
STDOUT。您还可以通过提供文件路径来日志到文件。将严重性级别设置为
DEBUG。配置
Mongo::Client以使用记录器。使用插入操作测试记录器。
require 'mongo' require 'logger' # Create a new Logger instance logger = Logger.new(STDOUT) # You can also log to a file by providing a file path # Set the log level (optional) logger.level = Logger::DEBUG # Options are DEBUG, INFO, WARN, ERROR, FATAL, UNKNOWN # Configures the Mongo client to use the logger client = Mongo::Client.new(['127.0.0.1:27017'], logger: logger) # Tests the logger with an insert operation client[:test_collection].insert_one({ name: 'Test' })
记录器输出包含操作时间、消息的严重性级别和日志消息。
设置全局日志记录级别
您可以设立全局日志记录级别,这样就不必为每个记录器手动设立严重性级别。以下示例显示如何设立全局日志记录级别:
# Sets the logger level globally Mongo::Logger.level == LOGGER.DEBUG
API 文档
有关Ruby驱动程序的记录器选项的更多信息,请参阅以下API文档: