heat-translator/samples/tests/data/artifacts/rsyslog/config.sh

31 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# This script configures the output for rsyslogd to send logs to the
# logstash server port 2514 using the RELP protocol
# The environment variable logstash_ip is expected to be set up
echo "module(load=\"omrelp\")
action(type=\"omrelp\" target=\"$logstash_ip\" port=\"2514\")" > /etc/rsyslog.d/tosca_elk.conf
# Remove the /dev/xconsole configuration as xconsole
# is not available by default
l=`awk '/=warn.*\|.*\/dev\/xconsole/{print NR - 1}' /etc/rsyslog.d/50-default.conf`
if [ ! -z $l ]; then
l=`expr $l + 1`
line=`cat /etc/rsyslog.d/50-default.conf | head -n $l | tail -1`
if [[ ! $line == \#* ]]; then
l0=`expr $l - 3`
sed -i -r -e "${l0},${l}s/^.{0}/&#/" /etc/rsyslog.d/50-default.conf
fi
fi
# Enable nodejs logs for rsyslog
if ! grep -q nodeapp "/etc/rsyslog.conf"; then
sed -i 's/\$PrivDropToGroup\ syslog/\$PrivDropToGroup adm/' /etc/rsyslog.conf
echo "\$ModLoad imfile.so
\$InputFileName /var/log/nodeapp.log
\$InputFileTag paypal_pizza:
\$InputFileStateFile stat-nodeapp
\$InputRunFileMonitor
\$InputFilePollInterval 1" >> /etc/rsyslog.conf
fi