onnerby / doelogger
JSON日志写入器/读取器
1.0
2023-01-02 10:54 UTC
README
PHP的JSON日志记录器 有时候你需要记录一些东西 - 但你可能需要在以后读取日志,并能以很好的方式解释日志内容。这正是JSON发挥作用的地方,因为你可以通过简单的方式序列化和反序列化。日志使用文件锁来防止文件损坏。
\Doe\Logger
Doe\Logger 是为了使数据记录和读取变得非常简单而设计的。
安装
composer require onnerby/doelogger
基本示例
// Initialize the log by \Doe\Logger::addDefaultStream('/var/log/mylog') // The anywhere in your code \Doe\Logger::write('adduser', 'Added a new user', $user);
这将创建一个名为 adduser
的日志条目,并使用提供的数据。记录器将在 /var/log/mylog_2023-01-02.json
文件(如果尚未存在)中创建一个文件,并在该日志中写入一个类似以下内容的JSON条目
{ "when": 1672656212.123, "type": "adduser", "content": [ ... ] }
读取
// Initialize the log by \Doe\Logger::addDefaultStream('/var/log/mylog') // Get a reader for the last 24 hours $logReader = \Doe\Logger::reader('default', microtime(true) - 60*60*24); // Loop through the log foreach ($logReader as $logEntry) { echo "Log " . date('Y-m-d H:i:s', $logEntry['when']) . ' ' . $logEntry['type'] . "\n"; echo " User: " . json_encode($logEntry['content'][0]) . "\n"; }