https://github.com/the-alex-mark/laravel-logging
Дополнительные реализации форматов журнала для проектов «Laravel»
https://github.com/the-alex-mark/laravel-logging
laravel laravel-package logging
Last synced: 9 months ago
JSON representation
Дополнительные реализации форматов журнала для проектов «Laravel»
- Host: GitHub
- URL: https://github.com/the-alex-mark/laravel-logging
- Owner: the-alex-mark
- License: mit
- Created: 2021-11-15T07:43:58.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2025-09-11T17:08:42.000Z (10 months ago)
- Last Synced: 2025-10-13T22:36:35.329Z (9 months ago)
- Topics: laravel, laravel-package, logging
- Language: PHP
- Homepage:
- Size: 43 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
README
# Laravel Logging
Дополнительные реализации форматов журнала для проектов «**Laravel**».
## Установка
```bash
composer require the_alex_mark/laravel-logging
```
## Использование
### Логирование в формате JSON
Класс «**CustomizeJsonLogger**» построен на базе драйвера «**daily**» и поддерживает все его параметры. Дополнительно позволяет указать список процессоров для включения в записи журнала дополнительной информации.
```php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Monolog\Processor\HostnameProcessor;
use Monolog\Processor\WebProcessor;
use ProgLib\Logging\Via\CustomizeJsonLogger;
class AppServiceProvider extends ServiceProvider {
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot() {
$this->app->get('config')->set("logging.channels.custom", [
'name' => 'custom',
'driver' => 'custom',
'via' => CustomizeJsonLogger::class,
'path' => storage_path("logs/json/laravel.json"),
'level' => 'debug',
'permission' => 0755,
'locking' => true,
'days' => 30,
'processors' => [
HostnameProcessor::class,
WebProcessor::class
]
]);
}
}
```
### Логирование в формате LINE с форматированным контекстом
```php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use ProgLib\Logging\Taps\CustomizeLineFormatter;
class AppServiceProvider extends ServiceProvider {
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot() {
$this->app->get('config')->set("logging.channels.custom", [
'name' => 'custom',
'driver' => 'daily',
'path' => storage_path("logs/laravel.log"),
'level' => 'debug',
'permission' => 0755,
'locking' => true,
'days' => 30,
'tap' => [ CustomizeLineFormatter::class ]
]);
}
}
```