chocofamilyme/laravel-jaeger
| Install | |
|---|---|
composer require chocofamilyme/laravel-jaeger |
|
| Latest Version: | 3.0.0 |
| PHP: | ^8.0 |
| License: | MIT |
| Last Updated: | Jul 26, 2024 |
| Links: | GitHub · Packagist |
Laravel Jaeger wrapper
Requirements
- PHP ^8.0
- Laravel ^9.0
Installation
You can install the package via composer:
composer require chocofamilyme/laravel-jaeger
You can publish the config file with:
php artisan vendor:publish --provider="Chocofamilyme\LaravelJaeger\LaravelJaegerServiceProvider" --tag="config"
Basic Usage
- You need to inject
\Chocofamilyme\LaravelJaeger\Jaegerclass by DI - Start new span by command
$jaeger->start('Some operation', [
'tag1' => 'test',
'tag2' => 'test'
]);
- do some stuff
- (optional) stop span
$jaeger->stop('Some operation', [
'tag3' => 'test',
]);
All unstopped spans will be automatically stopped when application is terminated
Controlling the rate of traces
In the configuration file you may modify JAEGER_SAMPLE_RATE variable to configure the rate. The variable accepts values from 0 to 1.
For example, if you set 0.1 then only 10% of all traces is displayed. Set 1 to output them all.
Listeners
There are 4 available listeners, they are disabled by default, you can turn on or write your own implementation for this listeners in config file
'listeners' => [
'http' => [
'enabled' => env('JAEGER_HTTP_LISTENER_ENABLED', false),
'handler' => \Chocofamilyme\LaravelJaeger\JaegerMiddleware::class,
],
'console' => [
'enabled' => env('JAEGER_CONSOLE_LISTENER_ENABLED', false),
'handler' => \Chocofamilyme\LaravelJaeger\Listeners\CommandListener::class,
],
'query' => [
'enabled' => env('JAEGER_QUERY_LISTENER_ENABLED', false),
'handler' => \Chocofamilyme\LaravelJaeger\Listeners\QueryListener::class,
],
'job' => [
'enabled' => env('JAEGER_JOB_LISTENER_ENABLED', false),
'handler' => \Chocofamilyme\LaravelJaeger\Listeners\JobListener::class,
],
]
- Http - Start new span for every http request
- Console - Start new span for every running artisan console commands
- Query - Start new span for every executed database query
- Job - Start new span for every dispatched queue job
Testing
composer test
Changelog
Read changelog here
License
The MIT License (MIT). Please see License File for more information.
Related Packages
Powerful PHP database abstraction layer (DBAL) with many features for database s...
Laravel Serializable Closure provides an easy and secure way to serialize closur...
Cli error handling for console/command-line PHP applications.
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| 3.0.0 | ^8.0 | ^9.0| | MIT | |
| 2.0.1 | ^8.0 | ^9.0 | MIT | |
| 2.0.0 | ^8.0 | ^9.0 | MIT | |
| 1.0.1 | ^8.0 | ^9.0 | MIT | |
| 1.0.0 | ^8.0 | ^8.0| | MIT | |
| 0.2.0 | ^7.4| | ^7.0| | MIT | |
| 0.1.5 | ^7.4| | ^7.0| | MIT | |
| 0.1.4 | ^7.4| | ^7.0| | MIT | |
| 0.1.3 | ^7.4| | ^7.0| | MIT | |
| 0.1.1 | ^7.4| | ^8.0 | MIT | |
| 0.1.0 | ^7.4| | ^8.0 | MIT |