summaryrefslogtreecommitdiff
path: root/templates/system/syslog/node.def
diff options
context:
space:
mode:
authorMohit Mehta <mohit.mehta@vyatta.com>2008-10-10 22:27:30 -0700
committerMohit Mehta <mohit.mehta@vyatta.com>2008-10-10 22:27:30 -0700
commit0a60c68af7028fe58c3ece088c85fd3a04eb9a1f (patch)
treed6189083c3ea5814e208dffa20d381f2917ca4af /templates/system/syslog/node.def
parent499afdae260c9ac3f179f3fc204308eb2d57b796 (diff)
downloadvyatta-cfg-system-0a60c68af7028fe58c3ece088c85fd3a04eb9a1f.tar.gz
vyatta-cfg-system-0a60c68af7028fe58c3ece088c85fd3a04eb9a1f.zip
Fix Bug 3751 configuring multiple global syslog facilities overwrites previous ones in /etc/syslog.conf
- multiple nodes configured under 'system syslog global' are appended to syslog.conf - default '*.notice -/var/log/messages' is removed from syslog.conf if any node is configured under 'system syslog global' and is put back when nothing configured under 'system syslog global' - syslog process only restarted once after making all changes in config - added commit checks at 'system syslog <>' level nodes to specify facility
Diffstat (limited to 'templates/system/syslog/node.def')
-rw-r--r--templates/system/syslog/node.def14
1 files changed, 11 insertions, 3 deletions
diff --git a/templates/system/syslog/node.def b/templates/system/syslog/node.def
index 72a82d78..7fd911f7 100644
--- a/templates/system/syslog/node.def
+++ b/templates/system/syslog/node.def
@@ -1,3 +1,11 @@
-help: Set syslog daemon
-delete:expression: "sudo sh -c \"/opt/vyatta/sbin/vyatta_update_syslog.pl \
-'' '\\/var\\/log\\/messages' '*.warning\t/var/log/messages \n'\" "
+help: Configure syslog daemon
+end: if [ -n "$VAR(./global/facility/@@)" ]; then
+ # remove the default config for global messages
+ sudo sh -c "sed -i '/\*\.notice[[:space:]]*-\/var\/log\/messages/d' /etc/syslog.conf"
+ else
+ # if not already there then write the default config for global messages
+ if ! grep -q "\*\.notice[[:space:]]*-/var/log/messages" /etc/syslog.conf; then
+ sudo sh -c "echo \"*.notice -/var/log/messages\" >> /etc/syslog.conf"
+ fi
+ fi
+ sudo /usr/sbin/invoke-rc.d sysklogd restart