mirror of https://github.com/Aidaho12/haproxy-wi
parent
c9e1aa29a1
commit
1cd69350fc
17
app/funct.py
17
app/funct.py
|
@ -124,7 +124,10 @@ def logging(serv, action, **kwargs):
|
|||
try:
|
||||
os.system('sudo chown apache:apache -R ' + log_path)
|
||||
except Exception as e:
|
||||
pass
|
||||
try:
|
||||
os.system('sudo chown www-data:www-data -R ' + log_path)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
if kwargs.get('alerting') == 1:
|
||||
mess = get_data('date_in_log') + action + "\n"
|
||||
|
@ -737,7 +740,11 @@ def update_haproxy_wi(service):
|
|||
service = service.split('_')[0]
|
||||
except Exception:
|
||||
pass
|
||||
cmd = 'sudo -S yum -y update ' + service +' && sudo systemctl restart ' + service
|
||||
import distro
|
||||
if distro.id() == 'ubuntu':
|
||||
cmd = 'sudo apt-get update && sudo apt-get install ' + service +' && sudo systemctl restart ' + service
|
||||
else:
|
||||
cmd = 'sudo -S yum -y update ' + service +' && sudo systemctl restart ' + service
|
||||
output, stderr = subprocess_execute(cmd)
|
||||
print(output)
|
||||
print(stderr)
|
||||
|
@ -1341,7 +1348,11 @@ def get_services_status():
|
|||
if service_name == 'prometheus':
|
||||
cmd = "prometheus --version 2>&1 |grep prometheus|awk '{print $3}'"
|
||||
else:
|
||||
cmd = "rpm -q " + service_name + "|awk -F\"" + service_name + "\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'"
|
||||
import distro
|
||||
if distro.id() == 'ubuntu':
|
||||
cmd = "apt list --installed 2>&1 |grep " + service_name + "|awk '{print $2}'|sed 's/-/./'"
|
||||
else:
|
||||
cmd = "rpm -q " + service_name + "|awk -F\"" + service_name + "\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'"
|
||||
service_ver, stderr = subprocess_execute(cmd)
|
||||
|
||||
if service_ver[0] == 'command':
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#!/usr/bin/env python3
|
||||
import funct
|
||||
import sql
|
||||
import distro
|
||||
from jinja2 import Environment, FileSystemLoader
|
||||
|
||||
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True)
|
||||
|
@ -59,7 +60,10 @@ for s, v in services_name.items():
|
|||
service_name = s.split('_')[0]
|
||||
else:
|
||||
service_name = s
|
||||
cmd = "rpm --query " + service_name + "-* |awk -F\"" + service_name + "\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'"
|
||||
if distro.id() == 'ubuntu':
|
||||
cmd = "apt list --installed 2>&1 |grep " + service_name
|
||||
else:
|
||||
cmd = "rpm --query " + service_name + "-* |awk -F\"" + service_name + "\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'"
|
||||
service_ver, stderr = funct.subprocess_execute(cmd)
|
||||
try:
|
||||
services.append([s, service_ver[0]])
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#!/usr/bin/env python3
|
||||
import funct
|
||||
import sql
|
||||
import distro
|
||||
from jinja2 import Environment, FileSystemLoader
|
||||
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True)
|
||||
template = env.get_template('metrics.html')
|
||||
|
@ -12,12 +13,15 @@ print('Content-type: text/html\n')
|
|||
|
||||
try:
|
||||
user, user_id, role, token, servers, user_services = funct.get_users_params()
|
||||
cmd = "rpm --query roxy-wi-metrics-* |awk -F\"metrics\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'"
|
||||
if distro.id() == 'ubuntu':
|
||||
cmd = "apt list --installed 2>&1 |grep roxy-wi-metrics"
|
||||
else:
|
||||
cmd = "rpm -q roxy-wi-metrics-* |awk -F\"metrics\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'"
|
||||
service_ver, stderr = funct.subprocess_execute(cmd)
|
||||
services = '0'
|
||||
|
||||
if not stderr:
|
||||
if service_ver[0] == '* is not installed':
|
||||
if service_ver[0] == '* is not installed' or service_ver == '':
|
||||
servers = ''
|
||||
else:
|
||||
if service == 'nginx':
|
||||
|
|
|
@ -3,3 +3,4 @@ paramiko-ng>=2.5.0
|
|||
pytz>=2017.3
|
||||
pyTelegramBotAPI>=3.6.3
|
||||
slack-sdk>=3.4.0
|
||||
distro>=1.2.0
|
||||
|
|
|
@ -10,3 +10,4 @@ jinja2>=2.10.1
|
|||
slack-sdk>=3.4.0
|
||||
peewee>=3.14.4
|
||||
PyMySQL>=1.0.2
|
||||
distro>=1.2.0
|
||||
|
|
Loading…
Reference in New Issue