MetriBeacon
Menü
Deutsch

POST Logsuche starten

/api/v1/logs/queries

Starten Sie eine geschützte asynchrone Suche mit festem verfügbaren Datenstand. Zähler, Histogramm und Feldwerte umfassen alle Treffer unabhängig vom Seitencursor.

Auf dieser Seite

Zugriff und Rechte

Starten Sie eine geschützte asynchrone Suche mit festem verfügbaren Datenstand. Zähler, Histogramm und Feldwerte umfassen alle Treffer unabhängig vom Seitencursor.

Browsersitzung: Cookie __Host-mb_session.

Maschinen-Verwaltungszugang in Authorization: Bearer. Beachten Sie die von der Operation benötigten Berechtigungen (Scopes).

Parameter und Header

Keine Pfad-, Query- oder zusätzlichen Anfrageheader-Parameter.

Anfragekörper

FeldTyp und GrenzenErforderlichBedeutung
$CentralLogQueryJa—
$.cursorstring; {"maxLength":4096}Nein—
$.environmentstringNein—
$.fromstring; {"format":"date-time"}Nein—
$.hoststringNein—
$.levelsarray<string>; {"maxItems":7}Nein—
$.levels[]stringJa—
$.limitinteger; {"default":50,"maximum":100,"minimum":1}Nein—
$.patternstringNein—
$.servicestringNein—
$.snapshotstring; {"format":"date-time"}Nein—
$.source_idsarray<string; {"format":"uuid"}>; {"maxItems":100}Nein—
$.source_ids[]string; {"format":"uuid"}Ja—
$.textstring; {"maxLength":4096}Nein—
$.tostring; {"format":"date-time"}Nein—
$.trace_idstringNein—
$.workspace_idstring; {"format":"uuid"}Ja—
$.facet_fieldsarray<string; {"enum":["service","environment","host","level","source_id"]}>; {"maxItems":5}NeinZusätzliche genaue Feldwertanzahlen für den vollständigen gefilterten Zeitraum. Nur bei Bedarf anfordern; die normale Suche liefert weiterhin die vollständige Trefferzahl, das Histogramm und Meldungsmuster.
$.facet_fields[]string; {"enum":["service","environment","host","level","source_id"]}Ja—
$.stream_idstring; {"maxLength":128}Nein—
$.incident_idstring; {"format":"uuid"}Nein—
$.incident_scopestring; {"enum":["associated","workspace"]}Nein—
$.incident_modestring; {"enum":["matched","warnings","all"]}Nein—

Antworten

application/json

FeldTyp und GrenzenErforderlichBedeutung
$CentralLogJobJa—
$.error_codestring | nullNein—
$.idstring; {"format":"uuid"}Ja—
$.resultCentralLogResultNein—
$.result.countintegerNein—
$.result.facetsarray<object; {"additionalProperties":false}>; {"maxItems":150}Nein—
$.result.facets[]object; {"additionalProperties":false}Ja—
$.result.facets[].countintegerNein—
$.result.facets[].fieldstringNein—
$.result.facets[].valuestringNein—
$.result.histogramarray<object; {"additionalProperties":false}>; {"maxItems":1000}Nein—
$.result.histogram[]object; {"additionalProperties":false}Ja—
$.result.histogram[].countintegerNein—
$.result.histogram[].levelstringNein—
$.result.histogram[].timestring; {"format":"date-time"}Nein—
$.result.next_cursorstringNein—
$.result.patternsarray<object; {"additionalProperties":false}>; {"maxItems":30}Nein—
$.result.patterns[]object; {"additionalProperties":false}Ja—
$.result.patterns[].countintegerNein—
$.result.patterns[].messagestringNein—
$.result.patterns[].patternstringNein—
$.result.pendingintegerNein—
$.result.recordsarray<CentralLogRecord>; {"maxItems":100}Nein—
$.result.records[]CentralLogRecordJa—
$.result.records[].attributesobject; {"additionalProperties":true}Nein—
$.result.records[].bodyJSONNein—
$.result.records[].environmentstringNein—
$.result.records[].hoststringNein—
$.result.records[].idstring; {"maxLength":256}Ja—
$.result.records[].levelstringJa—
$.result.records[].messagestring; {"maxLength":65536}Ja—
$.result.records[].patternstringJa—
$.result.records[].received_atstring; {"format":"date-time"}Ja—
$.result.records[].resourceobject; {"additionalProperties":true}Nein—
$.result.records[].scopestringNein—
$.result.records[].servicestringNein—
$.result.records[].source_idstring; {"format":"uuid"}Ja—
$.result.records[].span_idstringNein—
$.result.records[].timestring; {"format":"date-time"}Ja—
$.result.records[].time_originstringJa—
$.result.records[].trace_idstringNein—
$.result.records[].workspace_idstring; {"format":"uuid"}Ja—
$.result.snapshotstring; {"format":"date-time"}Nein—
$.result.incompletebooleanNein—
$.result.expires_atstring; {"format":"date-time"}Nein—
$.result.summary_pendingbooleanNeinEinträge sind verfügbar, während Zähler, Histogramm, Feldwerte und Muster für den vollständigen Zeitraum noch berechnet werden. Vorläufige Nullwerte oder leere Listen sind keine abschließenden Statistiken.
$.result.observation_statestring; {"enum":["complete","delivery_delayed","catching_up","incomplete"]}Nein—
$.result.observation_issuesarray<CentralLogObservationIssue>; {"maxItems":100}Nein—
$.result.observation_issues[]CentralLogObservationIssueJa—
$.result.observation_issues[].source_idstring; {"format":"uuid"}Ja—
$.result.observation_issues[].source_namestringJa—
$.result.observation_issues[].stream_idstringJa—
$.result.observation_issues[].stream_namestringJa—
$.result.observation_issues[].statusstringJa—
$.result.observation_issues[].codestringJa—
$.result.observation_issues[].phasestringJa—
$.result.observation_issues[].started_atstring; {"format":"date-time"}Ja—
$.result.observation_issues[].ended_atstring; {"format":"date-time"}Nein—
$.result.observation_issues[].http_statusintegerNein—
$.result.observation_issues[].server_phasestringNein—
$.result.observation_issues[].sqlstatestringNein—
$.result.observation_issues[].last_atstring; {"format":"date-time"}Nein—
$.statusstring; {"enum":["queued","running","complete","failed","cancelled"]}Ja—
Stabile Fehlercodes
invalid_credential
unauthorized
HeaderTyp und GrenzenBedeutung
Cache-Controlstring; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"}Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation.
Content-Languagestring; {"enum":["en","de"]}Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil.
X-Request-IDstringVom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.

application/problem+json

FeldTyp und GrenzenErforderlichBedeutung
$ProblemJa—
$.codestringJaStabiler maschinenlesbarer Fehlercode
$.detailstringJaKurze lokalisierte Erklärung ohne interne Fehlerdaten
$.instancestringJaEinmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource
$.messagestringJaVorübergehend für bestehende Clients gleich detail
$.message_keystringJaStabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage
$.message_paramsobject; {"additionalProperties":true}JaBenannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML
$.request_idstring; {"pattern":"^[0-9a-f]{32}$"}JaVom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten.
$.statusinteger; {"maximum":599,"minimum":400}Ja—
$.titlestringJaLokalisierte HTTP-Statusbezeichnung
$.typestring; {"const":"about:blank"}Ja—
Stabile Fehlercodes
csrf
insufficient_scope
invalid_origin
operator_required
forbidden
HeaderTyp und GrenzenBedeutung
Cache-Controlstring; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"}Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation.
Content-Languagestring; {"enum":["en","de"]}Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil.
X-Request-IDstringVom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.

application/problem+json

FeldTyp und GrenzenErforderlichBedeutung
$ProblemJa—
$.codestringJaStabiler maschinenlesbarer Fehlercode
$.detailstringJaKurze lokalisierte Erklärung ohne interne Fehlerdaten
$.instancestringJaEinmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource
$.messagestringJaVorübergehend für bestehende Clients gleich detail
$.message_keystringJaStabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage
$.message_paramsobject; {"additionalProperties":true}JaBenannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML
$.request_idstring; {"pattern":"^[0-9a-f]{32}$"}JaVom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten.
$.statusinteger; {"maximum":599,"minimum":400}Ja—
$.titlestringJaLokalisierte HTTP-Statusbezeichnung
$.typestring; {"const":"about:blank"}Ja—
Stabile Fehlercodes
invalid_workspace
not_found
HeaderTyp und GrenzenBedeutung
Cache-Controlstring; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"}Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation.
Content-Languagestring; {"enum":["en","de"]}Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil.
X-Request-IDstringVom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.

application/problem+json

FeldTyp und GrenzenErforderlichBedeutung
$ProblemJa—
$.codestringJaStabiler maschinenlesbarer Fehlercode
$.detailstringJaKurze lokalisierte Erklärung ohne interne Fehlerdaten
$.instancestringJaEinmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource
$.messagestringJaVorübergehend für bestehende Clients gleich detail
$.message_keystringJaStabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage
$.message_paramsobject; {"additionalProperties":true}JaBenannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML
$.request_idstring; {"pattern":"^[0-9a-f]{32}$"}JaVom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten.
$.statusinteger; {"maximum":599,"minimum":400}Ja—
$.titlestringJaLokalisierte HTTP-Statusbezeichnung
$.typestring; {"const":"about:blank"}Ja—
Stabile Fehlercodes
invalid_workspace
stale_check
result_conflict
HeaderTyp und GrenzenBedeutung
Cache-Controlstring; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"}Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation.
Content-Languagestring; {"enum":["en","de"]}Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil.
X-Request-IDstringVom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.

application/problem+json

FeldTyp und GrenzenErforderlichBedeutung
$ProblemJa—
$.codestringJaStabiler maschinenlesbarer Fehlercode
$.detailstringJaKurze lokalisierte Erklärung ohne interne Fehlerdaten
$.instancestringJaEinmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource
$.messagestringJaVorübergehend für bestehende Clients gleich detail
$.message_keystringJaStabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage
$.message_paramsobject; {"additionalProperties":true}JaBenannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML
$.request_idstring; {"pattern":"^[0-9a-f]{32}$"}JaVom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten.
$.statusinteger; {"maximum":599,"minimum":400}Ja—
$.titlestringJaLokalisierte HTTP-Statusbezeichnung
$.typestring; {"const":"about:blank"}Ja—
Stabile Fehlercodes
invalid_config
invalid_monitor
HeaderTyp und GrenzenBedeutung
Cache-Controlstring; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"}Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation.
Content-Languagestring; {"enum":["en","de"]}Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil.
X-Request-IDstringVom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.

application/problem+json

FeldTyp und GrenzenErforderlichBedeutung
$ProblemJa—
$.codestringJaStabiler maschinenlesbarer Fehlercode
$.detailstringJaKurze lokalisierte Erklärung ohne interne Fehlerdaten
$.instancestringJaEinmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource
$.messagestringJaVorübergehend für bestehende Clients gleich detail
$.message_keystringJaStabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage
$.message_paramsobject; {"additionalProperties":true}JaBenannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML
$.request_idstring; {"pattern":"^[0-9a-f]{32}$"}JaVom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten.
$.statusinteger; {"maximum":599,"minimum":400}Ja—
$.titlestringJaLokalisierte HTTP-Statusbezeichnung
$.typestring; {"const":"about:blank"}Ja—
Stabile Fehlercodes
invalid_workspace
check_capacity
HeaderTyp und GrenzenBedeutung
Retry-Afterstring; {"pattern":"^[0-9]+$"}Temporärer Serverfehler; unverändert mit Retry-After und derselben Idempotenzkennung wiederholen

application/problem+json

FeldTyp und GrenzenErforderlichBedeutung
$ProblemJa—
$.codestringJaStabiler maschinenlesbarer Fehlercode
$.detailstringJaKurze lokalisierte Erklärung ohne interne Fehlerdaten
$.instancestringJaEinmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource
$.messagestringJaVorübergehend für bestehende Clients gleich detail
$.message_keystringJaStabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage
$.message_paramsobject; {"additionalProperties":true}JaBenannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML
$.request_idstring; {"pattern":"^[0-9a-f]{32}$"}JaVom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten.
$.statusinteger; {"maximum":599,"minimum":400}Ja—
$.titlestringJaLokalisierte HTTP-Statusbezeichnung
$.typestring; {"const":"about:blank"}Ja—
Stabile Fehlercodes
check_location_unavailable
feature_unavailable
log_admission_busy
log_queue_full
log_storage_unavailable
unavailable
account_busy
database_lock_timeout
database_timeout
database_unavailable
database_error
request_cancelled
HeaderTyp und GrenzenBedeutung
Cache-Controlstring; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"}Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation.
Content-Languagestring; {"enum":["en","de"]}Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil.
X-Request-IDstringVom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.

application/problem+json

FeldTyp und GrenzenErforderlichBedeutung
$ProblemJa—
$.codestringJaStabiler maschinenlesbarer Fehlercode
$.detailstringJaKurze lokalisierte Erklärung ohne interne Fehlerdaten
$.instancestringJaEinmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource
$.messagestringJaVorübergehend für bestehende Clients gleich detail
$.message_keystringJaStabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage
$.message_paramsobject; {"additionalProperties":true}JaBenannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML
$.request_idstring; {"pattern":"^[0-9a-f]{32}$"}JaVom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten.
$.statusinteger; {"maximum":599,"minimum":400}Ja—
$.titlestringJaLokalisierte HTTP-Statusbezeichnung
$.typestring; {"const":"about:blank"}Ja—
Stabile Fehlercodes
log_limit
request_too_large
HeaderTyp und GrenzenBedeutung
Cache-Controlstring; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"}Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation.
Content-Languagestring; {"enum":["en","de"]}Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil.
X-Request-IDstringVom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.

application/problem+json

FeldTyp und GrenzenErforderlichBedeutung
$ProblemJa—
$.codestringJaStabiler maschinenlesbarer Fehlercode
$.detailstringJaKurze lokalisierte Erklärung ohne interne Fehlerdaten
$.instancestringJaEinmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource
$.messagestringJaVorübergehend für bestehende Clients gleich detail
$.message_keystringJaStabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage
$.message_paramsobject; {"additionalProperties":true}JaBenannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML
$.request_idstring; {"pattern":"^[0-9a-f]{32}$"}JaVom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten.
$.statusinteger; {"maximum":599,"minimum":400}Ja—
$.titlestringJaLokalisierte HTTP-Statusbezeichnung
$.typestring; {"const":"about:blank"}Ja—

Wiederholungen und asynchrone Aufträge

Diese Operation liest oder prüft, ohne eine Ressourcenänderung anzuwenden. Beachten Sie Ratenlimits und Zugangslaufzeiten.

HTTP 202 bedeutet, dass der Hintergrundauftrag angenommen wurde. Prüfen Sie seinen Status mit der zurückgegebenen Auftragskennung. Laden Sie Ergebnisse nach dem Abschluss herunter oder lesen Sie den Fehler- beziehungsweise Abbruchstatus.

Anfragebeispiele

Ersetzen Sie Demokennungen, Zeitstempel und Platzhalter durch eigene Werte. Behalten Sie bei Wiederholungen Kennungen, Zeit und Inhalt bei. Diese Beispiele führen auf der Seite keine Anfragen aus.

Halten Sie Anmeldelinks, Codes, Cookies und Schlüssel privat. Schreiben Sie sie nicht in Logs und teilen Sie sie nicht in Hilfeanfragen.

shell
curl --proto "=https" --tlsv1.2 --fail-with-body --max-time 30 --request POST --header @"$HOME/.config/metribeacon/headers.txt" --header "Content-Type: application/json" --data-binary '{"workspace_id":"00000000-0000-4000-8000-000000000001","text":"service:api level:>=error","source_ids":[],"levels":[]}' https://metribeacon.com/api/v1/logs/queries
python
import json
from pathlib import Path
from urllib.request import Request, urlopen
headers=json.loads((Path.home()/".config/metribeacon/headers.json").read_text())
headers["Content-Type"]="application/json"
request=Request('https://metribeacon.com/api/v1/logs/queries',headers=headers,method='POST',data='{"workspace_id":"00000000-0000-4000-8000-000000000001","text":"service:api level:>=error","source_ids":[],"levels":[]}'.encode())
with urlopen(request,timeout=30) as response:
    print(response.status)
javascript
import {readFile} from "node:fs/promises";
import {homedir} from "node:os";
const headers=JSON.parse(await readFile(homedir()+"/.config/metribeacon/headers.json","utf8"));
headers["Content-Type"]="application/json";
const response=await fetch("https://metribeacon.com/api/v1/logs/queries",{method:"POST",headers,redirect:"error",signal:AbortSignal.timeout(30000),body:"{\"workspace_id\":\"00000000-0000-4000-8000-000000000001\",\"text\":\"service:api level:>=error\",\"source_ids\":[],\"levels\":[]}"});
console.log(response.status);await response.body?.cancel();
go
package main
import("net/http";"os";"path/filepath";"encoding/json";"time";"fmt";"strings")
func main(){home,_:=os.UserHomeDir();raw,e:=os.ReadFile(filepath.Join(home,".config/metribeacon/headers.json"));if e!=nil{panic("headers unavailable")};var h map[string]string;if json.Unmarshal(raw,&h)!=nil{panic("invalid headers")};r,_:=http.NewRequest("POST","https://metribeacon.com/api/v1/logs/queries",strings.NewReader("{\"workspace_id\":\"00000000-0000-4000-8000-000000000001\",\"text\":\"service:api level:>=error\",\"source_ids\":[],\"levels\":[]}"));for k,v:=range h{r.Header.Set(k,v)};r.Header.Set("Content-Type","application/json");c:=&http.Client{Timeout:30*time.Second,CheckRedirect:func(*http.Request,[]*http.Request)error{return http.ErrUseLastResponse}};res,e:=c.Do(r);if e!=nil{panic("request failed")};defer res.Body.Close();fmt.Println(res.StatusCode)}
  • HTTP-API, OAuth und MCP

    Finden Sie die Nutzer-API-Endpunkte mit Rechten, Feldern, Beispielen und Antwortformaten.

  • DELETE Logsuche abbrechen

    Brechen Sie Ihren Suchauftrag ab oder entfernen Sie ihn. Ein laufender Worker kann ein gelöschtes Ergebnis nicht erneut veröffentlichen.

  • GET Logsuchergebnis lesen

    Lesen Sie den aktorgebundenen Suchstatus oder sein fertiges Ergebnis nach erneuter Prüfung von Arbeitsbereichsrechten und Quellenaufbewahrung.

  • GET Freigegebene Logregeln lesen

    Ein Quellenschlüssel liest nur die eigene Aktivierung und Maskierung. Neue lokale Dateien oder Befehle kann er nicht freigeben.