承接 cyberclick-os/apm-symfony-messenger 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

cyberclick-os/apm-symfony-messenger

最新稳定版本:1.2.1

Composer 安装命令:

composer require cyberclick-os/apm-symfony-messenger

包简介

Elastic APM for Symfony Messenger

README 文档

README

This library supports Span traces of Symfony Messenger messages.

Installation

  1. Install via composer

    composer require pccomponentes/apm-symfony-messenger

Usage

In all cases, an already created instance of ElasticApmTracer is assumed.

Native PHP

<?php
declare(strict_types=1);

class TextNameExtractor implements PcComponentes\ElasticAPM\Symfony\Component\Messenger\NameExtractor
{
    public function execute($message): string
    {
        if (false === is_string($message)) {
            throw new InvalidArgumentException('The parameter must be of type string');
        }

        return $message;
    }
}

$apmMiddleware = new PcComponentes\ElasticAPM\Symfony\Component\Messenger\ApmMiddleware(
    $apmTracer, /** \ZoiloMora\ElasticAPM\ElasticApmTracer instance. */
    new TextNameExtractor(),
);

$bus = new Symfony\Component\Messenger\MessageBus([
    $apmMiddleware
]);

Service Container (Symfony)

app.bus:
  class: Symfony\Component\Messenger\MessageBus
  arguments:
    $middlewareHandlers:
      - '@app.bus.middleware.apm'

app.bus.middleware.apm:
  class: PcComponentes\ElasticAPM\Symfony\Component\Messenger\ApmMiddleware
  arguments:
    $elasticApmTracer: '@apm.tracer' # \ZoiloMora\ElasticAPM\ElasticApmTracer instance.
    $nameExtractor: '@app.bus.middleware.apm.name_extractor'

app.bus.middleware.apm.name_extractor:
  class: ExampleTextNameExtractor

License

Licensed under the MIT license

Read LICENSE for more information

统计信息

  • 总下载量: 4.41k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 3
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2021-03-10