Skip to content

Commit b060f59

Browse files
update vector config
1 parent e39fcdb commit b060f59

File tree

7 files changed

+113
-63
lines changed

7 files changed

+113
-63
lines changed

apps/vector/daemonset.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ spec:
9494
name: "vector-config"
9595
- name: data
9696
hostPath:
97-
path: "/var/lib/vector"
97+
path: "/var/lib/vector-k8s"
9898
- hostPath:
9999
path: "/var/log/"
100100
name: "var-log"

clusters/rs.soeren.cloud/monitoring/victoriametrics/virtualservice.yaml

Lines changed: 0 additions & 19 deletions
This file was deleted.

clusters/svc.dd.soeren.cloud/vector/kustomization.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,16 @@ namespace: vector
55
resources:
66
- ../../../apps/vector
77
- namespace.yaml
8+
patches:
9+
- target:
10+
kind: DaemonSet
11+
name: vector
12+
patch: |-
13+
- op: add
14+
path: /spec/template/spec/containers/0/env/-
15+
value:
16+
name: "DC"
17+
value: "dd"
818
configMapGenerator:
919
- name: vector-config
1020
behavior: merge
Lines changed: 46 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,52 @@
11
---
2+
transforms:
3+
# Parse and enrich journald logs
4+
k8s_parser:
5+
type: "remap"
6+
inputs: ["k8s"]
7+
source: |
8+
.dc = get_env_var("DC") ?? ""
9+
.cluster = get_env_var("CLUSTER") ?? ""
10+
11+
#.app_name = replace!(to_string!(.unit_name) || "unknown", r'\.(service|timer|socket)', "")
12+
13+
if exists(.message) {
14+
message_str = string(.message) ?? ""
15+
16+
# Try JSON first
17+
json_result = parse_json(message_str) ?? {}
18+
if exists(json_result.level) && is_string(json_result.level) {
19+
.log_level = downcase!(json_result.level)
20+
} else {
21+
# Comprehensive regex for common log level patterns
22+
level_match = parse_regex(message_str, r'(?i)(?:\[|<|\(|^|\s|level[=:]\s*|severity[=:]\s*|\|)(?P<level>info|error|warn|warning|debug|trace|fatal|critical)(?:\]|>|\)|[:\s]|\||$)') ?? {}
23+
24+
if exists(level_match.level) {
25+
found_level = downcase!(level_match.level)
26+
27+
# Normalize variations
28+
.log_level = found_level
29+
}
30+
}
31+
}
32+
33+
234
sinks:
335
prom_exporter:
436
type: "prometheus_exporter"
537
inputs: ["host_metrics", "internal_metrics"]
638
address: "0.0.0.0:9090"
7-
loki:
8-
type: "loki"
9-
inputs: ["k8s"]
10-
encoding:
11-
codec: "json"
12-
endpoint: "http://loki.loki:3100"
13-
out_of_order_action: "accept"
14-
tenant_id: "soeren"
15-
labels:
16-
datacenter: "dd"
17-
cluster: "svc.dd.soeren.cloud"
18-
app: "{{ .app }}"
39+
40+
vlogs:
41+
inputs: ["k8s_parser"]
42+
type: "elasticsearch"
43+
endpoints:
44+
- https://logs.rs.soeren.cloud/insert/elasticsearch/
45+
api_version: v8
46+
compression: gzip
47+
healthcheck:
48+
enabled: false
49+
query:
50+
_msg_field: message
51+
_time_field: timestamp
52+
_stream_fields: kubernetes.pod_node_name,kubernetes.pod_namespace,kubernetes.pod_name,kubernetes.container_name,dc,cluster

clusters/svc.ez.soeren.cloud/grafana/virtualservice.yaml

Lines changed: 0 additions & 19 deletions
This file was deleted.

clusters/svc.ez.soeren.cloud/vector/kustomization.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,16 @@ namespace: vector
55
resources:
66
- ../../../apps/vector
77
- namespace.yaml
8+
patches:
9+
- target:
10+
kind: DaemonSet
11+
name: vector
12+
patch: |-
13+
- op: add
14+
path: /spec/template/spec/containers/0/env/-
15+
value:
16+
name: "DC"
17+
value: "ez"
818
configMapGenerator:
919
- name: vector-config
1020
behavior: merge
Lines changed: 46 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,52 @@
11
---
2+
transforms:
3+
# Parse and enrich journald logs
4+
k8s_parser:
5+
type: "remap"
6+
inputs: ["k8s"]
7+
source: |
8+
.dc = get_env_var("DC") ?? ""
9+
.cluster = get_env_var("CLUSTER") ?? ""
10+
11+
#.app_name = replace!(to_string!(.unit_name) || "unknown", r'\.(service|timer|socket)', "")
12+
13+
if exists(.message) {
14+
message_str = string(.message) ?? ""
15+
16+
# Try JSON first
17+
json_result = parse_json(message_str) ?? {}
18+
if exists(json_result.level) && is_string(json_result.level) {
19+
.log_level = downcase!(json_result.level)
20+
} else {
21+
# Comprehensive regex for common log level patterns
22+
level_match = parse_regex(message_str, r'(?i)(?:\[|<|\(|^|\s|level[=:]\s*|severity[=:]\s*|\|)(?P<level>info|error|warn|warning|debug|trace|fatal|critical)(?:\]|>|\)|[:\s]|\||$)') ?? {}
23+
24+
if exists(level_match.level) {
25+
found_level = downcase!(level_match.level)
26+
27+
# Normalize variations
28+
.log_level = found_level
29+
}
30+
}
31+
}
32+
33+
234
sinks:
335
prom_exporter:
436
type: "prometheus_exporter"
537
inputs: ["host_metrics", "internal_metrics"]
638
address: "0.0.0.0:9090"
7-
loki:
8-
type: "loki"
9-
inputs: ["k8s"]
10-
encoding:
11-
codec: "json"
12-
endpoint: "http://loki.loki:3100"
13-
out_of_order_action: "accept"
14-
tenant_id: "soeren"
15-
labels:
16-
datacenter: "ez"
17-
cluster: "svc.ez.soeren.cloud"
18-
app: "{{ .app }}"
39+
40+
vlogs:
41+
inputs: ["k8s_parser"]
42+
type: "elasticsearch"
43+
endpoints:
44+
- https://logs.rs.soeren.cloud/insert/elasticsearch/
45+
api_version: v8
46+
compression: gzip
47+
healthcheck:
48+
enabled: false
49+
query:
50+
_msg_field: message
51+
_time_field: timestamp
52+
_stream_fields: kubernetes.pod_node_name,kubernetes.pod_namespace,kubernetes.pod_name,kubernetes.container_name,dc,cluster

0 commit comments

Comments
 (0)