Esempio: API REST Log Management
Questo esempio mostra come utilizzare l'API REST Log Management delle operazioni cloud per richiedere e richiamare log dai workflow server nella propria sottoscrizione cloud.
L'esempio descrive come ottenere un elenco di richieste di log, rilevare i tipi di log disponibili, richiedere e scaricare un log e infine eliminare le richieste di log e i file di log associati.
- Prima di iniziare
- Tutte le chiamate API richiedono un token valido per la richiesta di cross site forgery (CSRF) nell'intestazione IBM® -CSRF-TOKEN della chiamata. Ottieni un token CSRF utilizzando
POST /instance/services/csrf_token. Per ulteriori informazioni, consultare Impedire la falsificazione delle richieste tra siti. - Visualizza un elenco delle richieste di richiamo log sulla sottoscrizione
- Utilizzare la chiamata seguente per richiamare le richieste:
È possibile filtrare le richieste in base all'ambiente, ad esempio, l'ambiente di sviluppo e includere la paginazione:GET /instance/services/logsGET /instance/services/logs/?environment=dev&offset=5&size=10 - Rileva i tipi di log disponibili
- Sono supportati diversi tipi di log. Per ottenere un elenco dei tipi di log abilitati sulla sottoscrizione, utilizzare la chiamata seguente:
L'elenco include il nome di visualizzazione abilitato alla traduzione per ogni tipo di log e un elenco delle proprietà disponibili.GET /instance/services/log_types - Richiedi un tipo di log specifico per un ambiente
- Utilizzare la seguente chiamata per richiedere un log:
I dettagli della richiesta di log vengono passati come oggetto JSON nel corpo della richiesta della chiamata. Ad esempio, per richiedere i log dal cluster dell'applicazione nell'ambiente di sviluppo, il corpo della chiamata deve includere l'ambiente e il tipo di log:POST /instance/services/logs
A seconda delle proprietà supportate per il tipo di log, puoi aggiungere ulteriori criteri di filtraggio nel corpo della chiamata impostando le proprietà corrispondenti nell'oggetto JSON. Ad esempio, per richiedere un log del cluster applicazioni contenente tutti gli eventi registrati tra le 13:07 e le 13:17 del 16 agosto 2019 con un livello di log all, utilizzare la seguente chiamata:POST /instance/services/logs ... { "environment": "dev", "log_type": "AppCluster" }
La risposta contiene l'ID di log e lo stato e i dettagli della richiesta di log. È possibile utilizzare l'ID log per recuperare lo stato, i dettagli della richiesta di log e il file di log. Se si specifica una proprietà non supportata per un tipo di log, l'API restituisce un errore. Se non si includono tutte le proprietà supportate, vengono utilizzati i valori predefiniti per le proprietà mancanti.POST /instance/services/logs ... { "environment": "dev", "log_type": "AppCluster", "start_time": "2019-08-16T13:17:22.421Z", "duration": 10, "min_log_level": "all" } - Richiama il log richiesto
- Controllare lo stato di una richiesta di richiamo log aggiungendo il parametro log_id alla chiamata GET :
Quando la richiesta di log restituita contiene lo stato "available", puoi utilizzare la seguente chiamata con content - type "application/zip" per richiamare il file .zip contenente i log:GET /instance/services/logs/8015GET /instance/services/logs/8015/file - Elimina richieste di log e file di log associati
- Eliminare la richiesta di log e i file di log utilizzando la chiamata seguente:
DELETE /instance/services/logs/8015