All Projects → ekreative → health-check-bundle

ekreative / health-check-bundle

Licence: MIT License
A bundle that provides a simple /healthcheck route

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to health-check-bundle

ExpandedCollectionBundle
Symfony bundle for render entity collections as a selectable expanded list.
Stars: ✭ 13 (-51.85%)
Mutual labels:  symfony-bundle
docusign-bundle
Symfony bundle to create electronic signatures with DocuSign
Stars: ✭ 27 (+0%)
Mutual labels:  symfony-bundle
hcaptcha-bundle
A Symfony 4+ bundle to bring hCaptcha into your forms
Stars: ✭ 15 (-44.44%)
Mutual labels:  symfony-bundle
ParamConverterBundle
This bundle provides additional param converters for Symfony.
Stars: ✭ 16 (-40.74%)
Mutual labels:  symfony-bundle
eav-bundle
A Symfony bundle for basic EAV management
Stars: ✭ 19 (-29.63%)
Mutual labels:  symfony-bundle
DunglasTorControlBundle
Integration of PHP TorControl library in Symfony
Stars: ✭ 13 (-51.85%)
Mutual labels:  symfony-bundle
VreshTwilioBundle
A Symfony2 wrapper for the official SDK provided by Twilio.
Stars: ✭ 45 (+66.67%)
Mutual labels:  symfony-bundle
mongodb-migrations-bundle
Symfony MongoDBMigrationsBundle
Stars: ✭ 21 (-22.22%)
Mutual labels:  symfony-bundle
LolautruchePaylineBundle
Symfony integration for Payline payment system
Stars: ✭ 15 (-44.44%)
Mutual labels:  symfony-bundle
BeelabUserBundle
👥 Simple user management for Symfony.
Stars: ✭ 17 (-37.04%)
Mutual labels:  symfony-bundle
LexikCronFileGeneratorBundle
This symfony bundle provides service for generate cron file
Stars: ✭ 20 (-25.93%)
Mutual labels:  symfony-bundle
block-bundle
Extends the SonataBlockBundle to integrate with PHPCR ODM
Stars: ✭ 20 (-25.93%)
Mutual labels:  symfony-bundle
SonataTranslationBundle
SonataTranslationBundle
Stars: ✭ 72 (+166.67%)
Mutual labels:  symfony-bundle
symfony-debug-toolbar-git
Get the latest Git commit information into Symfony debug toolbar
Stars: ✭ 30 (+11.11%)
Mutual labels:  symfony-bundle
acl-bundle
Integrates the ACL Security component into Symfony applications.
Stars: ✭ 91 (+237.04%)
Mutual labels:  symfony-bundle
SonataAdminSearchBundle
[Abandoned] Implement Search Engine (ElasticSearch) inside Sonata Admin
Stars: ✭ 19 (-29.63%)
Mutual labels:  symfony-bundle
AutoFormBundle
Automate Symfony form building
Stars: ✭ 68 (+151.85%)
Mutual labels:  symfony-bundle
domain-event-bundle
Library to create the domain layer of your DDD application
Stars: ✭ 14 (-48.15%)
Mutual labels:  symfony-bundle
EzCoreExtraBundle
Extra features for eZ Platform (v1.x compatible with eZ Publish 5.4)
Stars: ✭ 29 (+7.41%)
Mutual labels:  symfony-bundle
routing-auto-bundle
Adding automatic route generating on top of the symfony cmf routing
Stars: ✭ 14 (-48.15%)
Mutual labels:  symfony-bundle

Health Check Bundle

A bundle that provides a simple /healthcheck route

Latest Stable Version License Build Status

Install

Composer

composer require ekreative/health-check-bundle

AppKernel

Include the bundle in your AppKernel

public function registerBundles()
{
    $bundles = [
        ...
        new Ekreative\HealthCheckBundle\EkreativeHealthCheckBundle(),

Routing

ekreative_health_check:
    resource: '@EkreativeHealthCheckBundle/Resources/config/routes.xml'

Security

You should make sure /healthcheck does not require authentication

security:
    firewalls:
        healthcheck:
            pattern: ^/healthcheck
            security: false

Configuration

By default healthcheck will check that your default doctrine connection is working.

Doctrine

To check more than one doctrine connection you should add the configuration, listing the names of the connections

ekreative_health_check:
    doctrine:
        - 'default'
        - 'alternative'

You can also list doctrine connections that should be checked, but don't cause a failure

ekreative_health_check:
    optional_doctrine:
        - 'another.optional'

Its possible to disable the doctrine check

ekreative_health_check:
    doctrine_enabled: false

Timeout

Its recommended to change the default PDO connection timeout so that your health check will fail faster

Add this under connection setting

doctrine:
    dbal:
        connections:
            default:
                driver: pdo_mysql
                host: '%database_host%'
                options:
                    !php/const PDO::ATTR_TIMEOUT: 5

Redis

The bundle can also check that redis connections are working. You should add a list of service names to check

ekreative_health_check:
    redis:
        - 'redis'

You can also list redis connections that should be checked, but don't cause a failure

ekreative_health_check:
    optional_redis:
        - 'redis.optional'

Timeout

Its recommended to change the default Redis connection timeout so that your health check will fail faster. Its the third argument to connect call for \Redis.

services:
    redis:
        class: Redis
        calls:
            - [ connect, ['%redis_host%', '%redis_port%', 5]]

Redis

When you want redis to be optional, you might want to use the provided RedisFactory (or your own) that catches any exceptions on connect. Without this a Redis failure will cause the container to fail, resulting in a 500 error.

services:
    redis:
        class: Redis
        factory: Ekreative\HealthCheckBundle\DependencyInjection\RedisFactory::get
        arguments:
            $host: 'example.com'
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].