dafiti/ logging-helper
Dafiti Logging Helper
该包的官方仓库似乎已消失,因此该包已被冻结。
0.0.5
2015-10-29 19:41 UTC
Requires
- php: >=5.5.0
- monolog/monolog: ~1.17.1
Requires (Dev)
- fabpot/php-cs-fixer: @stable
- mikey179/vfsstream: 1.2.0
- phpunit/phpunit: @stable
README
前言
此助手应适用于所有工作单元,所有生成的日志都将发送到Newrelic(如果启用并配置)以及以LogstashFormatter格式化的文件系统。
安装
该包可在Packagist上找到。自动加载与PSR-4兼容。
{ "require": { "dafiti/logging-helper": "0.0.4" } }
最小日志级别默认为\Monolog\Logger::ERROR,当省略第三个参数时,这将是最小日志级别。所有低于此日志级别的消息(例如:\Monolog\Logger::DEBUG)将不会记录,因为最小日志级别更高。
用法
基本
日志消息
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->log(<log level>, '<log message>');
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"<log level>"}
日志消息和更多值
您可以发送一个键值对数组
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->log(<log level>, '<log message>', [<key-value-pair>]);
示例
$values = ['string' => 'value', 'int' => 10, 'float' => 10.0, 'bool' => true, 'resource' => null, 'object' => (new stdClass()), 'sub-array' => range('A', 'D')]; $logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->log(<log level>, '<log message>', $values);
输出
{"@timestamp":"2015-09-16T14:51:42.636524-03:00","@version":1,"host":"7dd53b17bdec","message":"<log message>","type":"<log name>","channel":"<log name>","level":"<log level>","string":"value","int":10,"float":10,"bool":true,"resource":null,"object":"[object] (stdClass: {})","sub-array":["A","B","C","D","E"]}
替代
除了日志方法之外,您还可以使用添加方法
调试
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->debug('<log message>', [<key-value-pair>]); // or $logger->addDebug('<log message>', [<key-value-pair>]);
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"DEBUG"}
信息
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->info('<log message>', [<key-value-pair>]); // or $logger->addInfo('<log message>', [<key-value-pair>]);
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"INFO"}
通知
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->notice('<log message>', [<key-value-pair>]); // or $logger->addNotice('<log message>', [<key-value-pair>]);
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"NOTICE"}
警告或警告
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->warning('<log message>', [<key-value-pair>]); // or $logger->addWarning('<log message>', [<key-value-pair>]);
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"WARNING"}
错误
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->error('<log message>', [<key-value-pair>]); // or $logger->addError('<log message>', [<key-value-pair>]);
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"ERROR"}
临界
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->critical('<log message>', [<key-value-pair>]); // or $logger->addCritical('<log message>', [<key-value-pair>]);
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"CRITICAL"}
警告
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->alert('<log message>', [<key-value-pair>]); // or $logger->addAlert('<log message>', [<key-value-pair>]);
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"ALERT"}
紧急
$logger = (new \Dafiti\Log\Factory())->createInstance('<log name>', '<log path/filename>'); $logger->emergency('<log message>', [<key-value-pair>]); // or $logger->addEmergency('<log message>', [<key-value-pair>]);
输出
{"@timestamp":"2015-09-16T13:41:15.626418-03:00","@version":1,"host":"server01","message":"<log message>","type":"<log name>","channel":"<log name>","level":"EMERGENCY"}
<日志名称>样本
- alice
- bob
- 结账
- 支付
- mobileapi
- braspag
- adyen
- 其他
<日志路径/文件名>
使用默认日志路径
<日志级别>可用
类型 | 用法 | 日志代码 | 替代方法 | 描述 | 何时使用 |
---|---|---|---|---|---|
调试 | \Monolog\Logger::DEBUG |
100 | addDebug() 或 debug() | 详细的调试信息 | |
信息 | \Monolog\Logger::INFO |
200 | addInfo() 或 info() | 有趣的事件 | 用户登录,SQL日志 |
注意 | \Monolog\Logger::NOTICE |
250 | addNotice() 或 notice() | 不寻常的事件 | |
警告 | \Monolog\Logger::WARNING |
300 | addWarning() 或 warning() | 异常事件,但不是错误 | 弃用的API的使用,API的较差使用,可能不是错误的不良行为 |
错误 | \Monolog\Logger::ERROR |
400 | addError() 或 error() | 运行时错误 | |
严重 | \Monolog\Logger::CRITICAL |
500 | addCritical() 或 critical() | 严重条件 | 应用程序组件不可用,意外异常 |
警报 | \Monolog\Logger::ALERT |
550 | addAlert() 或 alert() | 必须立即采取行动 | 整个网站崩溃,数据库不可用等。这应该触发短信警报并叫醒您 |
紧急 | \Monolog\Logger::EMERGENCY |
600 | addEmergency() 或 emergency() | 紧急警报 | 这仅在API故障修复完成后才会提高,并应遵循库的主要版本 |
<日志消息>
要记录的消息
许可
MIT许可