mirror of https://github.com/Aidaho12/haproxy-wi
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
2.2 KiB
67 lines
2.2 KiB
from datetime import datetime, timedelta
|
|
|
|
from pytz import timezone
|
|
import configparser
|
|
|
|
|
|
class GetConfigVar:
|
|
def __init__(self):
|
|
self.path_config = "/etc/roxy-wi/roxy-wi.cfg"
|
|
self.config = configparser.ConfigParser(interpolation=configparser.ExtendedInterpolation())
|
|
self.config.read(self.path_config)
|
|
|
|
def get_config_var(self, sec, var):
|
|
try:
|
|
return self.config.get(sec, var)
|
|
except configparser.Error as e:
|
|
print(f'error: in the config file: {self.path_config}: {e}')
|
|
except Exception as e:
|
|
print(f'Check the config file. Presence section {sec} and parameter {var}')
|
|
print(e)
|
|
return
|
|
|
|
|
|
class GetDate:
|
|
def __init__(self, time_zone=None):
|
|
self.time_zone = time_zone
|
|
self.fmt = "%Y-%m-%d.%H:%M:%S"
|
|
|
|
def return_date(self, log_type, **kwargs):
|
|
if self.time_zone:
|
|
cur_time_zone = timezone(self.time_zone)
|
|
else:
|
|
cur_time_zone = timezone('UTC')
|
|
|
|
if kwargs.get('timedelta'):
|
|
now_utc = datetime.now(cur_time_zone) + timedelta(days=kwargs.get('timedelta'))
|
|
elif kwargs.get('timedelta_minus'):
|
|
now_utc = datetime.now(cur_time_zone) - timedelta(days=kwargs.get('timedelta_minus'))
|
|
elif kwargs.get('timedelta_minutes'):
|
|
now_utc = datetime.now(cur_time_zone) + timedelta(minutes=kwargs.get('timedelta_minutes'))
|
|
elif kwargs.get('timedelta_minutes_minus'):
|
|
now_utc = datetime.now(cur_time_zone) - timedelta(minutes=kwargs.get('timedelta_minutes_minus'))
|
|
else:
|
|
now_utc = datetime.now(cur_time_zone)
|
|
|
|
if log_type == 'config':
|
|
self.fmt = "%Y-%m-%d.%H:%M:%S"
|
|
elif log_type == 'logs':
|
|
self.fmt = '%Y%m%d'
|
|
elif log_type == "date_in_log":
|
|
self.fmt = "%b %d %H:%M:%S"
|
|
elif log_type == 'regular':
|
|
self.fmt = "%Y-%m-%d %H:%M:%S"
|
|
|
|
return now_utc.strftime(self.fmt)
|
|
|
|
|
|
class Tools:
|
|
@staticmethod
|
|
def get_hash(need_hashed):
|
|
if need_hashed is None:
|
|
return need_hashed
|
|
import hashlib
|
|
h = hashlib.md5(need_hashed.encode('utf-8'))
|
|
p = h.hexdigest()
|
|
return p
|