High level overview
This package can monitor the uptime of sites, api endpoints, or anything that communicates over
https. To create a monitor use the
monitor:create command. This will create a row in the
monitor:check-uptime task should be scheduled to run every minute. When it runs it will send a request to the
url of every configured monitor. The package can perform requests concurrently, so don’t be afraid to configure a large number of monitors.
If a request succeeds the
Spatie\UptimeMonitor\Events\UptimeCheckSucceeded-event will fire. The uptime of the monitor will be checked again when
monitor:check-uptime runs after the interval set in the
uptime_check_interval_in_minutes key in the config file.
When an uptime check fails the uptime check for that monitor will be performed any time
monitor:check-uptime runs regardless of the value configured in
If an uptime check fails consecutively more times than the value you set in
Spatie\UptimeMonitor\Events\UptimeCheckFailed event will fire.
If an uptime check is successful after failing, the
Spatie\UptimeMonitor\Events\UptimeCheckRecovered will be fired.
The package can verify if the ssl certificate of a monitor is valid. By default all monitors whose
url starts with
https will be checked. This is done by the
monitor:check-certificate command which should be scheduled to run daily at least.
When a valid certificate for a monitor is found the
Spatie\UptimeMonitor\Events\CertificateCheckSucceeded event will fire. If no valid certificate is found, the
Spatie\UptimeMonitor\Events\CertificateCheckFailed event will be unleashed!
If a valid certificate is found, but it will expire in less days than the value set in
Spatie\UptimeMonitor\Events\CertificateExpiresSoon event is fired.