This package provides a way to programmatically determine if GitHub is working well, or experiencing issues. It uses GitHub's current Statuspage API.
The replacement API does not provide the historical feed used by older package
versions. Passing a past date therefore returns GitHubStatus::UNKNOWN.
To install PHP GitHub Status API, just run the following composer command.
composer require jord-jd/github-status-apiRemember to include the vendor/autoload.php file if your framework does not
do this for you.
To check the state of GitHub currently, simply create a new Client object,
and call its status method. You can optionally pass a Carbon date object
to the status method to retrieve a historical status.
use Carbon\Carbon;
use JordJD\GitHubStatusApi\Client;
use JordJD\GitHubStatusApi\Enums\GitHubStatus;
require_once 'vendor/autoload.php';
$status = (new Client())->status();
// $status = (new Client())->status(Carbon::parse('2018-12-06 17:00'));
switch ($status) {
case GitHubStatus::GOOD:
echo 'GitHub is up! No issues reported.';
break;
case GitHubStatus::MINOR:
echo 'GitHub is experiencing minor issues.';
break;
case GitHubStatus::MAJOR:
echo 'GitHub is experiencing major issues.';
break;
case GitHubStatus::UNKNOWN:
echo 'Unable to determine GitHub\'s status.';
break;
}
echo PHP_EOL;