Функция logger
Функция logger записывает переданное значение в лог-систему Laravel. В качестве первого параметра передаётся сообщение или данные для записи, вторым необязательным параметром можно указать массив дополнительных контекстных данных. Функция возвращает экземпляр логгера, что позволяет строить цепочки вызовов.
Синтаксис
<?php
logger($message, $context);
?>
Пример
Давайте запишем простое текстовое сообщение в лог:
<?php
use Illuminate\Support\Facades\Log;
$res = logger('User logged in successfully');
// Результат будет записан в storage/logs/laravel.log
?>
Пример
Давайте запишем сообщение с дополнительными контекстными данными:
<?php
use Illuminate\Support\Facades\Log;
$userData = [
'id' => 1,
'role' => 'admin'
];
$res = logger('User profile updated', $userData);
?>
Пример
Функция logger может использоваться для записи переменных различного типа:
<?php
use Illuminate\Support\Facades\Log;
// Запись строки
$res = logger('Processing request');
// Запись массива
$data = ['a', 'b', 'c'];
$res = logger($data);
// Запись числа
$count = 100;
$res = logger($count);
?>
Пример
Функция logger возвращает экземпляр логгера, что позволяет использовать цепочки вызовов:
<?php
use Illuminate\Support\Facades\Log;
$res = logger('Starting process')
->info('Additional info')
->debug('Debugging info');
?>
Пример
Запись сообщения с уровнем важности в контроллере:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\User;
class UserController extends Controller
{
public function store(Request $request)
{
$user = new User;
$user->name = $request->input('name');
$user->email = $request->input('email');
$user->save();
logger('User created successfully', [
'user_id' => $user->id,
'email' => $user->email
]);
return response()->json(['message' => 'User created']);
}
}
?>