summaryrefslogtreecommitdiff
path: root/data/templates/rsyslog/rsyslog.conf.j2
blob: 0141812aca2e8271c241400623b83081374d2f2a (plain)
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
### Autogenerated by system_syslog.py ###

{% if global.marker is vyos_defined %}
$ModLoad immark
{%     if global.marker.interval is vyos_defined %}
$MarkMessagePeriod {{ global.marker.interval }}
{%     endif %}
{% endif %}
{% if global.preserve_fqdn is vyos_defined %}
$PreserveFQDN on
{% endif %}

{% if global.local_host_name is vyos_defined %}
$LocalHostName {{ global.local_host_name }}
{% endif %}

# We always log to /var/log/messages
$outchannel global,/var/log/messages,262144,/usr/sbin/logrotate {{ logrotate }}
{% if global.facility is vyos_defined %}
{%     set tmp = [] %}
{%     for facility, facility_options in global.facility.items() %}
{%         set _ = tmp.append(facility.replace('all', '*') + '.' + facility_options.level.replace('all', '*')) %}
{%     endfor %}
{{ tmp | join(';') }} :omfile:$global
{% endif %}

{% if file is vyos_defined %}
# File based configuration section
{%     for file_name, file_options in file.items() %}
{%         set tmp = [] %}
$outchannel {{ file_name }},/var/log/user/{{ file_name }},{{ file_options.archive.size }},/usr/sbin/logrotate {{ logrotate }}
{%         if file_options.facility is vyos_defined %}
{%             for facility, facility_options in file_options.facility.items() %}
{%                 set _ = tmp.append(facility.replace('all', '*') + '.' + facility_options.level.replace('all', '*')) %}
{%             endfor %}
{%         endif %}
{{ tmp | join(';') }} :omfile:${{ file }}
{%     endfor %}
{% endif %}

{% if console.facility is vyos_defined %}
# Console logging
{%     set tmp = [] %}
{%     for facility, facility_options in console.facility.items() %}
{%         set _ = tmp.append(facility.replace('all', '*') + '.' + facility_options.level.replace('all', '*')) %}
{%     endfor %}
{{ tmp | join(';') }} /dev/console
{% endif %}

{% if host is vyos_defined %}
# Remote logging
{%     for host_name, host_options in host.items() %}
{%         set tmp = [] %}
{%         if host_options.facility is vyos_defined %}
{%             for facility, facility_options in host_options.facility.items() %}
{%                 set _ = tmp.append(facility.replace('all', '*') + '.' + facility_options.level.replace('all', '*')) %}
{%             endfor %}
{%         endif %}
{%         if host_options.protocol is vyos_defined('tcp') %}
{%             if host_options.format.octet_counted is vyos_defined %}
{{ tmp | join(';') }} @@(o){{ host_name | bracketize_ipv6 }}:{{ host_options.port }};RSYSLOG_SyslogProtocol23Format
{%             else %}
{{ tmp | join(';') }} @@{{ host_name | bracketize_ipv6 }}:{{ host_options.port }}
{%             endif %}
{%         else %}
{{ tmp | join(';') }} @{{ host_name | bracketize_ipv6 }}:{{ host_options.port }}{{ ';RSYSLOG_SyslogProtocol23Format' if host_options.format.octet_counted is vyos_defined }}
{%         endif %}
{%     endfor %}
{% endif %}

{% if user is defined and user is not none %}
# Log to user terminal
{%     for username, user_options in user.items() %}
{%         set tmp = [] %}
{%         if user_options.facility is vyos_defined %}
{%             for facility, facility_options in user_options.facility.items() %}
{%                 set _ = tmp.append(facility.replace('all', '*') + '.' + facility_options.level.replace('all', '*')) %}
{%             endfor %}
{%         endif %}
{{ tmp | join(';') }} :omusrmsg:{{ username }}
{%     endfor %}
{% endif %}