vector.yaml aktualisiert
This commit is contained in:
-42
@@ -1,42 +0,0 @@
|
|||||||
# =============================================================================
|
|
||||||
# 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"
|
|
||||||
+34
@@ -0,0 +1,34 @@
|
|||||||
|
# =============================================================================
|
||||||
|
# SOURCES: Woher kommen die Daten?
|
||||||
|
# =============================================================================
|
||||||
|
sources:
|
||||||
|
docker_logs:
|
||||||
|
type: docker_logs
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# TRANSFORMS: Verarbeitung der Daten
|
||||||
|
# =============================================================================
|
||||||
|
transforms:
|
||||||
|
# Schritt 1: Nur bestimmte Level durchlassen
|
||||||
|
filter_debug:
|
||||||
|
type: filter
|
||||||
|
inputs: [docker_logs]
|
||||||
|
condition: 'includes(["INFO", "WARN", "ERROR"], .level)'
|
||||||
|
|
||||||
|
# Schritt 2: Die gefilterten Logs formatieren (VRL)
|
||||||
|
parse_logs:
|
||||||
|
type: remap
|
||||||
|
inputs: [filter_debug] # Nimmt den Input vom Filter, nicht von der Source!
|
||||||
|
source: |
|
||||||
|
.message = replace(.message, "\n", "")
|
||||||
|
.service = "my-cluster"
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# SINKS: Wohin sollen die Daten?
|
||||||
|
# =============================================================================
|
||||||
|
sinks:
|
||||||
|
stdout_debug:
|
||||||
|
type: console
|
||||||
|
inputs: [parse_logs]
|
||||||
|
encoding:
|
||||||
|
codec: json
|
||||||
Reference in New Issue
Block a user