diff --git a/vector.toml b/vector.toml new file mode 100644 index 0000000..957a1ad --- /dev/null +++ b/vector.toml @@ -0,0 +1,42 @@ +# ============================================================================= +# SOURCES: Woher kommen die Daten? +# ============================================================================= + +[sources.docker_logs] +type = "docker_logs" + +# ============================================================================= +# TRANSFORMS: Was soll mit den Daten passieren? (Optional) +# ============================================================================= + +[transforms.filter_debug] +type = "filter" +inputs = ["docker_logs"] +condition = 'includes(["INFO", "WARN", "ERROR"], .level)' +# Hinweis: Das funktioniert nur, wenn die App strukturierte Logs liefert. +# Für einfache Texte lassen wir den Transform hier weg oder nutzen VRL. + +# Beispiel für eine einfache Formatierung mit VRL (Vector Remap Language) +[transforms.parse_logs] +type = "remap" +inputs = ["docker_logs"] +source = ''' +.message = replace(.message, "\n", "") +.service = "my-cluster" +''' + +# ============================================================================= +# SINKS: Wohin sollen die Daten? +# ============================================================================= + +# Sink 1: Ausgabe in die Konsole (Perfekt zum Debuggen) +[sinks.stdout_debug] +type = "console" +inputs = ["parse_logs"] +encoding.codec = "json" + +# Sink 2: Hier könntest du z.B. Loki oder Elasticsearch hinzufügen +# [sinks.loki] +# type = "loki" +# inputs = ["parse_logs"] +# endpoint = "http://loki:3100" \ No newline at end of file