PHPackages                             manomano-tech/correlation-ids-httplug - 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. [HTTP &amp; Networking](/categories/http)
4. /
5. manomano-tech/correlation-ids-httplug

Abandoned → not maintained any moreArchivedLibrary[HTTP &amp; Networking](/categories/http)

manomano-tech/correlation-ids-httplug
=====================================

HTTPlug plugin for manomano-tech/correlation-ids package

1.0.0(7y ago)01031MITPHPPHP ^7.1.3

Since Sep 29Pushed 3y agoCompare

[ Source](https://github.com/ManoManoTech/correlation-ids-httplug)[ Packagist](https://packagist.org/packages/manomano-tech/correlation-ids-httplug)[ RSS](/packages/manomano-tech-correlation-ids-httplug/feed)WikiDiscussions master Synced yesterday

READMEChangelog (1)Dependencies (8)Versions (3)Used By (1)

Inactive
========

[](#inactive)

**📢 Note:** This repository is not maintained any more.

HTTPlug Request Correlation
===========================

[](#httplug-request-correlation)

Injects correlation headers in requests made with [httplug](http://docs.php-http.org/en/latest/index.html)

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

[](#installation)

```
composer require manomano-tech/correlation-ids-httplug
```

Usage
-----

[](#usage)

First, generate a CorrelationIdContainer:

```
use ManoManoTech\CorrelationId\Factory\CorrelationIdContainerFactory;
use ManoManoTech\CorrelationId\Generator\RamseyUuidGenerator;

// We specify which generator will be responsible for generating the
// identification of the current process
$generator = new RamseyUuidGenerator();

$factory = new CorrelationIdContainerFactory($generator);
$correlationIdContainer = $factory->create(
    // can be any unique string
    '3fc044d9-90fa-4b50-b6d9-3423f567155f',
    // can be any unique string
    '3b5263fa-1644-4750-8f11-aaf61e58cd9e'
);
```

Then, you have two options:

### Add Plugin to your HTTPlug client

[](#add-plugin-to-your-httplug-client)

```
use Http\Client\Common\PluginClient;
use ManoManoTech\CorrelationIdHTTPlug\CorrelationIdHTTPlug;

// create the middleware
$requestIdPlugin = new CorrelationIdHTTPlug($correlationIdContainer);

// $client = your client
$pluginClient = new PluginClient($client, [$requestIdPlugin]);
```

### Use the factory to create an HTTPlug client

[](#use-the-factory-to-create-an-httplug-client)

```
use ManoManoTech\CorrelationIdHTTPlug\HttpClientFactory;

// create the middleware
$factory = new HttpClientFactory($correlationIdContainer);

// add some more plugins
// $factory->addPlugin(...);

// return an instance of Http\Client\Common\PluginClien
$client = $factory->create();
```

Customizing header names
------------------------

[](#customizing-header-names)

By default, request headers will look something like this:

```
GET / HTTP/1.1
Host: example.com
parent-request-id: 3fc044d9-90fa-4b50-b6d9-3423f567155f
root-request-id: 3b5263fa-1644-4750-8f11-aaf61e58cd9e
```

You can change this by providing a second argument to the constructor:

```
use Http\Client\Common\PluginClient;
use ManoManoTech\CorrelationId\CorrelationEntryName;
use ManoManoTech\CorrelationIdHTTPlug\CorrelationIdHTTPlug;

// first argument is not used in this context
$correlationEntryName = new CorrelationEntryName('current-id', 'parent-id', 'root-id');
$requestIdPlugin = new CorrelationIdHTTPlug($correlationIdContainer, $correlationEntryName);

// $client = your client
$pluginClient = new PluginClient($client, [$requestIdPlugin]);
```

or, if you use the factory:

```
use ManoManoTech\CorrelationId\CorrelationEntryName;
use ManoManoTech\CorrelationIdHTTPlug\HttpClientFactory;

// first argument is not used in this context
$correlationEntryName = new CorrelationEntryName(
    'current-id', // not used in this context
    'parent-id',
    'root-id'
);
$factory = new HttpClientFactory($correlationIdContainer, $correlationEntryName);

// add some more plugins
// $factory->addPlugin(...);

// return an instance of Http\Client\Common\PluginClien
$client = $factory->create();
```

will both produce:

```
GET / HTTP/1.1
Host: example.com
parent-id: 3fc044d9-90fa-4b50-b6d9-3423f567155f
root-id: 3b5263fa-1644-4750-8f11-aaf61e58cd9e
```

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 75% 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

Unknown

Total

1

Last Release

2782d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/25135828?v=4)[ManoMano Tech](/maintainers/ManoManoTech)[@ManoManoTech](https://github.com/ManoManoTech)

---

Top Contributors

[![juliendufresne](https://avatars.githubusercontent.com/u/1397529?v=4)](https://github.com/juliendufresne "juliendufresne (6 commits)")[![edouard-lopez](https://avatars.githubusercontent.com/u/1212392?v=4)](https://github.com/edouard-lopez "edouard-lopez (1 commits)")[![greg0ire](https://avatars.githubusercontent.com/u/657779?v=4)](https://github.com/greg0ire "greg0ire (1 commits)")

---

Tags

middlewareplugintracinghttplugcorrelation-idcorrelation

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/manomano-tech-correlation-ids-httplug/health.svg)

```
[![Health](https://phpackages.com/badges/manomano-tech-correlation-ids-httplug/health.svg)](https://phpackages.com/packages/manomano-tech-correlation-ids-httplug)
```

###  Alternatives

[php-http/logger-plugin

PSR-3 Logger plugin for HTTPlug

29025.3M69](/packages/php-http-logger-plugin)[php-http/stopwatch-plugin

Symfony Stopwatch plugin for HTTPlug

26721.1M3](/packages/php-http-stopwatch-plugin)[php-http/cache-plugin

PSR-6 Cache plugin for HTTPlug

24924.2M71](/packages/php-http-cache-plugin)[php-http/httplug-bundle

Symfony integration for HTTPlug

38921.0M54](/packages/php-http-httplug-bundle)[php-http/vcr-plugin

Record your test suite's HTTP interactions and replay them during future test runs.

21292.3k11](/packages/php-http-vcr-plugin)[php-http/laravel-httplug

Laravel package to integrate the Httplug generic HTTP client into Laravel

12110.1k](/packages/php-http-laravel-httplug)

PHPackages © 2026

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