PHPackages                             request-tracing/request-tracing-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Debugging &amp; Profiling](/categories/debugging)
4. /
5. request-tracing/request-tracing-bundle

ActiveSymfony-bundle[Debugging &amp; Profiling](/categories/debugging)

request-tracing/request-tracing-bundle
======================================

Symfony bundle for request tracing

0.2.0(2y ago)02.1k1[1 PRs](https://github.com/request-tracing/request-tracing-bundle/pulls)MITPHPPHP &gt;=8.1

Since Apr 23Pushed 1y ago1 watchersCompare

[ Source](https://github.com/request-tracing/request-tracing-bundle)[ Packagist](https://packagist.org/packages/request-tracing/request-tracing-bundle)[ RSS](/packages/request-tracing-request-tracing-bundle/feed)WikiDiscussions main Synced yesterday

READMEChangelog (2)Dependencies (14)Versions (4)Used By (0)

RequestTracingBundle
====================

[](#requesttracingbundle)

Symfony bundle for request tracing.

This bundle ships with a [Monolog](https://github.com/Seldaek/monolog) processor and a [Guzzle Middleware](https://docs.guzzlephp.org/en/stable/handlers-and-middleware.html#middleware) for logging and propagating request IDs.

Installation
------------

[](#installation)

```
composer require request-tracing/request-tracing-bundle

```

If you are using [Symfony Flex](https://github.com/symfony/flex) everything works out-of-the-box. If not, you should add this bundle manually to your `config/bundles.php`.

By default, the bundle will look for a `X-Request-Id` HTTP request header and use its value if present. You can configure the header name with the following config:

```
# config/packages/request_tracing.yaml
request_tracing:
  header: my_custom_header_name
```

Monolog
-------

[](#monolog)

This bundle will add the request ID to the context of each log record created with Monolog. Be sure to install the [Monolog bundle](https://symfony.com/doc/current/logging.html#monolog) first:

```
composer require symfony/monolog-bundle

```

I recommend formatting Monolog in JSON format for easier log processing in tools like [Datadog](https://www.datadoghq.com/):

```
# config/packages/monolog.yaml
monolog:
  handlers:
    main:
      formatter: monolog.formatter.json
```

Guzzle
------

[](#guzzle)

If you use the [Guzzle](https://docs.guzzlephp.org/en/stable/index.html) HTTP client in your application you can use the [Guzzle Middleware](https://docs.guzzlephp.org/en/stable/handlers-and-middleware.html#middleware) provided by this bundle to pass the request ID of the original HTTP request as a header to a subsequent HTTP request. This way you will be able to correlate HTTP requests when analyzing (access) logs.

The middleware is available in the [Dependency Injection Container](https://symfony.com/doc/current/components/dependency_injection.html) by its FQCN. Here's an example services configuration:

```
services:
  GuzzleHttp\Client:
    arguments:
      - { handler: '@GuzzleHttp\HandlerStack' }

  GuzzleHttp\HandlerStack:
    factory: ['GuzzleHttp\HandlerStack', 'create']
    calls:
      - push: ['@RequestTracing\RequestTracingBundle\GuzzleHttp\RequestIdMiddleware']
```

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance29

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 72.2% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~537 days

Total

2

Last Release

1041d ago

PHP version history (2 changes)0.1.0PHP &gt;=7.4

0.2.0PHP &gt;=8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/e56158df0a7656e82c3fe2cee4d8173ef9c26fcd8882abd7dadfbdbd9eb93f89?d=identicon)[othillo](/maintainers/othillo)

---

Top Contributors

[![othillo](https://avatars.githubusercontent.com/u/2786663?v=4)](https://github.com/othillo "othillo (13 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (5 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/request-tracing-request-tracing-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/request-tracing-request-tracing-bundle/health.svg)](https://phpackages.com/packages/request-tracing-request-tracing-bundle)
```

###  Alternatives

[pimcore/pimcore

Content &amp; Product Management Framework (CMS/PIM/E-Commerce)

3.8k3.9M535](/packages/pimcore-pimcore)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.8M674](/packages/shopware-core)[craftcms/cms

Craft CMS

3.6k3.7M3.4k](/packages/craftcms-cms)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

12017.1k](/packages/rcsofttech-audit-trail-bundle)[tempest/framework

The PHP framework that gets out of your way.

2.3k37.6k21](/packages/tempest-framework)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
