Zum Inhalt springen

API-Sicherung und -Wiederherstellung von Observability

Zuletzt aktualisiert am

  • Autorisierungscode und Instanz-ID
  • Observability-API-URLs

Es ist möglich, die Konfiguration und Dashboards zu sichern.

Dieses Dokument beschreibt, wie Sie die Observability-API mit dem Tool cURL aufrufen. Selbstverständlich können Sie auch ein anderes geeignetes Tool (z. B. POSTMAN) oder eine Programmiersprache verwenden, um mit der Observability-API zu kommunizieren.

Der API-Endpunkt zum Abrufen Ihrer Backup-Retentions ist über diese URL verfügbar, in die Sie noch Ihre Projekt-ID und Observability-Instanz-ID einsetzen müssen: https://argus.api.eu01.stackit.cloud/v1/projects/[projectId]/instances/[instanceId]/backup-retentions

cURL-Befehl:

Damit dieser cURL-Befehl funktioniert, müssen Sie die Umgebungsvariablen PROJECT_ID, INSTANCE_ID und API_TOKEN setzen.

Terminal-Fenster
curl "https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/backup-retentions" \
-u "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json"

Antwort

{
"grafanaBackupRetention": "14d",
"alertConfigBackupRetention": "14d",
"alertRulesBackupRetention": "14d",
"scrapeConfigBackupRetention": "14d",
"message": "Successfully got backup retention"
}

Der API-Endpunkt zum Abrufen Ihrer Backup-Schedules ist über diese URL verfügbar, in die Sie noch Ihre Projekt-ID und Observability-Instanz-ID einsetzen müssen: https://argus.api.eu01.stackit.cloud/v1/projects/[projectId]/instances/[instanceId]/backup-schedules?backupTarget=[backupTarget]

Der Parameter backupTarget akzeptiert einen der folgenden Werte: alertConfig, alertRules, scrapeConfig oder grafana.

cURL-Befehl:

Damit dieser cURL-Befehl funktioniert, müssen Sie die Umgebungsvariablen PROJECT_ID, INSTANCE_ID und API_TOKEN setzen.

BACKUP_TARGET="alertConfig"
curl -X GET "https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/backup-schedules?backupTarget=$BACKUP_TARGET" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json"

Antwort

{
"grafanaBackupSchedules": [
{
"schedule": "0 * * * *",
"scheduleId": "f6c728f0-c4e4-4ccc-a283-f7bfffb99fe2"
}
],
"scrapeConfigBackupSchedules": [
{
"schedule": "0 * * * *",
"scheduleId": "c1eaaaaa-1de5-4f89-9033-d152027207a8"
}
],
"alertConfigBackupSchedules": [
{
"schedule": "0 * * * *",
"scheduleId": "dc2ca261-de00-4de8-a25d-68607a56c28b"
},
{
"schedule": "0 */2 * * *",
"scheduleId": "682fb584-8d54-42c5-97f7-6178cfb9ee21"
},
{
"schedule": "0 * * * MON",
"scheduleId": "0f2b2efe-e60e-4f16-acd2-fb068fc33d86"
},
{
"schedule": "0 * * * 3",
"scheduleId": "d7b1a4ac-a2c2-4021-8a2a-1e199d105468"
},
{
"schedule": "0 * * * tue",
"scheduleId": "5837bf0d-dd4d-45f8-8c2e-a62535f1c7c4"
}
],
"alertRulesBackupSchedules": [
{
"schedule": "0 * * * *",
"scheduleId": "08714660-09e7-4c5e-858c-24dc5f316187"
}
],
"message": "Successfully got backup schedules"
}

Der API-Endpunkt zum Erstellen eines neuen Backup-Schedules ist über diese URL verfügbar, in die Sie noch Ihre Projekt-ID und Observability-Instanz-ID einsetzen müssen: https://argus.api.eu01.stackit.cloud/v1/projects/[projectId]/instances/[instanceId]/backup-schedules?backupTarget=[backupTarget]

Der Parameter backupTarget akzeptiert einen der folgenden Werte: alertConfig, alertRules, scrapeConfig oder grafana.

cURL-Befehl:

Damit dieser cURL-Befehl funktioniert, müssen Sie die Umgebungsvariablen PROJECT_ID, INSTANCE_ID und API_TOKEN setzen.

BACKUP_TARGET="alertConfig"
curl -X POST "https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/backup-schedules?backupTarget=$BACKUP_TARGET" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-d "{ "schedule": "0 * * * *"}"

Antwort

{
"message": "Backup schedule will be created"
}

Der API-Endpunkt zum Abrufen einer Liste der erstellten Sicherungen ist über diese URL verfügbar, in die Sie noch Ihre Projekt-ID und Observability-Instanz-ID einsetzen müssen: https://argus.api.eu01.stackit.cloud/v1/projects/[projectId]/instances/[instanceId]/backups?backupTarget=[backupTarget]

Der Parameter backupTarget akzeptiert einen der folgenden Werte: alertConfig, alertRules, scrapeConfig oder grafana.

cURL-Befehl:

Damit dieser cURL-Befehl funktioniert, müssen Sie die Umgebungsvariablen PROJECT_ID, INSTANCE_ID und API_TOKEN setzen.

BACKUP_TARGET="alertConfig"
curl -X GET "https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/backups?backupTarget=$BACKUP_TARGET" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json"

Antwort

{
"alertConfigBackups": [
"01-12-2021T00:00:18",
"01-12-2021T00:00:19",
"01-12-2021T00:00:25",
"01-12-2021T00:00:30",
"01-12-2021T00:05:12",
"01-12-2021T00:10:32",
"01-12-2021T00:15:14",
"01-12-2021T00:20:11",
"01-12-2021T00:25:09",
"01-12-2021T00:30:10",
---------------------,
"30-11-2021T23:55:13"
],
"message": "Successfully got backups"
}

Der API-Endpunkt zum manuellen Erstellen einer Sicherung ist über diese URL verfügbar, in die Sie noch Ihre Projekt-ID und Observability-Instanz-ID einsetzen müssen: https://argus.api.eu01.stackit.cloud/v1/projects/[projectId]/instances/[instanceId]/backups?backupTarget=[backupTarget]

Der Parameter backupTarget akzeptiert einen der folgenden Werte: alertConfig, alertRules, scrapeConfig oder grafana.

cURL-Befehl:

Damit dieser cURL-Befehl funktioniert, müssen Sie die Umgebungsvariablen PROJECT_ID, INSTANCE_ID und API_TOKEN setzen.

Terminal-Fenster
BACKUP_TARGET="alertConfig"
curl -X POST "https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/backups?backupTarget=$BACKUP_TARGET" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json"

Antwort

{
"message": "Backup will be created"
}

Sie müssen Ihre Instanz-ID und das Datum der wiederherzustellenden Sicherung in der URL angeben: https://argus.api.eu01.stackit.cloud/v1/projects/[projectId]/instances/[instanceId]/backup-restores/[backupDate]?restoreTarget=[restoreTarget]

Der Parameter restoreTarget akzeptiert einen der folgenden Werte: alertConfig, alertRules, scrapeConfig oder grafana.

cURL-Befehl:

Damit dieser cURL-Befehl funktioniert, müssen Sie die Umgebungsvariablen PROJECT_ID, INSTANCE_ID und API_TOKEN setzen.

Terminal-Fenster
BACKUP_DATE="30-11-2021T19:35:16"
RESTORE_TARGET="alertConfig"
curl -X POST "https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/backup-restores/$BACKUP_DATE?restoreTarget=$RESTORE_TARGET" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json"

Antwort

{
"message": "Restore will be proceeded"
}