Benachrichtigungen über die Monitoring-API verwalten
Sie können Benachrichtigungen in einer IBM Cloud Monitoring Instanz verwalten, indem Sie die Monitoring API.
Informationen zur Verwendung von cURL finden Sie unter cURL-Befehl.
Alle Benutzerbenachrichtigungen abrufen
Sie können den folgenden cURL-Befehl verwenden, um Informationen zu allen Benachrichtigungskanälen abzurufen:
curl -X GET <REST_API_ENDPOINT>/api/notificationChannels?from=<START_TIMESTAMP>&to=<END_TIMESTAMP> -H "Authorization: $AUTH_TOKEN" -H "IBMInstanceID: $GUID" -H "SysdigTeamID: $TEAM_ID" -H "content-type: application/json"
Wo
-
<REST_API_ENDPOINT>gibt den Endpunkt an, den der REST-API-Aufruf zum Ziel hat. Weitere Informationen finden Sie unter MonitoringREST-API-Endpunkte. Der öffentliche Endpunkt für eine Instanz, die in der Region 'us-south' verfügbar ist, ist beispielsweise folgender:https://us-south.monitoring.cloud.ibm.com/api -
Sie können mehrere Header übergeben, indem Sie
-Hverwenden.AuthorizationundIBMInstanceIDsind Header, die für die Authentifizierung erforderlich sind.Der Header
SysdigTeamIDist optional. Wenn Sie diesen Header angeben, begrenzen Sie die Anforderung auf die Daten und Ressourcen, die für das angegebene Team verfügbar sind.Informationen zum Abrufen eines Autorisierungstokens (
AUTH_TOKEN) und derGUIDfinden Sie unter Header für IAM-Tokens. -
toundfromsind Abfrageparameter, die Sie definieren müssen, um den Zeitraum zu konfigurieren, über den Sie Informationen zu Benachrichtigungen benötigen.
Weitere Informationen zum Antwortformat finden Sie unter Benachrichtigungsschema.
Bestimmte Benutzerbenachrichtigung abrufen
Sie können den folgenden cURL-Befehl verwenden, um Informationen zu einem Benachrichtigungskanal abzurufen:
curl -X GET <REST_API_ENDPOINT>/api/notificationChannels/<NOTIFICATION_ID> -H "Authorization: $AUTH_TOKEN" -H "IBMInstanceID: $GUID" -H "SysdigTeamID: $TEAM_ID" -H "content-type: application/json"
Wo
-
<REST_API_ENDPOINT>gibt den Endpunkt an, den der REST-API-Aufruf zum Ziel hat. Weitere Informationen finden Sie unter MonitoringREST-API-Endpunkte. Der öffentliche Endpunkt für eine Instanz, die in der Region 'us-south' verfügbar ist, ist beispielsweise folgender:https://us-south.monitoring.cloud.ibm.com/api -
Sie können mehrere Header übergeben, indem Sie
-Hverwenden.AuthorizationundIBMInstanceIDsind Header, die für die Authentifizierung erforderlich sind.Der Header
SysdigTeamIDist optional. Wenn Sie diesen Header angeben, begrenzen Sie die Anforderung auf die Daten und Ressourcen, die für das angegebene Team verfügbar sind.Informationen zum Abrufen eines Autorisierungstokens (
AUTH_TOKEN) und derGUIDfinden Sie unter Header für IAM-Tokens. -
<NOTIFICATION_ID>gibt die ID der Meldung an, die Sie ändern möchten.
Der Antworthauptteil für einen E-Mail-Benachrichtigungskanal sieht beispielsweise wie folgt aus:
{
"notificationChannel": {
"id": 20,
"version": 1,
"createdOn": 1466023669000,
"modifiedOn": 1466023669000,
"type": "EMAIL",
"enabled": true,
"name": "emailChannel",
"options": {
"emailRecipients": [
"abc@xyz.com"
],
"notifyOnOk": false
}
}
}
Benachrichtigung erstellen
Sie können den folgenden cURL-Befehl verwenden, um eine Benachrichtigung zu erstellen:
curl -X POST <REST_API_ENDPOINT>/api/notificationChannels -H "Authorization: $AUTH_TOKEN" -H "IBMInstanceID: $GUID" -H "SysdigTeamID: $TEAM_ID" -H "content-type: application/json" -d @notification.json
Wo
-
<REST_API_ENDPOINT>gibt den Endpunkt an, den der REST-API-Aufruf zum Ziel hat. Weitere Informationen finden Sie unter MonitoringREST-API-Endpunkte. Der öffentliche Endpunkt für eine Instanz, die in der Region 'us-south' verfügbar ist, ist beispielsweise folgender:https://us-south.monitoring.cloud.ibm.com/api -
Sie können mehrere Header übergeben, indem Sie
-Hverwenden.AuthorizationundIBMInstanceIDsind Header, die für die Authentifizierung erforderlich sind.Der Header
SysdigTeamIDist optional. Wenn Sie diesen Header angeben, begrenzen Sie die Anforderung auf die Daten und Ressourcen, die für das angegebene Team verfügbar sind.Informationen zum Abrufen eines Autorisierungstokens (
AUTH_TOKEN) und derGUIDfinden Sie unter Header für IAM-Tokens. -
Sie können Daten übergeben, um die Benachrichtigung in der Datei
notification.jsonzu erstellen, indem Sie-dverwenden.Gültige Typen sind "
EMAIL, "PAGER_DUTY, "SLACKund "VICTOROPS.
Das folgende Beispiel zeigt die Parameter für den Anforderungshauptteil, die Sie für die Erstellung einer Benachrichtigung festlegen können:
{
"notificationChannel": {
"type": "SLACK",
"enabled": true,
"name": "my-slack-channel",
"options": {
"notifyOnOk": true,
"url": "https://hooks.slack.com/services/xxx",
"channel": "myslack"
"notifyOnResolve": true,
}
}
}
Benachrichtigung löschen
Um eine vorhandene Benachrichtigung zu löschen, benötigen Sie die ID dieser Benachrichtigung.
Zum Löschen einer Benachrichtigung können Sie den folgenden cURL-Befehl verwenden:
curl -X DELETE <REST_API_ENDPOINT>/api/notificationChannels/<NOTIFICATION_ID> -H "Authorization: $AUTH_TOKEN" -H "IBMInstanceID: $GUID" -H "SysdigTeamID: $TEAM_ID" -H "content-type: application/json"
Wo
-
<REST_API_ENDPOINT>gibt den Endpunkt an, den der REST-API-Aufruf zum Ziel hat. Weitere Informationen finden Sie unter MonitoringREST-API-Endpunkte. Der öffentliche Endpunkt für eine Instanz, die in der Region 'us-south' verfügbar ist, ist beispielsweise folgender:https://us-south.monitoring.cloud.ibm.com/api -
Sie können mehrere Header übergeben, indem Sie
-Hverwenden.AuthorizationundIBMInstanceIDsind Header, die für die Authentifizierung erforderlich sind.Der Header
SysdigTeamIDist optional. Wenn Sie diesen Header angeben, begrenzen Sie die Anforderung auf die Daten und Ressourcen, die für das angegebene Team verfügbar sind.Informationen zum Abrufen eines Autorisierungstokens (
AUTH_TOKEN) und derGUIDfinden Sie unter Header für IAM-Tokens. -
<NOTIFICATION_ID>gibt die ID der Meldung an, die Sie ändern möchten.
Benachrichtigung aktualisieren
Um eine vorhandene Benachrichtigung zu aktualisieren, benötigen Sie die ID dieser Benachrichtigung.
Sie können den folgenden cURL-Befehl verwenden, um eine Benachrichtigung zu aktualisieren:
curl -X PUT <REST_API_ENDPOINT>/api/notificationChannels/<NOTIFICATION_ID> -H "Authorization: $AUTH_TOKEN" -H "IBMInstanceID: $GUID" -H "SysdigTeamID: $TEAM_ID" -H "content-type: application/json" -d @notification.json
Wo
-
<REST_API_ENDPOINT>gibt den Endpunkt an, den der REST-API-Aufruf zum Ziel hat. Weitere Informationen finden Sie unter MonitoringREST-API-Endpunkte. Der öffentliche Endpunkt für eine Instanz, die in der Region 'us-south' verfügbar ist, ist beispielsweise folgender:https://us-south.monitoring.cloud.ibm.com/api -
Sie können mehrere Header übergeben, indem Sie
-Hverwenden.AuthorizationundIBMInstanceIDsind Header, die für die Authentifizierung erforderlich sind.Der Header
SysdigTeamIDist optional. Wenn Sie diesen Header angeben, begrenzen Sie die Anforderung auf die Daten und Ressourcen, die für das angegebene Team verfügbar sind.Informationen zum Abrufen eines Autorisierungstokens (
AUTH_TOKEN) und derGUIDfinden Sie unter Header für IAM-Tokens. -
<NOTIFICATION_ID>gibt die ID der Meldung an, die Sie ändern möchten. -
Sie können Daten übergeben, um die Benachrichtigung in der Datei
notification.jsonzu erstellen, indem Sie-dverwenden.
Das folgende Beispiel zeigt die Parameter für den Anforderungshauptteil, die Sie für die Aktualisierung einer Benachrichtigung festlegen können:
{
"notificationChannel": {
"id": 9,
"version": 2,
"type": "WEBHOOK",
"enabled": true,
"name": "test-tip-webhook",
"options": {
"notifyOnOk": false,
"url": "https://test-tip.endpoint.com",
"notifyOnResolve": true
}
}
}
Anforderungshauptteil-Parameter: Alle im GET-Benachrichtigungskanal angegebenen Parameter für den Antworthauptteil mit folgender Ausnahme:
- createdOn
- modifiedOn
Hinweis: Die Benachrichtigungsversion kann über den Antworthauptteil von notificationChannels API abgerufen werden. Der Benutzer kann auch customHeaders und customData zu den Notizen hinzufügen, je nach seinen Anforderungen.
Benachrichtigungsschema: Anforderungshauptteil
Informationen zu einem oder mehreren Benachrichtigungskanälen finden Sie im Schema:
{
"notificationChannel": {
"id": 20,
"version": 1,
"type": "",
"enabled": true,
"name": "",
"options": {
"notifyOnOk": false,
"notifyOnResolve": true,
"resolveOnOk": true,
"channel": "",
"emailRecipients": "",
"url" : "",
"apiKey": "",
"routingKey": "",
"account": "",
"serviceKey": "",
"serviceName": ""
}
}
}
SWW-Schema bei der Erstellung, Aktualisierung oder Löschung eines Benachrichtigungskanals:
{
"notificationChannel": {
"id": 20,
"version": 1,
"type": "",
"enabled": true,
"name": "",
"options": {
"notifyOnOk": false,
"notifyOnResolve": true,
"resolveOnOk": true,
"channel": "",
"emailRecipients": "",
"url" : "",
"apiKey": "",
"routingKey": "",
"account": "",
"serviceKey": "",
"serviceName": ""
}
}
}
Benachrichtigungsschema: Antwortteil
{
"notificationChannel": {
"id": 20,
"version": 1,
"createdOn": 1466023669000,
"modifiedOn": 1466023669000,
"type": "",
"enabled": true,
"name": "",
"options": {
"notifyOnOk": false,
"notifyOnResolve": true,
"resolveOnOk": true,
"channel": "",
"emailRecipients": "",
"url" : "",
"apiKey": "",
"routingKey": "",
"account": "",
"serviceKey": "",
"serviceName": ""
}
}
}
Hauptteilparameter
id (integer)
ID eines Benachrichtigungskanals.
createdOn (integer)
Definiert die Erstellungszeit einer Benachrichtigung in Millisekunden.
Dieser Parameter gibt die Unix-Zeitmarke für die Erstellung der Benachrichtigung zurück.
description (string)
Dieser Parameter beschreibt die Benachrichtigung.
Die Beschreibung ist verfügbar, wenn Sie eine Benachrichtigung im Abschnitt Benachrichtigungen der Überwachungsbenutzerschnittstelle anzeigen, und in Benachrichtigungs-E-Mails eingeschlossen.
enabled (boolean)
Definiert den Status eines Benachrichtigungskanals.
Setzen Sie diesen Parameter auf true, wenn der Benachrichtigungskanal aktiviert ist, um Ereignisse zu senden und zu benachrichtigen, wenn eine Benachrichtigung ausgelöst wird.
Setzen Sie diese Einstellung auf false, um den Benachrichtigungskanal zu inaktivieren, sodass keine Benachrichtigungsereignisse gesendet werden können.
name (Zeichenfolge)
Name der Benachrichtigung. Muss eindeutig sein.
Der Name eines Benachrichtigungskanals muss eindeutig sein und darf nicht mehr als 255 Zeichen enthalten.
modifiedOn (integer)
Definiert den Zeitpunkt der letzten Änderung einer Benachrichtigung in Millisekunden.
Dieser Parameter definiert die Unix-Zeitmarke für die letzte Änderung der Benachrichtigung.
Options (json)
Die Optionen unterscheiden sich je nach Typ des Benachrichtigungskanals.
Die folgende JSON zeigt das Schema-Modell:
"options": {
"notifyOnOk": false,
"notifyOnResolve": true,
"resolveOnOk": true,
"channel": "",
"emailRecipients": "",
"url" : "",
"apiKey": "",
"routingKey": "",
"account": "",
"serviceKey": "",
"serviceName": ""
}
| Option | EMAIL |
PAGER_DUTY |
SLACK |
VICTOROPS |
WEBHOOK |
OPSGENIE |
|---|---|---|---|---|---|---|
name |
||||||
notifyOnOk |
||||||
notifyOnResolve |
||||||
resolveOnOk |
||||||
emailRecipients |
||||||
url |
||||||
apiKey |
||||||
routingKey |
||||||
account |
||||||
serviceKey |
||||||
serviceName |
apiKey (string)
API-Schlüssel von VictorOps. Sie müssen diesen Schlüssel auf der Seite für die VictorOps-Integrationseinstellungen abrufen.
channel (string)
Name des Kanals.
emailRecipients (string)
Liste von E-Mail-Adressen.
notifyOnOk (boolean)
Flag, das den Status zum Senden einer Benachrichtigung angibt, wenn sich der Benachrichtigungsstatus von ACTIVE in OK ändert und die Benachrichtigung manuell von einem Benutzer bestätigt wird.
Setzen Sie die Einstellung auf true, um eine Benachrichtigung zu senden.
notifyOnResolve (boolean)
Flag, das den Status zum Senden einer Benachrichtigung angibt, wenn sich der Benachrichtigungsstatus von ACTIVE in OK ändert, die Bedingung nicht mehr ausgelöst wird, weil sie aufgelöst wurde, und die Benachrichtigung
manuell vom Benutzer in "resolved" (behoben) geändert wurde.
Setzen Sie die Einstellung auf true, um eine Benachrichtigung zu senden.
resolveOnOk (boolean)
Flag, das den Status zum Senden einer Benachrichtigung angibt, wenn sich der Benachrichtigungsstatus von ACTIVE in OK ändert und die Bedingung nicht mehr ausgelöst wird, weil sie aufgelöst wurde.
Setzen Sie die Einstellung auf true, um eine Benachrichtigung zu senden.
routingKey (string)
Der Routing-Schlüssel von VictorOps. Sie müssen diesen Schlüssel auf der Seite für die VictorOps-Integrationseinstellungen abrufen.
url (string)
URL-Endpunkt.
Typ
Definiert den Benachrichtigungskanal.
| Typ der Benachrichtigung | Wert |
|---|---|
EMAIL |
|
| PagerDuty | PAGER_DUTY |
| Slack | SLACK |
| VictorOps | VICTOROPS |
| Webhook | WEBHOOK |
| OpsGenie | OPSGENIE |
version (integer)
Version einer Benachrichtigung.
Die Version ändert sich jedes Mal, wenn Sie eine Benachrichtigung aktualisieren.
Die Version wird für optimistisches Sperren verwendet.
Abfrageparameter
notificationId (integer)
ID einer Benachrichtigung.
from (long)
Definiert die Startzeitmarke (in Mikrosekunden), die verwendet wird, wenn Sie Informationen zu definierten Benachrichtigungen anfordern.
to (long)
Definiert die Endzeitmarke (in Mikrosekunden), die verwendet wird, wenn Sie Informationen zu definierten Benachrichtigungen anfordern.