51 lines
1.3 KiB
Markdown
51 lines
1.3 KiB
Markdown
|
# JTL - PHP API Client for OpsGenie
|
||
|
|
||
|
[![Build Status](https://travis-ci.org/jtl-software/php-api-client-opsgenie.svg?branch=master)](https://travis-ci.org/jtl-software/php-api-client-opsgenie)
|
||
|
|
||
|
PHP implementation to connect to OpsGenie Alert API. The implementation is focused on what
|
||
|
we require @JTL for our application Alerting.
|
||
|
|
||
|
https://docs.opsgenie.com/docs/alert-api
|
||
|
|
||
|
## Features
|
||
|
|
||
|
* Create Alert
|
||
|
* Get specific Alert (by alias) from API
|
||
|
* Close Alert
|
||
|
* Ping Heatbeat
|
||
|
|
||
|
## How-To-Use
|
||
|
|
||
|
Create / Get / Close Alert
|
||
|
|
||
|
````php
|
||
|
# named constructor to create a client (for EU)
|
||
|
$client = AlertApiClient::createForEUApi(getenv(UPSGENIE_TOKEN));
|
||
|
|
||
|
$alert = new Alert('eazyauction', 'test-alert', 'foo mag bär', 'beer-bar');
|
||
|
$response = $client->createAlert($alert);
|
||
|
|
||
|
if($response->isSuccessful()){
|
||
|
|
||
|
// read our former created alert
|
||
|
$alert = $client->getAlert(new GetAlertRequest($alert->getAlias()));
|
||
|
|
||
|
// close our former created alert
|
||
|
$client->closeAlert(new CloseAlertRequest($alert->getAlias()));
|
||
|
}
|
||
|
````
|
||
|
|
||
|
|
||
|
Ping Heartbeat
|
||
|
|
||
|
````php
|
||
|
$token = "xxx-xxx-xxx";
|
||
|
$client = new HeartbeatApiClient(HttpClient::createForEUApi(getenv(UPSGENIE_TOKEN)));
|
||
|
do {
|
||
|
$result = $client->sendPing(new PingRequest('beat'));
|
||
|
var_dump($result, $result->isSuccessful());
|
||
|
sleep(60);
|
||
|
} while(true);
|
||
|
|
||
|
````
|