Add audit-log-collector (Fluent Bit) in observability

Receives the http-log plugin's POSTs and dumps each record as a JSON
line to a PVC-backed file. Applied directly (kubectl), same as Jaeger
in this namespace — not Flux-managed yet.
This commit is contained in:
Stéphane Tailland
2026-08-21 13:34:12 +02:00
parent e4642b372c
commit a25edfdf13
4 changed files with 77 additions and 0 deletions
@@ -0,0 +1,22 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: audit-log-collector-config
namespace: observability
data:
fluent-bit.conf: |
[SERVICE]
Flush 1
Log_Level info
[INPUT]
Name http
Listen 0.0.0.0
Port 8888
[OUTPUT]
Name file
Match *
Path /data
File audit.jsonl
Format plain
@@ -0,0 +1,33 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: audit-log-collector
namespace: observability
spec:
replicas: 1
selector:
matchLabels:
app: audit-log-collector
template:
metadata:
labels:
app: audit-log-collector
spec:
containers:
- name: fluent-bit
image: fluent/fluent-bit:3.2
ports:
- containerPort: 8888
volumeMounts:
- name: config
mountPath: /fluent-bit/etc/fluent-bit.conf
subPath: fluent-bit.conf
- name: data
mountPath: /data
volumes:
- name: config
configMap:
name: audit-log-collector-config
- name: data
persistentVolumeClaim:
claimName: audit-log-collector-data
@@ -0,0 +1,11 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: audit-log-collector-data
namespace: observability
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
@@ -0,0 +1,11 @@
apiVersion: v1
kind: Service
metadata:
name: audit-log-collector
namespace: observability
spec:
selector:
app: audit-log-collector
ports:
- port: 80
targetPort: 8888