Files
scripts-conlxsyslog03/root/observium/port_changes_long_AdUpOpDown.sh
conetadm 5718e70f15 init
2024-11-14 21:11:06 +01:00

34 lines
2.7 KiB
Bash
Executable File

#!/bin/bash
echo "<html>
<head>
<meta http-equiv='refresh' content='60; URL=port_down_for28d.html'>
<!-- root@conlxsyslog03:/scripts/root/observium/port_changes_long_AdUpOpDown.sh -->
</head>
<body>
Ports seit mehr als 28 Tagen mit ifOperStatus = 'down' aber ifAdminStatus = 'up'<br>" > /var/www/html/port_down_for28d.html
echo "select devices.hostname, ports.port_label, ports.ifAlias, ports.ifAdminStatus, ports.ifOperStatus, ports.ifLastChange from ports inner join devices on ports.device_id = devices.device_id where (hostname like 'switch-%') AND (ports.deleted = '0') AND TIMESTAMPDIFF(SECOND, ifLastChange, NOW())>'1814400' and ports.ifAdminStatus = 'up' and ports.ifOperStatus = 'down' and ports.ignore='0' order by ports.ifLastChange asc"| mysql -H --user=observium --password=observium observium >> /var/www/html/port_down_for28d.html
#echo "select devices.hostname, ports.port_label, ports.ifAlias, ports.ifAdminStatus, ports.ifOperStatus, ports.ifLastChange from ports inner join devices on ports.device_id = devices.device_id where (hostname like 'switch-%') AND (not hostname like 'switch-sup-%') AND (not hostname like 'switch-dbs-%') AND (ports.deleted = '0') AND TIMESTAMPDIFF(SECOND, ifLastChange, NOW())>'1814' and ports.ifAdminStatus = 'up' and ports.ifOperStatus = 'down' and ports.ignore='0' order by ports.ifLastChange asc"| mysql -H --user=observium --password=observium observium >> /var/www/html/port_down_for28d.html
echo "" >> /var/www/html/port_down_for28d.html
echo "</body>
</html>" >> /var/www/html/port_down_for28d.html
# tabellenkopf erweitern
sed -i -e "s#port_label</TH>#port_label</TH><TH>clogin</TH>#g" /var/www/html/port_down_for28d.html
# tabellenzeilen auf eigene zeilen setzen
sed -i -e "s#<TR>#\n<TR>#g" /var/www/html/port_down_for28d.html
# tabelle um clogin befehl erweitern
sed -i -e "s#<TR><TD>\(.*\)</TD><TD>\(Port-Channel.*\)</TD><TD>\(.*\)</TD><TD>\(.*\)</TD><TD>\(.*\)</TD><TD>\(.*\)</TD></TR>#<TR><TD>\1</TD><TD>\2</TD><td><font size=-3>\nclogin -u \$SSHUSER -p \$SSHPASS -c 'conf t __ no int \2 __ end __ copy run start __ __ exit__' \1 __ __ \n </font></td><TD>\3</TD><TD>\4</TD><TD>\5</TD><TD>\6</TD></TR>#g" /var/www/html/port_down_for28d.html
sed -i -e "s#<TR><TD>\(.*\)</TD><TD>\(.*Ethernet.*\)</TD><TD>\(.*\)</TD><TD>\(.*\)</TD><TD>\(.*\)</TD><TD>\(.*\)</TD></TR>#<TR><TD>\1</TD><TD>\2</TD><td><font size=-3>\nclogin -u \$SSHUSER -p \$SSHPASS -c 'conf t __ default int \2 __ int \2 __ shut __ end __ copy run start __ __ exit__' \1 __ __ \n </font></td><TD>\3</TD><TD>\4</TD><TD>\5</TD><TD>\6</TD></TR>#g" /var/www/html/port_down_for28d.html
# __ durch \n ersetzen
sed -i -e "s#__#<br>\\n#g" /var/www/html/port_down_for28d.html