This bundle keeps track of correlation-id which makes it easier to track requests across microservices.
- Creates unique correlation ID
- Picks up x-correlation-id from incoming HTTP requests which becomes the parent correlation id
- Includes Monolog processor to automatically write correlation id and parent id to log messages
- Includes Messenger middleware to automatically write correlation id to outgoing messages and read id from incoming messages
- HttpClient middleware
- Configuration
- More tests
- Symfony 5.1+
- PHP 7.2+
- composer
Make sure Composer is installed globally, as explained in the installation chapter of the Composer documentation.
Add following repository to your composer.json
"repositories": [
{
"type": "vcs",
"url": "git@github.com:Jontsa/CorrelationIdBundle.git"
}
]
Open a command console, enter your project directory and execute:
$ composer require jontsa/correlation-id-bundle:dev-master
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
$ composer require jontsa/correlation-id-bundle:dev-master
Then, enable the bundle by adding it to the list of registered bundles
in the config/bundles.php
file of your project:
// config/bundles.php
return [
// ...
Jontsa\Bundle\CorrelationIdBundle\JontsaCorrelationIdBundle::class => ['all' => true],
];
The bundle automatically starts listening for request events and registers monolog processor. To enable messenger middleware, configure it in messenger.yaml:
# config/packages/messenger.yaml
framework:
messenger:
buses:
messenger.bus.default:
middleware:
- 'jontsa.correlation_id.messenger_middleware'