logger.global.php 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. declare(strict_types=1);
  3. namespace Shlinkio\Shlink;
  4. use Monolog\Handler\RotatingFileHandler;
  5. use Monolog\Handler\StreamHandler;
  6. use Monolog\Logger;
  7. use Monolog\Processor;
  8. use const PHP_EOL;
  9. return [
  10. 'logger' => [
  11. 'formatters' => [
  12. 'dashed' => [
  13. 'format' => '[%datetime%] %channel%.%level_name% - %message%' . PHP_EOL,
  14. 'include_stacktraces' => true,
  15. ],
  16. ],
  17. 'handlers' => [
  18. 'shlink_rotating_handler' => [
  19. 'class' => RotatingFileHandler::class,
  20. 'level' => Logger::INFO,
  21. 'filename' => 'data/log/shlink_log.log',
  22. 'max_files' => 30,
  23. 'formatter' => 'dashed',
  24. ],
  25. 'swoole_access_handler' => [
  26. 'class' => StreamHandler::class,
  27. 'level' => Logger::INFO,
  28. 'stream' => 'php://stdout',
  29. ],
  30. ],
  31. 'processors' => [
  32. 'exception_with_new_line' => [
  33. 'class' => Common\Logger\Processor\ExceptionWithNewLineProcessor::class,
  34. ],
  35. 'psr3' => [
  36. 'class' => Processor\PsrLogMessageProcessor::class,
  37. ],
  38. ],
  39. 'loggers' => [
  40. 'Shlink' => [
  41. 'handlers' => ['shlink_rotating_handler'],
  42. 'processors' => ['exception_with_new_line', 'psr3'],
  43. ],
  44. 'Swoole' => [
  45. 'handlers' => ['swoole_access_handler'],
  46. 'processors' => ['psr3'],
  47. ],
  48. ],
  49. ],
  50. 'dependencies' => [
  51. 'factories' => [
  52. 'Logger_Shlink' => Common\Factory\LoggerFactory::class,
  53. 'Logger_Swoole' => Common\Factory\LoggerFactory::class,
  54. ],
  55. ],
  56. 'zend-expressive-swoole' => [
  57. 'swoole-http-server' => [
  58. 'logger' => [
  59. 'logger-name' => 'Logger_Swoole',
  60. ],
  61. ],
  62. ],
  63. ];