PHPackages                             garlic/healthcheck - 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. garlic/healthcheck

ActiveSymfony-bundle[Utility &amp; Helpers](/categories/utility)

garlic/healthcheck
==================

Health check Bundle used for graphQL schema introspection and whole schema merge at gateway

1.1.2(7y ago)25651MITPHPPHP &gt;=7.1

Since Dec 12Pushed 7y ago7 watchersCompare

[ Source](https://github.com/garlicservices/healthcheck-bundle)[ Packagist](https://packagist.org/packages/garlic/healthcheck)[ RSS](/packages/garlic-healthcheck/feed)WikiDiscussions master Synced today

READMEChangelog (9)Dependencies (4)Versions (15)Used By (1)

Garlic healthcheck bundle
=========================

[](#garlic-healthcheck-bundle)

This bundle is a backend for serviceDiscoveryEvent, which is uasually a part of [garlic/gateway](https://github.com/garlicservices/gateway-bundle) bundle.

This bundle allows to form graphQL introspection schema as a self-describing method and send it back to gateway to process and merge it.

Target microservice subscribing on `serviceDiscovery` event and forming `serviceRebuildSchema` command with response data as

```
{
  "name": "microservice_name",
  "data": "{...introspection_json_string}",
  "timing": "0.0021"
}
```

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

[](#installation)

Just a one thing are necessary for this bundle works.

#### Add garlic/bus bundle to your composer.json

[](#add-garlicbus-bundle-to-your-composerjson)

```
composer require garlic/healthcheck
```

#### bundles.php

[](#bundlesphp)

config/bundles.php - add bundle initialisation

```
Garlic\HealthCheck\HealthCheckBundle::class => ['all' => true],
```

#### redis config

[](#redis-config)

Add to your .env file next configuration values

```
REDIS_HOST=localhost
REDIS_PORT=6379
HEALTHCHECK_LOCK_TTL=30 - not nessessary, time in seconds until next run would be possible. Default is 30 sec
```

Usage
-----

[](#usage)

Service automatically begin to listen enqueue events with name `serviceDiscovery` and generate proper `COMMAND` for gaeway to rebuild actual whole schema introspection with new obtained data.

Data structure could be obtained at [introspection.json](https://github.com/garlicservices/healthcheck-bundle/tree/master/Resources/query/introspection.json)

### How to init event from outside

[](#how-to-init-event-from-outside)

```
$container->get(CommunicatorService::class)
    ->serviceDiscoveryEvent(['date' => microtime(true)]);
```

### How to send self-introspection manually

[](#how-to-send-self-introspection-manually)

```
sf healthcheck:init
```

#### Response

[](#response)

[Data structure](https://github.com/garlicservices/healthcheck-bundle/blob/master/Service/Processor/ServiceDiscoveryProcessor.php#L39) to work with

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 76.9% 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 ~14 days

Total

10

Last Release

2577d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/911fb3b905a102069ad8345c1ccb6547636e7fafc75b4da58213d3fe679be486?d=identicon)[garlic](/maintainers/garlic)

---

Top Contributors

[![am0nshi](https://avatars.githubusercontent.com/u/7633061?v=4)](https://github.com/am0nshi "am0nshi (10 commits)")[![demotivationme](https://avatars.githubusercontent.com/u/5822900?v=4)](https://github.com/demotivationme "demotivationme (2 commits)")[![Chyslovsky](https://avatars.githubusercontent.com/u/19927239?v=4)](https://github.com/Chyslovsky "Chyslovsky (1 commits)")

---

Tags

composer-packagesymfony-bundlemicroserviceshealth checkMicroservices healthcheck

### Embed Badge

![Health badge](/badges/garlic-healthcheck/health.svg)

```
[![Health](https://phpackages.com/badges/garlic-healthcheck/health.svg)](https://phpackages.com/packages/garlic-healthcheck)
```

###  Alternatives

[fullpipe/check-them

Health checks for external services

328.9k](/packages/fullpipe-check-them)[gabrielanhaia/laravel-circuit-breaker

Laravel integration for PHP Circuit Breaker — multiple storage drivers, middleware, Artisan commands, and event system

481.0k](/packages/gabrielanhaia-laravel-circuit-breaker)

PHPackages © 2026

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