(PECL seaslog >=1.1.6)
SeasLog::analyzerCount — 按级别、日志路径和关键词获取日志计数
$level, string $log_path = ?, string $key_word = ?): mixed`SeasLog` 使用系统管道获取 `grep -ai '{level}' | grep -aic '{key_word}'` 的计数值并返回到 PHP(数组或整数)。
level字符串。日志信息级别。
log_path字符串。日志信息路径。
key_word字符串。日志信息的搜索关键词。
如果 `level` 为 SEASLOG_ALL 或空,则返回所有级别的计数作为 `array`。如果 `level` 为 SEASLOG_INFO 或其他级别,则返回计数为 `int`。
示例 #1 SeasLog::analyzerCount() 示例
<?php
$countResult1 = SeasLog::analyzerCount();
//带 `level`
$countResult2 = SeasLog::analyzerCount(SEASLOG_DEBUG);
//带 `level` 和 `log_path`
$countResult3 = SeasLog::analyzerCount(SEASLOG_ERROR,date('Ymd',time()));
//带 `level` 和 `key_word`
$countResult4 = SeasLog::analyzerCount(SEASLOG_DEBUG,NULL,'accessToken');
var_dump($countResult1,$countResult2,$countResult3,$countResult4);
?>以上示例的输出类似于
array(8) {
["DEBUG"]=>
int(180)
["INFO"]=>
int(214)
["NOTICE"]=>
int(0)
["WARNING"]=>
int(0)
["ERROR"]=>
int(228)
["CRITICAL"]=>
int(244)
["ALERT"]=>
int(1)
["EMERGENCY"]=>
int(0)
}
int(180)
int(228)
int(29)