Zum Inhalt springen

Prometheus Jobs und Targets per Observability-API verwalten

Zuletzt aktualisiert am

Sie können Ihre Prometheus Scrape-Konfigurationen (Jobs und Targets) über die Observability API verwalten.

Eine vollständige Liste aller verfügbaren Endpunkte, Parameter und Schemata finden Sie in der STACKIT Observability Scrape Config API-Spezifikation.

Um Ihren ersten Job und Ihr Target zu konfigurieren, senden Sie eine HTTP-POST-Anfrage an den Endpunkt scrapeconfigs. Mit dem folgenden Request-Body verfügen Sie über die Minimalkonfiguration für einen neuen Job und ein Target.

Befehl:

Terminal-Fenster
stackit curl -X POST "[https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/scrapeconfigs](https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/scrapeconfigs)" \
-H "Content-Type: application/json" \
--data '{"staticConfigs":[{"targets":["your-url-which-delivers-your-metrics.com:9100"]}],"jobName":"Job-1","scheme":"http","scrapeInterval":"5m","scrapeTimeout":"2m","metricsPath":"/metrics"}'

Um einen bestehenden Job und ein Target zu ändern, verwenden Sie die HTTP-PATCH-Methode anstelle von POST und geben Sie den spezifischen <JOB_NAME> in der URL an.

Mit dem folgenden Befehl werden Ihr Job und Ihr Target so aktualisiert, dass sie die neue URL, ein Scrape-Intervall von 15 Minuten und ein Scrape-Timeout von 1 Minute verwenden.

Befehl:

Terminal-Fenster
stackit curl -X PATCH "[https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/scrapeconfigs/](https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/scrapeconfigs/)<JOB_NAME>" \
-H "Content-Type: application/json" \
--data '{"staticConfigs":[{"targets":["your-changed-url-which-delivers-your-metrics.com:9100"]}],"jobName":"Job-1","scheme":"http","scrapeInterval":"15m","scrapeTimeout":"1m","metricsPath":"/metrics"}'

Um einen Job zu löschen, geben Sie den Namen des zu löschenden Jobs in der URL an und senden Sie eine HTTP-DELETE-Anfrage.

Befehl:

Terminal-Fenster
stackit curl -X DELETE "[https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/scrapeconfigs/](https://argus.api.eu01.stackit.cloud/v1/projects/$PROJECT_ID/instances/$INSTANCE_ID/scrapeconfigs/)<JOB_NAME>" \
-H "accept: application/json"

Sie können die DELETE-Anfrage nicht verwenden, um ein bestimmtes Target zu entfernen, da dadurch der gesamte Job gelöscht wird. Um ein Target zu löschen, müssen Sie eine PATCH-Anfrage ausführen (wie im Abschnitt „Prometheus-Job und Target ändern“ gezeigt) und das zu löschende Target aus dem targets-Array in Ihrem Request-Body weglassen.