https://github.com/cego/service-health-checking
Package that helps implement health checks for services
https://github.com/cego/service-health-checking
Last synced: 5 months ago
JSON representation
Package that helps implement health checks for services
- Host: GitHub
- URL: https://github.com/cego/service-health-checking
- Owner: cego
- Created: 2021-10-04T12:35:21.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-03-14T14:39:26.000Z (about 1 year ago)
- Last Synced: 2025-09-23T22:42:06.214Z (9 months ago)
- Language: PHP
- Size: 117 KB
- Stars: 0
- Watchers: 8
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Service Health Checking
This package contains core functionality for HTTP health checking of Laravel services.
## Usage
When the package is installed, a health endpoint, `/vendor/service-health-checking` is exposed. The endpoint
returns `200 OK` and a body with a JSON data object with the following format:
```json
{
"status": "pass|warn|fail",
"checks": [
{
"status": "pass|warn|fail",
"name": "HealthCheckClassName",
"description": "Description defined in the health check class",
"message": "Message set in the HealthStatus object"
}
]
}
```
The `checks` array contains an entry for each registered health check.
## Creating health checks
To create a health check for your service, simply create a class that extends
`\Cego\ServiceHealthChecking\BaseHealthCheck`. The base method has 2 abstract methods:
1. `check(): HealthStatus` should perform the check and return a `HealthStatus` object.
2. `getDescription(): string` should return a description of the health check.
## Registering health checks
Firstly, publish the package assets by running:
```
php artisan vendor:publish --provider="Cego\ServiceHealthChecking\ServiceHealthCheckingServiceProvider"
```
The package will publish a config file, `service-health-checking.php`, in which health check classes must be
registered, in order for them to run. The package is shipped with a basic database connection check, which is registered
by default.