a8d2d0b5cd
Signed-off-by: Yong Zhao yozhao@microsoft.com Why I did it This PR aims to monitor the critical processes in PMon container by Monit in 201911 branch. How I did it I created a template configuration file of Monit and it will be rendered to generate Monit configuration file of PMon container by a service generate_monit_config.service. How to verify it I verified this on a Mellanox device str-msn2700-03 and an Arista device str-a7050-acs-1. Which release branch to backport (provide reason below if selected) 201811 [x ] 201911 202006 202012
40 lines
1.4 KiB
Bash
Executable File
40 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Generate the following files from templates:
|
|
# 1. Monit configuration file of dhcp_relay container
|
|
# 2. Monit configuration file of PMon container
|
|
# 3. Monit configuration file of radv container
|
|
|
|
CFGGEN_PARAMS=" \
|
|
-d \
|
|
-t /usr/share/sonic/templates/monit_dhcp_relay.j2,/etc/monit/conf.d/monit_dhcp_relay \
|
|
-t /usr/share/sonic/templates/monit_radv.j2,/etc/monit/conf.d/monit_radv \
|
|
"
|
|
sonic-cfggen $CFGGEN_PARAMS
|
|
|
|
PLATFORM=$(sonic-cfggen -d -v DEVICE_METADATA.localhost.platform 2> /dev/null)
|
|
|
|
if [[ $? == 0 && $PLATFORM != "" ]]; then
|
|
SENSORS_CONF_FILE="/usr/share/sonic/device/$PLATFORM/sensors.conf"
|
|
FANCONTROL_CONF_FILE="/usr/share/sonic/device/$PLATFORM/fancontrol"
|
|
|
|
HAVE_SENSORS_CONF=0
|
|
HAVE_FANCONTROL_CONF=0
|
|
|
|
if [ -e $SENSORS_CONF_FILE ]; then
|
|
HAVE_SENSORS_CONF=1
|
|
fi
|
|
|
|
if [ -e $FANCONTROL_CONF_FILE ]; then
|
|
HAVE_FANCONTROL_CONF=1
|
|
fi
|
|
|
|
confvar="{\"HAVE_SENSORS_CONF\":$HAVE_SENSORS_CONF, \"HAVE_FANCONTROL_CONF\":$HAVE_FANCONTROL_CONF}"
|
|
|
|
if [ -e /usr/share/sonic/device/$PLATFORM/pmon_daemon_control.json ]; then
|
|
sonic-cfggen -j /usr/share/sonic/device/$PLATFORM/pmon_daemon_control.json -a "$confvar" -t /usr/share/sonic/template/monit_pmon.j2,/etc/monit/conf.d/monit_pmon
|
|
else
|
|
sonic-cfggen -a "$confvar" -t /usr/share/sonic/template/monit_pmon.j2,/etc/monit/conf.d/monit_pmon
|
|
fi
|
|
fi
|