parseword / logger
实现文本文件日志功能的 PHP 类
Requires
- php: >=7.0
This package is auto-updated.
Last update: 2024-09-26 14:16:18 UTC
README
Logger 是一个 PHP 文本文件日志功能,作为单例实现。它没有什么特别之处,但我正在将一个更大的代码库分解成独立的组件,并且我需要将这个功能放在自己的仓库中。
用法
在 4 个简单步骤中实现 Logger
-
要么
composer require parseword/logger
,要么将Logger.php
文件复制到您的项目中。 -
确保
Logger.php
可以被您的自动加载器发现,或者手动使用require_once
。 -
在整个应用程序代码中,调用
Logger::debug()
、Logger::info()
、Logger::warning()
和Logger::error()
来发送不同严重程度的日志消息。 -
在您的应用程序配置文件或公共包含文件中,您(或用户)调用 Logger::setFilename() 来设置日志文件,并调用 Logger::setSeverityFilter() 来指定哪些日志消息写入磁盘。
示例
在以下示例中,创建了一个名为 /tmp/my.log
的文件。严重性过滤器被设置为只写入严重性为 WARNING 或更高的消息。严重性较低的消息将被忽略。
<?php //Set up the logger in your config or global include file use parseword\logger\Logger; Logger::setFilename('/tmp/my.log'); Logger::setSeverityFilter(Logger::SEVERITY_WARNING); Logger::setLabel('myCoolApp'); //Call the static Logger methods throughout your application code Logger::info("Somebody set us up the bomb."); Logger::debug("Main screen turn on."); Logger::warning("All your base are belong to us."); Logger::info("You have no chance to survive make your time."); Logger::error("Unable to move 'ZIG', aborting");
/tmp/my.log
的内容如下所示
[2019-01-25,14:40:13.797 CST] WARN: myCoolApp: All your base are belong to us.
[2019-01-25,14:40:13.797 CST] ERROR: myCoolApp: Unable to move 'ZIG', aborting
检查或运行包含的 test.php
文件以获取更多示例。
方法概述
这些方法用于配置 Logger
-
setCollapseEntries()
- 是否用空格替换日志条目中的换行符,将每个条目限制为单行。默认为 true。 -
setDateFormat()
- 设置用于标记日志消息的日期格式。 -
setFilename()
- 设置日志文件的文件系统路径和文件名。 -
setLabel()
- 设置可选的文本字符串以包含在日志消息中。如果您的应用程序的每个实例都有一个唯一的 ID,则在此处设置可以帮助跟踪和故障排除。 -
setSeverityFilter()
- 设置写入文件的日志消息类型。
这些方法控制日志记录器的功能
-
debug()
- 发送严重度为 DEBUG 的日志消息。 -
error()
- 发送严重度为 ERROR 的日志消息。 -
warning()
- 发送严重度为 WARNING 的日志消息。 -
info()
- 发送严重度为 INFO 的日志消息。 -
truncate()
- 截断日志文件,清除任何以前的条目。
需求
Logger 类需要 PHP7 来支持标量类型声明。
错误
目前没有。