Skip to content

Commit 672c4d8

Browse files
authored
Merge pull request #32 from wpoely86/extra
Add oom-killer pattern (AB#26799)
2 parents ee64541 + 0d63658 commit 672c4d8

File tree

4 files changed

+59
-3
lines changed

4 files changed

+59
-3
lines changed

files/oom

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
OOM_MSG oom-kill:%{GREEDYDATA:KEY_EQ_VALUEDATA_COMMA}

tests/data/nfs

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,14 @@ data = [
2121
'syslog_version': '1',
2222
}
2323
},
24-
25-
]
24+
{
25+
"raw": "<5>1 2025-07-11T16:15:23.882825+02:00 login1 kernel: - kernel: nfs: server icts-n-hpc-01.icts.leuven.vsc not responding, timed out",
26+
"expected": {
27+
"appname": "kernel",
28+
"program": "kernel",
29+
"@source_host": "login1",
30+
"nfsreason": "not responding, timed out",
31+
"nfsserver": "icts-n-hpc-01.icts.leuven.vsc",
32+
}
33+
},
34+
]

tests/data/oom

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
data = [
2+
{
3+
"raw": "<6>1 2025-05-13T08:30:04.107564+02:00 node300 kernel: - kernel: oom-kill:constraint=CONSTRAINT_MEMCG,nodemask=(null),cpuset=step_0,mems_allowed=0-3,oom_memcg=/slurm/uid_2510668/job_10755228,task_memcg=/slurm/uid_2510668/job_10755228/step_0/task_0,task=vasp_std,pid=44266,uid=2510668",
4+
"expected": {
5+
"@source_host": "node300",
6+
"program": "kernel",
7+
}
8+
},
9+
{
10+
"raw": "<6>1 2025-04-28T11:29:49.162661+02:00 node618 kernel: - kernel: oom-kill:constraint=CONSTRAINT_MEMCG,nodemask=(null),cpuset=step_batch,mems_allowed=0-15,oom_memcg=/slurm/uid_2511201/job_10666405,task_memcg=/slurm/uid_2511201/job_10666405/step_batch/task_0,task=ase,pid=857594,uid=2511201",
11+
"expected": {
12+
"@source_host": "node618",
13+
"program": "kernel",
14+
}
15+
},
16+
{
17+
"raw": "<6>1 2025-09-03T11:27:36.368324+02:00 node706 kernel: - kernel: oom-kill:constraint=CONSTRAINT_MEMORY_POLICY,nodemask=3,cpuset=gpfs.service,mems_allowed=0-31,global_oom,task_memcg=/system.slice/slurmstepd.scope/job_11048783/step_batch/user/task_0,task=python,pid=549012,uid=2510053",
18+
"expected": {
19+
"@source_host": "node706",
20+
"program": "kernel",
21+
"constraint": "CONSTRAINT_MEMORY_POLICY",
22+
"nodemask": "3",
23+
"cpuset": "gpfs.service",
24+
"mems_allowed": "0-31",
25+
"task_memcg": "/system.slice/slurmstepd.scope/job_11048783/step_batch/user/task_0",
26+
"task": "python",
27+
"pid": 549012,
28+
"uid": 2510053,
29+
"global_oom": "true",
30+
}
31+
},
32+
]

tests/logstash_7.6.2.conf

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ filter
3939
"%{RSYSLOGPREFIX}%{QUATTOR_MSG}",
4040
"%{RSYSLOGPREFIX}%{SNOOPY_MSG}",
4141
"%{RSYSLOGPREFIX}%{APACHE_MSG}",
42+
"%{RSYSLOGPREFIX}%{OOM_MSG}",
4243
# Last resort, this should be one to last
4344
"%{RSYSLOGPREFIX}%{KEYVALUE_MSG}",
4445
# RSYSLOGCUSTOM always last (and no PREFIX)!
@@ -52,6 +53,19 @@ filter
5253
source => "KEY_EQ_VALUEDATA"
5354
}
5455

56+
if ([KEY_EQ_VALUEDATA_COMMA]) {
57+
mutate {
58+
gsub => [
59+
"KEY_EQ_VALUEDATA_COMMA", ",global_oom(,|$)", ",global_oom=true\1"
60+
]
61+
}
62+
}
63+
64+
kv {
65+
source => "KEY_EQ_VALUEDATA_COMMA"
66+
field_split => ","
67+
}
68+
5569
date {
5670
match => [ "syslog_timestamp", "yyyy-MM-dd'T'HH:mm:ss.SSSSSSZZ", "yyyy-MM-dd'T'HH:mm:ssZZ", "yyyy-MM-dd HH:mm:ss.SSSSSS", "MMM d HH:mm:ss", "MMM d HH:mm:ss" ]
5771
}
@@ -74,7 +88,7 @@ filter
7488

7589
if ("_grokparsefailure" not in [tags]) {
7690
mutate {
77-
remove_field => [ "syslog_hostname", "syslog_message", "syslog_timestamp", "KEY_EQ_VALUEDATA", "int" ]
91+
remove_field => [ "syslog_hostname", "syslog_message", "syslog_timestamp", "KEY_EQ_VALUEDATA", "KEY_EQ_VALUEDATA_COMMA", "int" ]
7892
convert => { "success" => "boolean" }
7993

8094
# we need MB converted to MiB for bytes2human

0 commit comments

Comments
 (0)