maduser / argon-monolog
Monolog integration for the Argon runtime stack.
v1.0.0
2026-05-25 16:07 UTC
Requires
- php: ^8.2
- maduser/argon-container: ^1.0
- monolog/monolog: ^3.0
- psr/log: ^3.0
Requires (Dev)
- dealerdirect/phpcodesniffer-composer-installer: ^1.1
- phpunit/phpunit: ^11.5
- slevomat/coding-standard: ^8.24
- squizlabs/php_codesniffer: ^4.0
- vimeo/psalm: ^6.13
README
Monolog integration for the Argon runtime stack.
Installation
composer require maduser/argon-monolog
Register
use Maduser\Argon\Monolog\Provider\MonologServiceProvider; $container->register(MonologServiceProvider::class);
The provider registers:
Monolog\LoggerPsr\Log\LoggerInterfaceMaduser\Argon\Monolog\Config\MonologConfig
LoggerInterface resolves to the same shared Monolog\Logger instance.
Configuration
The default logger uses channel argon, writes to php://stderr, and accepts
all records at debug level and above.
You can configure it through container parameters before registering the provider:
use Maduser\Argon\Monolog\Config\MonologParameter; use Maduser\Argon\Monolog\Provider\MonologServiceProvider; $parameters = $container->getParameters(); $parameters->set(MonologParameter::CHANNEL, 'app'); $parameters->set(MonologParameter::STREAM, '/path/to/storage/logs/app.log'); $parameters->set(MonologParameter::LEVEL, 'info'); $parameters->set(MonologParameter::BUBBLE, true); $container->register(MonologServiceProvider::class);
Supported log levels:
debuginfonoticewarningerrorcriticalalertemergency
Integer Monolog level values are also accepted.
Override
For custom setup, register your own MonologConfig, Monolog\Logger, or
Psr\Log\LoggerInterface binding before registering the provider. Existing
bindings are not replaced.
Quality Gates
composer check composer test:coverage composer psalm composer phpcs