mirror of
https://github.com/BookStackApp/BookStack.git
synced 2024-11-30 04:33:41 +08:00
2ed0317129
- Added testing to cover. - Linked logging into Laravel's monolog logging system and made log channel configurable. - Updated env var names to be specific to login access. - Added extra locations as to where failed logins would be captured. Related to #1881 and #728
113 lines
3.3 KiB
PHP
113 lines
3.3 KiB
PHP
<?php
|
|
|
|
use Monolog\Formatter\LineFormatter;
|
|
use Monolog\Handler\ErrorLogHandler;
|
|
use Monolog\Handler\NullHandler;
|
|
use Monolog\Handler\StreamHandler;
|
|
|
|
/**
|
|
* Logging configuration options.
|
|
*
|
|
* Changes to these config files are not supported by BookStack and may break upon updates.
|
|
* Configuration should be altered via the `.env` file or environment variables.
|
|
* Do not edit this file unless you're happy to maintain any changes yourself.
|
|
*/
|
|
|
|
return [
|
|
|
|
// Default Log Channel
|
|
// This option defines the default log channel that gets used when writing
|
|
// messages to the logs. The name specified in this option should match
|
|
// one of the channels defined in the "channels" configuration array.
|
|
'default' => env('LOG_CHANNEL', 'single'),
|
|
|
|
// Log Channels
|
|
// Here you may configure the log channels for your application. Out of
|
|
// the box, Laravel uses the Monolog PHP logging library. This gives
|
|
// you a variety of powerful log handlers / formatters to utilize.
|
|
// Available Drivers: "single", "daily", "slack", "syslog",
|
|
// "errorlog", "monolog",
|
|
// "custom", "stack"
|
|
'channels' => [
|
|
'stack' => [
|
|
'driver' => 'stack',
|
|
'channels' => ['daily'],
|
|
'ignore_exceptions' => false,
|
|
],
|
|
|
|
'single' => [
|
|
'driver' => 'single',
|
|
'path' => storage_path('logs/laravel.log'),
|
|
'level' => 'debug',
|
|
'days' => 14,
|
|
],
|
|
|
|
'daily' => [
|
|
'driver' => 'daily',
|
|
'path' => storage_path('logs/laravel.log'),
|
|
'level' => 'debug',
|
|
'days' => 7,
|
|
],
|
|
|
|
'slack' => [
|
|
'driver' => 'slack',
|
|
'url' => env('LOG_SLACK_WEBHOOK_URL'),
|
|
'username' => 'Laravel Log',
|
|
'emoji' => ':boom:',
|
|
'level' => 'critical',
|
|
],
|
|
|
|
'stderr' => [
|
|
'driver' => 'monolog',
|
|
'handler' => StreamHandler::class,
|
|
'with' => [
|
|
'stream' => 'php://stderr',
|
|
],
|
|
],
|
|
|
|
'syslog' => [
|
|
'driver' => 'syslog',
|
|
'level' => 'debug',
|
|
],
|
|
|
|
'errorlog' => [
|
|
'driver' => 'errorlog',
|
|
'level' => 'debug',
|
|
],
|
|
|
|
// Custom errorlog implementation that logs out a plain,
|
|
// non-formatted message intended for the webserver log.
|
|
'errorlog_plain_webserver' => [
|
|
'driver' => 'monolog',
|
|
'level' => 'debug',
|
|
'handler' => ErrorLogHandler::class,
|
|
'handler_with' => [4],
|
|
'formatter' => LineFormatter::class,
|
|
'formatter_with' => [
|
|
'format' => "%message%",
|
|
],
|
|
],
|
|
|
|
'null' => [
|
|
'driver' => 'monolog',
|
|
'handler' => NullHandler::class,
|
|
],
|
|
|
|
// Testing channel
|
|
// Uses a shared testing instance during tests
|
|
// so that logs can be checked against.
|
|
'testing' => [
|
|
'driver' => 'testing',
|
|
],
|
|
],
|
|
|
|
|
|
// Failed Login Message
|
|
// Allows a configurable message to be logged when a login request fails.
|
|
'failed_login' => [
|
|
'message' => env('LOG_FAILED_LOGIN_MESSAGE', null),
|
|
'channel' => env('LOG_FAILED_LOGIN_CHANNEL', 'errorlog_plain_webserver'),
|
|
],
|
|
|
|
];
|