PHP - ログ- Laravel ログ 出力


 クラウディア


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);
 てな感じで出力しています。

AbemaTV 無料体験