2024 年日本 PHP 研討會

SeasLog::log

(PECL seaslog >=1.0.0)

SeasLog::log通用紀錄日誌函式

說明

public static SeasLog::log(
    字串 $level,
    字串 $message = ?,
    陣列 $content = ?,
    字串 $logger = ?
): 布林值

通用紀錄日誌函式。

參數

級別

可在以下級別中使用

或者您可以自行創建新的級別。

訊息 (message)

日誌訊息。

內容 (content)

`message` 包含佔位符,實作者會用 `content` 陣列中的值替換這些佔位符。例如,如果 `message` 是 `log info from {NAME}` 且 `content` 是 `array('NAME' => neeke)`,則日誌資訊將會是 `log info from neeke`。

記錄器 (logger)

由第三個參數指定的 `logger` 會像一個臨時記錄器一樣被立即使用,當函數 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
"
  }
}

另請參閱

新增筆記

使用者貢獻的筆記

此頁面沒有使用者貢獻的筆記。
To Top