(PECL seaslog >=1.1.6)
SeasLog::analyzerCount — Get log count by level, log_path and key_word
$level
[, string $log_path
[, string $key_word
]] ) : mixed`SeasLog` get count value of `grep -ai '{level}' | grep -aic '{key_word}'` use system pipe and return to PHP (array or int).
level
String. The log information level.
log_path
String. The log information path.
key_word
String. The search key word for log information.
If `level` is SEASLOG_ALL or Empty, return all levels count as `array`. If `level` is SEASLOG_INFO or the other level, return count as `int`.
Example #1 SeasLog::analyzerCount() example
<?php
$countResult1 = SeasLog::analyzerCount();
//with `level`
$countResult2 = SeasLog::analyzerCount(SEASLOG_DEBUG);
//with `level` and `log_path`
$countResult3 = SeasLog::analyzerCount(SEASLOG_ERROR,date('Ymd',time()));
//with `level` and `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)