Symfony Health Check Bundle
Version | Build Status | Code Coverage |
---|---|---|
master |
||
develop |
Installation
Step 1: Download the Bundle
Open a command console, enter your project directory and execute:
Applications that use Symfony Flex
$ composer require macpaw/symfony-health-check-bundle
Applications that don't use Symfony Flex
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
$ composer require macpaw/symfony-health-check-bundle
This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.
Step 2: Enable the Bundle
Then, enable the bundle by adding it to the list of registered bundles in the app/AppKernel.php
file of your project:
<?php
// app/AppKernel.php
// ...
class AppKernel extends Kernel
{
public function registerBundles()
{
$bundles = array(
// ...
SymfonyHealthCheckBundle\SymfonyHealthCheckBundle::class => ['all' => true],
);
// ...
}
// ...
}
Create Symfony Health Check Bundle Config:
config/packages/symfony_health_check.yaml
Configurating health check - all available you can see here.
symfony_health_check:
health_checks:
- id: symfony_health_check.doctrine_check
Create Symfony Health Check Bundle Routing Config:
config/routes/symfony_health_check.yaml
health_check:
resource: '@SymfonyHealthCheckBundle/Resources/config/routes.xml'
Step 3: Configuration
Security Optional:
config/packages/security.yaml
If you are using symfony/security and your health check is to be used anonymously, add a new firewall to the configuration
firewalls:
healthcheck:
pattern: ^/health
security: false
Step 4: Additional settings
Add Custom Check:
It is possible to add your custom health check:
<?php
declare(strict_types=1);
namespace YourProject\Check;
class CustomCheck implements CheckInterface
{
private const CHECK_RESULT_KEY = 'customConnection';
public function check(): array
{
return [self::CHECK_RESULT_KEY => true];
}
}
Then we add our custom health check to collection
symfony_health_check:
health_checks:
- id: symfony_health_check.doctrine_check
- id: custom_health_check
How Change Route:
You can change the default behavior with a light configuration, remember to return to Step 3 after that:
health:
path: /your/custom/url
methods: GET
controller: SymfonyHealthCheckBundle\Controller\HealthController::healthCheckAction