Метод debug
Метод debug класса Log применяется для записи сообщений с уровнем "debug" в лог-систему Laravel. Этот уровень предназначен для детальной отладочной информации, которая помогает разработчикам отслеживать выполнение кода и находить ошибки. Первым параметром передаётся сообщение для записи, вторым - массив контекстных данных. Метод автоматически добавляет временную метку и уровень важности к каждой записи.
Синтаксис
<?php
use Illuminate\Support\Facades\Log;
Log::debug($message, $context);
?>
Пример
Давайте запишем простое отладочное сообщение в лог:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Log;
class DebugController extends Controller
{
public function index()
{
Log::debug('User visited the index page');
return view('debug.index');
}
}
?>
Результат выполнения кода (в файле storage/logs/laravel.log):
"[2024-01-15 10:30:00] local.DEBUG: User visited the index page"
Пример
Давайте запишем отладочное сообщение с контекстными данными:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Log;
use App\Models\User;
class UserController extends Controller
{
public function show($id)
{
$user = User::find($id);
Log::debug('User data retrieved', [
'user_id' => $user->id,
'user_email' => $user->email,
'request_time' => now()->toDateTimeString()
]);
return view('user.show', ['user' => $user]);
}
}
?>
Результат выполнения кода (в файле storage/logs/laravel.log):
"[2024-01-15 10:35:00] local.DEBUG: User data retrieved {"user_id":1,"user_email":"john@example.com","request_time":"2024-01-15 10:35:00"}"
Пример
Давайте запишем отладочное сообщение с массивом данных в контексте:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Log;
class OrderController extends Controller
{
public function process($orderId)
{
$orderData = [
'id' => $orderId,
'items' => ['item1', 'item2', 'item3'],
'total' => 150.50
];
Log::debug('Processing order', $orderData);
return ['status' => 'success'];
}
}
?>
Результат выполнения кода (в файле storage/logs/laravel.log):
"[2024-01-15 10:40:00] local.DEBUG: Processing order {"id":123,"items":["item1","item2","item3"],"total":150.5}"