PHPackages                             mrtolouei/laravel-health-monitor - 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. [Logging &amp; Monitoring](/categories/logging)
4. /
5. mrtolouei/laravel-health-monitor

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

mrtolouei/laravel-health-monitor
================================

Lightweight Laravel health check monitor.

v1.1.0(9mo ago)45MITPHPPHP &gt;=8.0CI passing

Since Jul 25Pushed 9mo agoCompare

[ Source](https://github.com/mrtolouei/laravel-health-monitor)[ Packagist](https://packagist.org/packages/mrtolouei/laravel-health-monitor)[ RSS](/packages/mrtolouei-laravel-health-monitor/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (7)Versions (3)Used By (0)

Laravel Health Monitor
======================

[](#laravel-health-monitor)

A lightweight, extendable Laravel package for monitoring the health of internal services like Database, Redis, Queue, Cache, Filesystem, and any third-party APIs.

Built for developers who care about observability and application resilience.

[![License](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](LICENSE)[![Tests](https://github.com/mrtolouei/laravel-health-monitor/actions/workflows/tests.yml/badge.svg)](https://github.com/mrtolouei/laravel-health-monitor/actions/workflows/tests.yml)[![Latest Stable Version](https://camo.githubusercontent.com/adb7a6a138763fcd12f5a8d3a29e836dfcf5038a21f1ef5fb064093a0311562a/68747470733a2f2f706f7365722e707567782e6f72672f6d72746f6c6f7565692f6c61726176656c2d6865616c74682d6d6f6e69746f722f762f737461626c65)](https://packagist.org/packages/mrtolouei/laravel-health-monitor)

[![Screen shot](screenshot.png)](screenshot.png)

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

[](#installation)

Install the package via Composer:

```
composer require mrtolouei/laravel-health-monitor

```

Publish the configuration and provider stub:

```
php artisan vendor:publish --tag=health-monitor-config
php artisan vendor:publish --tag=health-monitor-provider

```

Configuration
-------------

[](#configuration)

The config file will be published to:

`config/health-monitor.php`

It contains two main sections:

### ✅ App Services

[](#-app-services)

You can enable/disable health checkers and configure each one:

```
'app-services' => [
    'database' => [
        'enabled' => true,
        'inspector' => HealthMonitor\Monitors\DatabaseHealthChecker::class,
        'arguments' => [
            'connection' => config('database.default', 'sqlite')
        ],
    ],
    'filesystem' => [
        'enabled' => true,
        'inspector' => HealthMonitor\Monitors\FilesystemHealthChecker::class,
        'arguments' => [
            'disk' => config('filesystems.default', 'local')
        ],
    ],
    ...
],
```

### 🌐 Third-Party APIs

[](#-third-party-apis)

You can define any number of third-party HTTP APIs to monitor:

```
'third-party-services' => [
    'json-test-api' => [
        'enabled' => true,
        'url' => 'https://jsonplaceholder.typicode.com/todos/1',
        'method' => 'GET',
        'headers' => [
            'Accept' => 'application/json',
        ],
        'auth' => null,
        'timeout' => 5,
        'expected_status' => 200,
    ],
],
```

Supported authentication types:

- `none`
- `basic` (username &amp; password)
- `bearer` (token)
- `ntlm`

### 🔒 Access Control

[](#-access-control)

A `Gate` is registered automatically to restrict access to non-local environments.

You can customize allowed users in `config/health-monitor.php`:

```
'allowed_emails' => [
    'admin@example.com',
    'dev@example.com',
],
```

### 📡 Routes

[](#-routes)

This package registers two routes (behind the `viewHealthMonitor` gate):

RouteMethodDescription`/api-service-health``GET`Returns JSON of health check status`/service-health``GET`Shows a Blade view of statuses### 🧪 Add Custom Checkers

[](#-add-custom-checkers)

Create a new class that implements the `HealthCheckerInterface`:

```
use HealthMonitor\Contracts\HealthCheckerInterface;
use HealthMonitor\Dto\HealthResult;

class CustomChecker implements HealthCheckerInterface {
    public function monitor(): HealthResult {
        return new HealthResult('My Checker', 'custom', true);
    }

    public function getConnectionDriver(): string|null {
        return 'custom';
    }
}
```

Then register it in the config file.

### 📂 Directory Structure (short overview)

[](#-directory-structure-short-overview)

```
laravel-health-monitor/
├── config/
├── src/
│   ├── Contracts/
│   ├── Dto/
│   ├── Monitors/
│   ├── Facades/
│   ├── Factories/
│   └── HealthMonitorExecutor.php
└── routes/web.php

```

### 🙌 Credits

[](#-credits)

Developed and maintained by [Ali Tolouei](https://github.com/mrtolouei)

Feel free to contribute or suggest features via issues and PRs!

### 📄 License

[](#-license)

This package is open-sourced software licensed under the [MIT license](LICENSE).

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance56

Moderate activity, may be stable

Popularity8

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity42

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

Every ~2 days

Total

2

Last Release

289d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/736fa5617032c5dbfb470d46a5f5c363dc4de7c368b36fae53d17e935df5adc3?d=identicon)[mrtolouei](/maintainers/mrtolouei)

---

Top Contributors

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

---

Tags

health-monitorlaravellaravel-monitoringlaravel-packagemonitoring

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/mrtolouei-laravel-health-monitor/health.svg)

```
[![Health](https://phpackages.com/badges/mrtolouei-laravel-health-monitor/health.svg)](https://phpackages.com/packages/mrtolouei-laravel-health-monitor)
```

###  Alternatives

[spatie/laravel-health

Monitor the health of a Laravel application

85810.0M83](/packages/spatie-laravel-health)[irazasyed/telegram-bot-sdk

The Unofficial Telegram Bot API PHP SDK

3.3k4.5M84](/packages/irazasyed-telegram-bot-sdk)[stechstudio/laravel-zipstream

A fast and simple streaming zip file downloader for Laravel.

4633.7M3](/packages/stechstudio-laravel-zipstream)[marvinlabs/laravel-discord-logger

Logging to a discord channel in Laravel

2081.1M2](/packages/marvinlabs-laravel-discord-logger)[larabug/larabug

Laravel 6.x/7.x/8.x/9.x/10.x/11.x/12.x/13.x bug notifier

299549.3k1](/packages/larabug-larabug)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

255.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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