Skip to content

Commit

Permalink
Merge pull request vyos#4061 from c-po/syslog-T5367
Browse files Browse the repository at this point in the history
syslog: T5367: add format option to include timezone in message
  • Loading branch information
dmbaturin committed Sep 19, 2024
2 parents ff0c3b8 + 042be39 commit ac9f5b1
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 5 deletions.
6 changes: 2 additions & 4 deletions data/templates/rsyslog/rsyslog.conf.j2
Original file line number Diff line number Diff line change
Expand Up @@ -54,12 +54,10 @@ $outchannel {{ file_name }},/var/log/user/{{ file_name }},{{ file_options.archiv
{% 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 }}
{{ tmp | join(';') }} @@{{ '(o)' if host_options.format.octet_counted is vyos_defined }}{{ host_name | bracketize_ipv6 }}:{{ host_options.port }}{{ ';RSYSLOG_SyslogProtocol23Format' if host_options.format.include_timezone is vyos_defined }}
{% endif %}
{% else %}
{{ tmp | join(';') }} @{{ host_name | bracketize_ipv6 }}:{{ host_options.port }}{{ ';RSYSLOG_SyslogProtocol23Format' if host_options.format.octet_counted is vyos_defined }}
{{ tmp | join(';') }} @{{ host_name | bracketize_ipv6 }}:{{ host_options.port }}{{ ';RSYSLOG_SyslogProtocol23Format' if host_options.format.include_timezone is vyos_defined }}
{% endif %}
{% endfor %}
{% endif %}
Expand Down
6 changes: 6 additions & 0 deletions interface-definitions/system_syslog.xml.in
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,12 @@
<valueless/>
</properties>
</leafNode>
<leafNode name="include-timezone">
<properties>
<help>Include system timezone in syslog message</help>
<valueless/>
</properties>
</leafNode>
</children>
</node>
</children>
Expand Down
9 changes: 8 additions & 1 deletion src/conf_mode/system_syslog.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
#
# Copyright (C) 2018-2023 VyOS maintainers and contributors
# Copyright (C) 2018-2024 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
Expand All @@ -18,6 +18,7 @@

from sys import exit

from vyos.base import Warning
from vyos.config import Config
from vyos.configdict import is_node_changed
from vyos.configverify import verify_vrf
Expand Down Expand Up @@ -58,6 +59,12 @@ def verify(syslog):
if not syslog:
return None

if 'host' in syslog:
for host, host_options in syslog['host'].items():
if 'protocol' in host_options and host_options['protocol'] == 'udp':
if 'format' in host_options and 'octet_counted' in host_options['format']:
Warning(f'Syslog UDP transport for "{host}" should not use octet-counted format!')

verify_vrf(syslog)

def generate(syslog):
Expand Down

0 comments on commit ac9f5b1

Please sign in to comment.