summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorDeepti Kulkarni <deepti@vyatta.com>2012-02-28 08:16:58 -0800
committerDeepti Kulkarni <deepti@vyatta.com>2012-02-28 08:16:58 -0800
commitb4f1ac8baf8d8c482f86fd033ae90257060277f6 (patch)
treef8106a9147c7161da9b271b8a2bba5c239c2405b /scripts
parent3a4f9c0f87db96d8af230f8e4c19c3fd1c697477 (diff)
downloadvyatta-cfg-b4f1ac8baf8d8c482f86fd033ae90257060277f6.tar.gz
vyatta-cfg-b4f1ac8baf8d8c482f86fd033ae90257060277f6.zip
bug fix for 4718 - enhancement that will log commits in syslog for all
successful (complete) commits for all commit methods.
Diffstat (limited to 'scripts')
-rw-r--r--scripts/vyatta-log-commit.pl57
1 files changed, 57 insertions, 0 deletions
diff --git a/scripts/vyatta-log-commit.pl b/scripts/vyatta-log-commit.pl
new file mode 100644
index 0000000..b3fe6b2
--- /dev/null
+++ b/scripts/vyatta-log-commit.pl
@@ -0,0 +1,57 @@
+#!/usr/bin/perl
+#
+# **** License ****
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# A copy of the GNU General Public License is available as
+# `/usr/share/common-licenses/GPL' in the Debian GNU/Linux distribution
+# or on the World Wide Web at `http://www.gnu.org/copyleft/gpl.html'.
+# You can also obtain it by writing to the Free Software Foundation,
+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+# MA 02110-1301, USA.
+#
+# This code was originally developed by Vyatta, Inc.
+# Portions created by Vyatta are Copyright (C) 2010 Vyatta, Inc.
+# All Rights Reserved.
+#
+# Author: Deepti Kulkarni
+# Date: Feb 2012
+# Description: Script to log active configuration commits to syslog.
+#
+# **** End License ****
+#
+
+
+use strict;
+use warnings;
+use lib '/opt/vyatta/share/perl5/';
+
+use Vyatta::Config;
+use Sys::Syslog qw(:standard :macros);
+
+#
+# main
+#
+my $commit_status;
+my $cur_tty=`ps -o tty= |head -n1`;
+my $cur_user=`id -un`;
+my $status = $ENV{'COMMIT_STATUS'};
+
+chomp($cur_tty);
+chomp($cur_user);
+
+$commit_status = 'Successful' if ($status eq 'SUCCESS');
+#open log for logging commit details
+if (defined $commit_status) {
+ openlog("commit", "", LOG_USER);
+ syslog ("alert", "$commit_status change to active configuration by user $cur_user on $cur_tty");
+ closelog();
+}
+#end of script