spatie/statamic-health

Check the health of your Statamic app

Fund package maintenance!
spatie

Installs: 4 913

Dependents: 0

Suggesters: 0

Security: 0

Stars: 9

Watchers: 4

Forks: 1

Language:Blade

1.0.0 2022-02-02 12:07 UTC

This package is auto-updated.

Last update: 2024-10-30 05:17:44 UTC


README

Check the health of your Statamic app

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Screenshot

Using this addon you can monitor the health of your application by registering checks.

Here's an example where we'll monitor available disk space.

// typically, in a service provider

use Spatie\Health\Facades\Health;
use Spatie\Health\Checks\Checks\UsedDiskSpaceCheck;

Health::checks([
    UsedDiskSpaceCheck::new()
        ->warnWhenUsedSpaceIsAbovePercentage(70)
        ->failWhenUsedSpaceIsAbovePercentage(90),
]);

When the used disk space is over 70%, then a notification with a warning will be sent. If it's above 90%, you'll get an error notification. Out of the box, the package can notify you via mail and Slack.

Support us

We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.

We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.

Installation

Publish the laravel-health config file

php artisan vendor:publish --tag="health-config"

Remove the EloquentHealthResultStore in the health_stores array and replace it by the following:

Spatie\Health\ResultStores\JsonFileHealthResultStore::class => [
    'disk' => 'local',
    'path' => 'health.json',
],

This will store the result of the health checks in a json file instead of trying to access a database.

Documentation

This addon uses the Laravel Health package, for more information on the package itself check out the docs.

Widget

This addon provides you with the possibility of adding health check widgets to your Statamic dashboard, you can add any Health check by configuring the widget in config/statamic/cp.php like this:

'widgets' => [
    [
        'type' => 'health_check',
        'check' => \Spatie\Health\Checks\Checks\UsedDiskSpaceCheck::class,
        'width' => 33,
    ],
    ...
],

Make sure you've configured the Health check correctly before adding it to your dashboard.

Disabling the Health control panel section

If you want to disable the Health section in the control panel, for example when you've added all the widgets to the Statamic dashboard instead, you can add the following config key to the Laravel health (config/health.php) file:

'statamic' => [
    'enable_dashboard' => false,
]

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.