Slim Provider for php-actuator
Via Composer
$ composer require postalservice14/php-actuator-slim-provider
$container = $app->getContainer();
$container['health.aggregator'] = new OrderedHealthAggregator();
$container['health.indicators'] = array(
'disk' => new DiskSpaceHealthIndicator()
);
$container['health'] = function ($container) {
return new HealthServiceProvider(
$container['health.aggregator'],
$container['health.indicators']
);
};
Setup the route you would like your health check on. e.g.:
$app->get('/health', function ($req, $res) {
return $this->health->getHealth($res);
});
Then visit your endpoint. In this case: /health
The following is a minimal example to get you started quickly. It uses the DiskSpaceHealthIndicator.
- Create a composer.json with at minimum, the following dependencies
{
"require": {
"postalservice14/php-actuator-slim-provider": "^1.0"
}
}
- Run composer install
- Create /public/index.php
<?php
require_once __DIR__.'/../vendor/autoload.php';
use Slim\App;
use Actuator\Health\OrderedHealthAggregator;
use Actuator\Health\Indicator\DiskSpaceHealthIndicator;
use Actuator\Slim\Provider\HealthServiceProvider;
$indicators = array(
'disk' => new DiskSpaceHealthIndicator()
);
$app = new App();
$container = $app->getContainer();
$container['health.aggregator'] = new OrderedHealthAggregator();
$container['health.indicators'] = $indicators;
$container['health'] = function ($container) {
return new HealthServiceProvider(
$container['health.aggregator'],
$container['health.indicators']
);
};
$app->get('/health', function ($req, $res) {
return $this->health->getHealth($res);
});
$app->run();
- Run the service
php -S localhost:8000 -t public public/index.php
- Go to http://localhost:8000/health to see your health indicator.
Available at /example
Please see CHANGELOG for more information what has changed recently.
$ composer test
Please see CONTRIBUTING and CONDUCT for details.
The MIT License (MIT). Please see License File for more information.