Vanaf mijn client zou ik graag een map willen monitoren op nieuwe logfiles. Vandaar de "wildcard-file" module.
Maar er kunnen ook volledige paden gedefinieerd zijn. In mijn voorbeeld "/var/log/messages"
Schijnbaar raakt de FILE_NAME verloren over het netwerk. Bron: https://stackoverflow.com...-when-using-wildcard-file
Met onderstaande commando's op de client.
komen deze aan in de "default.log" en de "catchall.log".
Dus de "f_has_sdata" bepaling lijkt niet te werken.
Het idee hiervan is dat ik daarna de uit-gehekte "destination d_sdata_logs" code kan gebruiken om de regel in het juiste bestand te loggen.
CLIENT:
SERVER:
Maar er kunnen ook volledige paden gedefinieerd zijn. In mijn voorbeeld "/var/log/messages"
Schijnbaar raakt de FILE_NAME verloren over het netwerk. Bron: https://stackoverflow.com...-when-using-wildcard-file
Met onderstaande commando's op de client.
code:
1
2
| logger -p syslog.info "Dit is een test logregel" echo "$(date) at client" >> /var/log_syslog/client2.log |
komen deze aan in de "default.log" en de "catchall.log".
Dus de "f_has_sdata" bepaling lijkt niet te werken.
Het idee hiervan is dat ik daarna de uit-gehekte "destination d_sdata_logs" code kan gebruiken om de regel in het juiste bestand te loggen.
CLIENT:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
| source s_wildcard { wildcard-file ( base-dir("/var/log_syslog") filename-pattern("*") recursive(no) follow-freq(1) ); }; source s_singlefile { file ( "/var/log/messages" follow-freq(1) flags(no-parse) ); }; rewrite r_set_filename { set ( "$FILE_NAME", value(".SDATA.file@18372.4.name") ); }; rewrite r_use_basename { subst ( "/var/log_syslog/", "", value(".SDATA.file@18372.4.name") type("string") flags("prefix") ); }; destination d_container_logs { syslog ( "192.168.1.246" transport("tcp") port(5141) ); }; log { source(s_wildcard); rewrite(r_set_filename); rewrite(r_use_basename); destination(d_container_logs); }; log { source(s_singlefile); #rewrite(r_set_filename); #rewrite(r_use_basename); destination(d_container_logs); }; |
SERVER:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
| source s_network { syslog ( transport("tcp") port(5141) keep_hostname(yes) ); }; filter f_has_sdata { match(".SDATA.file@18372.4.name=.*"); }; filter f_no_sdata { not match(".SDATA.file@18372.4.name=.*"); }; # destination d_sdata_logs { # file ( # "/var/sys_log/${.SDATA.file@18372.4.name}" # create_dirs(yes) # ); # }; destination d_sdata_logs { file ( "/var/sys_log/sdata.log" create_dirs(yes) ); }; destination d_default_logs { file ( "/var/sys_log/default.log" create_dirs(yes) ); }; destination d_catchall_logs { file ( "/var/sys_log/catchall.log" create_dirs(yes) ); }; log { source(s_network); destination(d_catchall_logs); }; log { source(s_network); filter(f_has_sdata); destination(d_sdata_logs); }; log { source(s_network); filter(f_no_sdata); destination(d_default_logs); }; |