PHPackages                             yucadoo/graze-neighborhoods-diagnostic - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. yucadoo/graze-neighborhoods-diagnostic

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

yucadoo/graze-neighborhoods-diagnostic
======================================

Exception detection strategy for Graze's transient fault handler using Neighborhoods' throwable diagnostic component.

0.0.1(5y ago)02MITPHPPHP ~7.2

Since Oct 18Pushed 5y agoCompare

[ Source](https://github.com/yucadoo/graze-neighborhoods-diagnostic)[ Packagist](https://packagist.org/packages/yucadoo/graze-neighborhoods-diagnostic)[ Docs](https://github.com/yucadoo/graze-neighborhoods-diagnostic)[ RSS](/packages/yucadoo-graze-neighborhoods-diagnostic/feed)WikiDiscussions master Synced yesterday

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

graze-neighborhoods-diagnostic
==============================

[](#graze-neighborhoods-diagnostic)

[![Latest Version on Packagist](https://camo.githubusercontent.com/1b2db1545b99542259055b7709d73baec7a26fdd066dca7c122e56b8958afd61/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f79756361646f6f2f6772617a652d6e65696768626f72686f6f64732d646961676e6f737469632e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/yucadoo/graze-neighborhoods-diagnostic)[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)[![Build Status](https://camo.githubusercontent.com/78fa4f3c256378b3f8ba2e9e01dd9bfc6e5f1ce79b5cd18d15d23bb228839b9b/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f79756361646f6f2f6772617a652d6e65696768626f72686f6f64732d646961676e6f737469632f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/yucadoo/graze-neighborhoods-diagnostic)[![Coverage Status](https://camo.githubusercontent.com/ea622d36777cc3823728949030e74e7ffb2ceac8cbe15431287ea67233c37bc1/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f636f7665726167652f672f79756361646f6f2f6772617a652d6e65696768626f72686f6f64732d646961676e6f737469632e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/yucadoo/graze-neighborhoods-diagnostic/code-structure)[![Quality Score](https://camo.githubusercontent.com/7a658fe20e998d451e452328c6b281f81b886d47ff018fafde631b89f20f8062/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f79756361646f6f2f6772617a652d6e65696768626f72686f6f64732d646961676e6f737469632e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/yucadoo/graze-neighborhoods-diagnostic)[![Total Downloads](https://camo.githubusercontent.com/4fe0cd8d9a46c081b0ef51f8b670bbaa24f8797ae9821f3d42a14a44a96807ea/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f79756361646f6f2f6772617a652d6e65696768626f72686f6f64732d646961676e6f737469632e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/yucadoo/graze-neighborhoods-diagnostic)

Exception detection strategy for [Graze's transient fault handler](https://github.com/graze/transient-fault-handler) using [Neighborhoods' throwable diagnostic component](https://github.com/neighborhoods/ThrowableDiagnosticComponent).

Install
-------

[](#install)

Via Composer

```
$ composer require yucadoo/graze-neighborhoods-diagnostic
```

Usage
-----

[](#usage)

```
use YucaDoo\GrazeNeighborhoodsDiagnostic\ExceptionDetectionStrategy as NeighborhoodsExceptionDetectionStrategy;
use Graze\TransientFaultHandler\TransientFaultHandlerBuilder;

/**
 * Obtain a preconfigured ThrowableDiagnostic builder factory.
 * You can use Symfony DI as explained in Neighborhoods' throwable diagnostic component.
 */
$throwableDiagnosticBuilderFactory = $container->get('ThrowableDiagnosticBuilderFactoryWithTailoredDecoratorStack');

$neighborhoodsExceptionDetectionStrategy = new NeighborhoodsExceptionDetectionStrategy();
$neighborhoodsExceptionDetectionStrategy->setThrowableDiagnosticBuilderFactory($throwableDiagnosticBuilderFactory);

$builder = new TransientFaultHandlerBuilder();
$transientFaultHandler = $builder
    ->setExceptionDetectionStrategy($neighborhoodsExceptionDetectionStrategy)
    ...
    ->build();
```

Testing
-------

[](#testing)

```
$ composer test
```

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) and [CODE\_OF\_CONDUCT](CODE_OF_CONDUCT.md) for details.

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Hrvoje Jukic](https://github.com/yucadoo)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

19

—

LowBetter than 9% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity2

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

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

2131d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/9c6e704cc57891bf1868f1afa8fda7068d53ba7fafdaabc630fec179c517665c?d=identicon)[Firtzberg](/maintainers/Firtzberg)

---

Top Contributors

[![Firtzberg](https://avatars.githubusercontent.com/u/8490119?v=4)](https://github.com/Firtzberg "Firtzberg (5 commits)")

---

Tags

retrytransient faultyucadoo

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/yucadoo-graze-neighborhoods-diagnostic/health.svg)

```
[![Health](https://phpackages.com/badges/yucadoo-graze-neighborhoods-diagnostic/health.svg)](https://phpackages.com/packages/yucadoo-graze-neighborhoods-diagnostic)
```

###  Alternatives

[eventsauce/backoff

Back-off strategy interface

70865.3k8](/packages/eventsauce-backoff)[vkartaviy/retry

The library for repeatable and retryable operations

29232.7k2](/packages/vkartaviy-retry)[tobion/retry

A generic library to retry an operation in case of an error. You can configure the behavior like the exceptions to retry on.

16515.9k](/packages/tobion-retry)[yriveiro/php-backoff

Simple backoff / retry functionality

2682.8k1](/packages/yriveiro-php-backoff)

PHPackages © 2026

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