(PECL seaslog >=1.0.0)
SeasLog::log — 通用记录日志函数
$level
,$message
= ?,$content
= ?,$logger
= ?通用记录日志函数。
level
可以使用以下级别的日志:
或者您可以自己创建新的日志级别。message
日志消息。
content
`message` 中包含占位符,实现者会将这些占位符替换为 `content` 数组中的值。例如,`message` 为 `log info from {NAME}`,`content` 为 `array('NAME' => neeke)`,则日志信息将为 `log info from neeke`。
logger
第三个参数指定的 `logger` 将在调用此函数时立即使用,就像一个临时日志器一样,在 `content` 预处理时调用 `SeasLog::setLogger()` 函数。如果 `logger` 为 NULL 或 "",SeasLog 将使用 SeasLog::setLogger() 设置的最后一个日志器。
记录日志信息成功返回 TRUE,失败返回 FALSE。
范例 #1 SeasLog::log() 范例
<?php
var_dump(SeasLog::log(SEASLOG_INFO,'info log'));
var_dump(SeasLog::getBuffer());
//创建新的日志级别
var_dump(SeasLog::log('MySelfLevel','info log'));
var_dump(SeasLog::getBuffer());
//使用 `content`
var_dump(SeasLog::log('MySelfLevel','info log {NAME}',array('NAME' => 'neeke')));
var_dump(SeasLog::getBuffer());
//使用 `logger`
var_dump(SeasLog::log('MySelfLevel','info log {NAME}',array('NAME' => 'neeke'),'tmp_logger'));
var_dump(SeasLog::getBuffer());
?>
上面的例子将输出类似于
bool(true) array(1) { ["/var/log/www/default/20180707.log"]=> array(1) { [0]=> string(79) "2018-07-07 11:12:37 | INFO | 72427 | 5b402fa56a2ea | 1530933157.436 | info log " } } bool(true) array(1) { ["/var/log/www/default/20180707.log"]=> array(1) { [0]=> string(86) "2018-07-07 11:13:59 | MySelfLevel | 72470 | 5b402ff781c5e | 1530933239.532 | info log " } } bool(true) array(1) { ["/var/log/www/tmp_logger/20180707.log"]=> array(1) { [0]=> string(92) "2018-07-07 11:28:12 | MySelfLevel | 72833 | 5b40334ce6a2f | 1530934092.946 | info log neeke " } } bool(true) array(1) { ["/var/log/www/default/20180707.log"]=> array(1) { [0]=> string(86) "2018-07-07 11:20:12 | INFO | 72616 | 5b40316c3641e | 1530933612.222 | info log neeke " } }