diff --git a/Chart.yaml b/Chart.yaml
index 5d7b02d..f5fe0a0 100644
--- a/Chart.yaml
+++ b/Chart.yaml
@@ -1,6 +1,6 @@
apiVersion: v2
name: betterstack-logs
-version: 2.0.0
+version: 2.0.1
dependencies:
- name: metrics-server
version: 3.12.2
diff --git a/values.yaml b/values.yaml
index 4a90bb9..ce80618 100644
--- a/values.yaml
+++ b/values.yaml
@@ -156,16 +156,21 @@ vector:
del(.postgres)
}
- .mysql = parse_regex(.message, r'^(?P
\d+-\d+-\d+T\d+:\d+:\d+\.\d+\w+)\s+(?P\d+)\s+\[(?P\S+)\]\s*\[(?P\S+)\]\s*\[(?P\S+)\]\s*(?P.*)') ??
- parse_regex(.message, r'^(?P\d+-\d+-\d+T\d+:\d+:\d+\.\d+\w+)\s+(?P\d+)\s+(?P[^\t]+)(?:\s+(?P.*))?') ??
+ .mysql = parse_regex(.message, r'^(?P\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{6}(?:Z|[+-]\d{2}:\d{2}))\s+(?P\d+)\s+\[(?PSystem|Note|Warning|ERROR)\](?:\s*\[(?PMY-\d+)\]\s*\[(?P\S+)\])?\s*(?P.*)') ??
+ parse_regex(.message, r'^(?P\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{6}(?:Z|[+-]\d{2}:\d{2}))\t\s*(?P\d+) (?P[^\t]+)(?:\t\s*(?P\S.*))?') ??
{}
if .mysql != {} {
+ # non-participating optional regex groups parse to null
+ if is_null(.mysql.message) { del(.mysql.message) }
+ if is_null(.mysql.error_code) { del(.mysql.error_code) }
+ if is_null(.mysql.subsystem) { del(.mysql.subsystem) }
+
.platform = "MySQL"
if exists(.mysql.dt) { .dt = del(.mysql.dt) }
if exists(.mysql.thread) { .mysql.thread = to_int!(.mysql.thread) }
if exists(.mysql.id) { .mysql.id = to_int!(.mysql.id) }
- .message = del(.mysql.message)
+ if exists(.mysql.message) { .message = del(.mysql.message) }
# extract message metadata
tmp = string!(.message)