linkorb / app-event
Provides a way for applications to integrate a standard scheme for logging Application Events
Requires
- php: >=8.0.3
- monolog/monolog: ^1.24 || ^2
- psr/log: ^1.0
Requires (Dev)
- symfony/phpunit-bridge: ^5.4
README
This library provides a way for applications to integrate a standard scheme for logging Application Events. Specifically, it provides:
-
AppEventFormatter, which:
-
normalises Monolog log records to the structure required for LinkORB Application Events and
-
formats the log records as Newline Delimited JSON (ndjson)
-
-
AppEventLoggerAwareInterface which describes a method (
setAppEventLogger
) by which an Application Event Logger may be injected into services and controllers which need to log Application Events -
AppEventLoggerInterface which describes a method (
log
) by which services may log Application Events -
AppEventLoggerTrait which provides implementations of AppEventLoggerAwareInterface and AppEventLoggerInterface
An example:-
class MyService implements AppEventLoggerAwareInterface, AppEventLoggerInterface { use AppEventLoggerTrait; public function doSomething() { // ... do something ... $this->log('something.was.done', ['some-info' => '...', 'more' => ...]); } }