splunk
Logs aus einer Splunk-Search-REST-API in OTLP-förmige Tabellen lesen
Maintainer: smithclay
Installation und Laden
INSTALL splunk FROM community;LOAD splunk;Beispiel
-- Store your Splunk credentials once (kept out of query text; redacted in duckdb_secrets()).CREATE SECRET ( TYPE splunk, URL 'https://splunk.example.com:8089', USERNAME '<username>', PASSWORD '<password>');
-- Or authenticate with a token instead of a username/password.CREATE SECRET ( TYPE splunk, URL 'https://splunk.example.com:8089', TOKEN '<token>', TOKEN_TYPE 'bearer' -- 'bearer' for JWT auth tokens, 'splunk' for session keys);
-- Run SPL and get back OTLP log rows.SELECT time_unix_nano, service_name, severity_text, bodyFROM read_splunk_logs( query => 'index=main error', earliest => '-1h', latest => 'now');Über splunk
Diese Erweiterung liest Logs von einem Endpunkt der Splunk-Search-REST-API
direkt in DuckDB. Zeilen entsprechen dem OTLP-Logschema (passend zu
duckdb-otlp read_otlp_logs), sodass Splunk-Ereignisse
unmittelbar in ein OTLP-förmiges Lakehouse neben Daten aus anderen Quellen gelangen. Ressourceneigenschaftsschlüssel
stimmen mit den Splunk-Receivern des OpenTelemetry Collectors überein (host.name, com.splunk.*) und erleichtern die Interoperabilität.
Funktionen:
- Anmeldedaten über DuckDB-Secrets (
CREATE SECRET (TYPE splunk, ...)), mit Unterstützung für Basic Auth oder Token-Auth;PASSWORD/TOKENwerden induckdb_secrets()geschwärzt. Setzen SieINSECURE_TLS truefür Instanzen mit selbstsignierten Zertifikaten. - HEC/JSON-Ereignisbewusstsein: Splunk extrahiert JSON-Ereignisfelder zur Suchzeit nicht, daher
parst die Erweiterung
_rawund löst Felder wielevel,trace_idundservicedaraus auf - Automatische Wiederholungen bei Ratenbegrenzungen (HTTP 429), HTTP 5xx und transienten Netzwerkfehlern; Wartezeiten respektieren die Abbruch der Abfrage
- Projektions-Pushdown: nur ausgewählte Spalten werden dekodiert, sodass Aggregationen das zeilenweise
Parsen von
_rawund die JSON-Serialisierung der Attribute überspringen - Deutliche Fehler bei ungültigem SPL: serverseitige Suchfehler werden ausgelöst statt wie null Treffer zu wirken
- Splunk-Felder, die nicht auf das OTLP-Schema abgebildet werden, stehen als JSON in
log_attributesfür DuckDBs JSON-Funktionen bereit
read_splunk_logs akzeptiert query (SPL, Standard *), earliest (Standard -15m), latest
(Standard now), max_rows (0 = unbegrenzt), timeout, retries und secret (zur Auswahl eines
benannten Secrets). Logs werden derzeit unterstützt. Die vollständige Dokumentation finden Sie im
Erweiterungs-Repository.
Hinzugefügte Funktionen
| function_name | function_type | description | comment | examples |
|---|---|---|---|---|
| read_splunk_logs | table | NULL | NULL |
Überladene Funktionen
Diese Erweiterung fügt keine Funktionsüberladungen hinzu.
Hinzugefügte Typen
Diese Erweiterung fügt keine Typen hinzu.
Hinzugefügte Einstellungen
Diese Erweiterung fügt keine Einstellungen hinzu.