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:
|
try:
|
||||||
os.system('sudo chown apache:apache -R ' + log_path)
|
os.system('sudo chown apache:apache -R ' + log_path)
|
||||||
except Exception as e:
|
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:
|
if kwargs.get('alerting') == 1:
|
||||||
mess = get_data('date_in_log') + action + "\n"
|
mess = get_data('date_in_log') + action + "\n"
|
||||||
|
@ -737,7 +740,11 @@ def update_haproxy_wi(service):
|
||||||
service = service.split('_')[0]
|
service = service.split('_')[0]
|
||||||
except Exception:
|
except Exception:
|
||||||
pass
|
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)
|
output, stderr = subprocess_execute(cmd)
|
||||||
print(output)
|
print(output)
|
||||||
print(stderr)
|
print(stderr)
|
||||||
|
@ -1341,7 +1348,11 @@ def get_services_status():
|
||||||
if service_name == 'prometheus':
|
if service_name == 'prometheus':
|
||||||
cmd = "prometheus --version 2>&1 |grep prometheus|awk '{print $3}'"
|
cmd = "prometheus --version 2>&1 |grep prometheus|awk '{print $3}'"
|
||||||
else:
|
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)
|
service_ver, stderr = subprocess_execute(cmd)
|
||||||
|
|
||||||
if service_ver[0] == 'command':
|
if service_ver[0] == 'command':
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
|
import distro
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
|
|
||||||
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True)
|
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True)
|
||||||
|
@ -59,7 +60,10 @@ for s, v in services_name.items():
|
||||||
service_name = s.split('_')[0]
|
service_name = s.split('_')[0]
|
||||||
else:
|
else:
|
||||||
service_name = s
|
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)
|
service_ver, stderr = funct.subprocess_execute(cmd)
|
||||||
try:
|
try:
|
||||||
services.append([s, service_ver[0]])
|
services.append([s, service_ver[0]])
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
|
import distro
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True)
|
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True)
|
||||||
template = env.get_template('metrics.html')
|
template = env.get_template('metrics.html')
|
||||||
|
@ -12,12 +13,15 @@ print('Content-type: text/html\n')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
user, user_id, role, token, servers, user_services = funct.get_users_params()
|
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)
|
service_ver, stderr = funct.subprocess_execute(cmd)
|
||||||
services = '0'
|
services = '0'
|
||||||
|
|
||||||
if not stderr:
|
if not stderr:
|
||||||
if service_ver[0] == '* is not installed':
|
if service_ver[0] == '* is not installed' or service_ver == '':
|
||||||
servers = ''
|
servers = ''
|
||||||
else:
|
else:
|
||||||
if service == 'nginx':
|
if service == 'nginx':
|
||||||
|
|
|
@ -3,3 +3,4 @@ paramiko-ng>=2.5.0
|
||||||
pytz>=2017.3
|
pytz>=2017.3
|
||||||
pyTelegramBotAPI>=3.6.3
|
pyTelegramBotAPI>=3.6.3
|
||||||
slack-sdk>=3.4.0
|
slack-sdk>=3.4.0
|
||||||
|
distro>=1.2.0
|
||||||
|
|
|
@ -10,3 +10,4 @@ jinja2>=2.10.1
|
||||||
slack-sdk>=3.4.0
|
slack-sdk>=3.4.0
|
||||||
peewee>=3.14.4
|
peewee>=3.14.4
|
||||||
PyMySQL>=1.0.2
|
PyMySQL>=1.0.2
|
||||||
|
distro>=1.2.0
|
||||||
|
|
Loading…
Reference in New Issue