(PECL seaslog >=1.1.6)
SeasLog::analyzerDetail — 通过 level、log_path、key_word、start、limit 和 order 获取日志详情
$level
,$log_path
= ?,$key_word
= ?,$start
= ?,$limit
= ?,$order
= ?`SeasLog` 使用系统管道获取 `grep -ai '{level}' | grep -ai '{key_word}' | sed -n '{start},{limit}'p` 的结果,并将数组返回到 PHP。
level
字符串。日志信息级别。
log_path
字符串。日志信息路径。
key_word
字符串。日志信息的搜索关键词。
start
整数。默认值为 `1`。
limit
整数。默认值为 `20`。
order
整数。默认值为 SEASLOG_DETAIL_ORDER_ASC。另请参见
将结果作为数组返回。
注意:
当 `start`、`limit` 不为 NULL 且在 Windows 上时,SeasLog 将抛出异常,并显示消息 'Param start and limit don't support Windows'。
示例 #1 SeasLog::analyzerDetail() 示例
<?php
$result1 = SeasLog::analyzerDetail(SEASLOG_ERROR);
// 使用 `logger` 和 `key_word`
$result2 = SeasLog::analyzerDetail(SEASLOG_ERROR,'test/logger/','neeke');
// 使用 `start` 和 `limit`
$result3 = SeasLog::analyzerDetail(SEASLOG_ERROR,'test/logger/','neeke',1,2);
var_dump($result1,$result2,$result3);
?>
上面的示例将输出类似于
array(20) { [0]=> string(93) "2018-07-09 12:52:53 | ERROR | 12247 | 5b42ea2580e51 | 1531111973.528 | log message from neeke" [1]=> string(93) "2018-07-09 12:52:54 | ERROR | 12256 | 5b42ea26d6657 | 1531111974.878 | log message from neeke" [2]=> string(93) "2018-07-09 12:52:55 | ERROR | 12265 | 5b42ea277b8d4 | 1531111975.506 | log message from neeke" [3]=> string(104) "2018-07-09 12:52:55 | ERROR | 12274 | 5b42ea27db5dc | 1531111975.898 | log message from the other people" ... } array(3) { [0]=> string(93) "2018-07-09 12:52:53 | ERROR | 12247 | 5b42ea2580e51 | 1531111973.528 | log message from neeke" [1]=> string(93) "2018-07-09 12:52:54 | ERROR | 12256 | 5b42ea26d6657 | 1531111974.878 | log message from neeke" [2]=> string(93) "2018-07-09 12:52:55 | ERROR | 12265 | 5b42ea277b8d4 | 1531111975.506 | log message from neeke" } array(2) { [0]=> string(93) "2018-07-09 12:52:53 | ERROR | 12247 | 5b42ea2580e51 | 1531111973.528 | log message from neeke" [1]=> string(93) "2018-07-09 12:52:54 | ERROR | 12256 | 5b42ea26d6657 | 1531111974.878 | log message from neeke" }