- 1. 概要
- 2. 出力
- 3. 工夫
1. 概要
わはは、ソースコードに埋め込んで、ログを出力する方法について、書いてなかったな、簡単なので忘れそうになかったので、わざわざ書いてなかったのです。
2. 出力
「.blade.php」に、下記を記述したり
@inject('Log', 'Illuminate\Support\Facades\Log')
「app/*.php」に、下記を記述することで
use Illuminate\Support\Facades\Log;
実行文として
Log::info("message");
と書けば、実行すると
/プロジェクトパス/storage/logs/laravel.log
に下記のログが出力されます。
[2021-09-01 12:03:59] local.INFO: message
ログの種類は、下記のものがあります。
Log::debug("message");
Log::warning("message");
Log::notice("message");
Log::error("message");
3. 工夫
「Laravel」のログは、出力し始めると、やたら出力されて、どこで出力するかわからなかったり、区切りが分からなかったりするもので。
例えば、下記のように工夫して出力しています。
Log::debug(__DIR__);
Log::debug(basename(__FILE__).' '.__FUNCTION__.' '.__LINE__.' any_message'.PHP_EOL);
配列のデータは、さらに工夫して。
ob_start();
var_export($array);
$text=ob_get_contents();
ob_end_clean();
Log::debug(__LINE__.' $config['.$text.']'.PHP_EOL);
トレースを出力する際は。
$trace = debug_backtrace();
foreach($trace as $line)
{
Log::debug("{$line["file"]}: line {$line["line"]}");
}
Log::debug(PHP_EOL);
てな感じで出力しています。
|