175人参与 • 2024-05-12 • Delphi
quick logger 强大的企业级异步记录器
这是一个用于在文件、控制台、内存、电子邮件、rest、事件日志、syslog、slack、telegram、redis、logstash、elasticsearch、influxdb、graylog、sentry、twilio 上记录日志,并为 delphi firemonkey(适用于 windows/linux/osx/ios/android)抛出事件的库。
quick logger 是异步的。所有日志都被发送到队列中,不会影响您的应用程序流程。您可以定义许多提供者来发送每个日志条目,并决定每个人可以接受什么级别。
program {$apptype console} uses quick.logger, // 使用quick logger库 quick.logger.provider.files, // 使用文件日志提供者 quick.logger.provider.console; // 使用控制台日志提供者 begin // 添加日志文件和控制台提供者 logger.providers.add(globallogfileprovider); logger.providers.add(globallogconsoleprovider); // 配置提供者选项 with globallogfileprovider do begin filename := '.logger.log'; // 设置日志文件名 dailyrotate := true; // 启用每日轮换 maxfilesizeinmb := 20; // 设置最大文件大小为20mb loglevel := log_all; // 设置日志级别为全部 enabled := true; // 启用提供者 end; with globallogconsoleprovider do begin loglevel := log_debug; // 为控制台提供者设置日志级别为调试 showeventcolors := true; // 显示事件颜色 enabled := true; // 启用提供者 end; log('test entry', etinfo); // 记录一个信息级别的日志条目 log('test number: %d', [1], etwarning); // 记录一个警告级别的日志条目,包含数字1 end.
quicklogger 自动管理 logger 和 providers
logger 和 providers 有一个全局类,该类在应用程序关闭时会自动创建和释放。您只需要将所需的提供者添加到 uses 子句中。
您可以在日志中定义一系列事件类型:etheader、etinfo、etsuccess、etwarning、eterror、etcritical、etexception、etdebug、ettrace、etcustom1、etcustom2。
每个日志提供者都可以配置为监听这些事件类型中的一个或多个,并限制每天、每小时、每分钟或每秒接收的事件类型数量,以避免性能问题或垃圾邮件。
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论