PHP code example of fjogeleit / prometheus-messenger-middleware
1. Go to this page and download the library: Download fjogeleit/prometheus-messenger-middleware library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
fjogeleit / prometheus-messenger-middleware example snippets
declare(strict_types=1);
namespace PrometheusMiddleware\Tests\Example\LabelValueProvider;
use PrometheusMiddleware\LabelValueProviderInterface;
use PrometheusMiddleware\Tests\Example\FooMessage;
use Symfony\Component\Messenger\Envelope;
use Symfony\Component\Messenger\Middleware\StackInterface;
class FooLabelValueProvider implements LabelValueProviderInterface
{
public function __invoke(Envelope $envelope, StackInterface $stack): array
{
/** @var FooMessage $message */
$message = $envelope->getMessage();
return [
\get_class($message),
substr(strrchr(get_class($message), '\\'), 1),
$message->getBar()
];
}
}
declare(strict_types=1);
namespace PrometheusMiddleware\Tests\Example\LabelValueProvider;
use PrometheusMiddleware\ErrorLabelValueProviderInterface;
use PrometheusMiddleware\Tests\Example\FooMessage;
use Symfony\Component\Messenger\Envelope;
use Symfony\Component\Messenger\Middleware\StackInterface;
class FooExceptionLabelValueProvider implements ErrorLabelValueProviderInterface
{
public function __invoke(Envelope $envelope, StackInterface $stack, \Throwable $exception): array
{
/** @var FooMessage $message */
$message = $envelope->getMessage();
return [
\get_class($message),
substr(strrchr(get_class($message), '\\'), 1),
$exception->getMessage()
];
}
}