1
0
Fork 0
mirror of https://github.com/ThomasGsp/HyperProxmox.git synced 2025-03-09 15:40:18 +00:00

Log system

This commit is contained in:
Tlams 2018-03-22 15:32:46 +00:00
parent ffe8a7b07b
commit f09356af93

View file

@ -25,6 +25,20 @@ if __name__ == "__main__":
localconf = configparser.ConfigParser()
localconf.read('private/conf/config')
generalconf = {
"logger": {"debug": localconf['logger']['debug'], "logs_level": localconf['logger']['logs_level'],
"logs_dir": localconf['logger']['logs_dir']},
"analyst": {"walker": localconf['walker']['walker'], "walker_lock": localconf['walker']['walker_lock']},
"mongodb": {"ip": localconf['databases']['mongodb_ip'], 'port': localconf['databases']['mongodb_port']},
"redis": {"ip": localconf['databases']['redis_ip'], 'port': localconf['databases']['redis_port']},
"deploy": {'concurrencydeploy': localconf['deploy']['concurrencydeploy'], 'delayrounddeploy': localconf['deploy']['delayrounddeploy']}
}
""" Active logger"""
logger = Logger2(generalconf["logger"])
logger.write({"result": "INFO", "type": "PYTHON", "value": "Start logger"})
logger.write({"result": "INFO", "type": "PYTHON", "value": ">>>>>>> -- NEW STARTUP -- <<<<<<<"})
CritConf = CryticalData()
""" Step One: test private key or create it """
key_pvt = Path(localconf['system']['key_pvt'])
@ -36,15 +50,17 @@ if __name__ == "__main__":
print("This action can take some minutes, please wait.")
gen = CritConf.generate_key(localconf['system']['key_pvt'], localconf['system']['key_pub'], passhash)
if gen['result'] == "OK":
logger.write({"result": "INFO", "type": "PYTHON", "value": "Key generated in {0}".format(localconf['system']['key_pvt'])})
print("Your new key has been generate ! "
"\n - Private Key: {0} "
"\n - Public Key: {1}"
.format(localconf['system']['key_pvt'], localconf['system']['key_pvt']))
.format(localconf['system']['key_pvt'], localconf['system']['key_pub']))
print("Passphrase HASH: {0}".format(passhash))
print("You MUST save your passphrase hash in a security place !")
key_pvt = CritConf.read_private_key(localconf['system']['key_pvt'], passhash)
else:
print(gen['Error'])
logger.write({"result": "ERROR", "type": "PYTHON", "value": "Your key is not create due to an error: {0}".format(gen['value'])})
exit(1)
""" Test valid right for your private Key """
@ -54,6 +70,7 @@ if __name__ == "__main__":
format(oct(stat.S_IMODE(os.stat(localconf['system']['key_pvt']).st_mode))))
os.chmod(localconf['system']['key_pvt'], 0o600)
print("Auto correction... done !")
logger.write({"result": "INFO", "type": "PYTHON", "value": "Setting chmod on your key.."})
""" Step two"""
if 'passhash' not in vars():
@ -62,9 +79,12 @@ if __name__ == "__main__":
if key_pvt['result'] != "OK":
print("{0}: {1}"
"\n Please verify your passphrase".format(key_pvt['type'], key_pvt['error']))
logger.write({"result": "WARNING", "type": "PYTHON", "value": "Bad passphrase, try again."})
exit(1)
logger.write({"result": "INFO", "type": "PYTHON", "value": "Loading keys in memory"})
key_pub = CritConf.read_public_key(localconf['system']['key_pub'])
generalconf["keys"] = {"key_pvt": key_pvt["value"], "key_pub": key_pub["value"]}
# URL MAPPING
urls = \
@ -76,16 +96,8 @@ if __name__ == "__main__":
'/api/v1/instance/([0-9]+)', 'Instance',
'/api/v1/instance/id/([a-z0-9]+)/status/(start|stop|current|reset|shutdown)', 'Instance',
# '/api/v1/instance/([0-9]+)/package', 'package',
# '/api/v1/instance/([0-9]+)/vhost(?:/([0-9]+))', 'vhost',
# '/api/v1/instance/([0-9]+)/database(?:/([0-9]+))', 'database',
# MAPPING SERVICES
# '/api/v1/service/([a-z]+)/instance/([0-9]+)/vhost(?:/([0-9]+))', 'service',
# AUTH
# '/api/v1/auth', 'Auth',
'/api/v1/login', 'Login'
# MANAGEMENT CLUSTER
'/api/v1/administration/cluster/(?:[0-9a-zA-Z\_\-]+)', 'Cluster',
@ -128,22 +140,11 @@ if __name__ == "__main__":
)
generalconf = {
"logger": {"debug": localconf['logger']['debug'], "debug_level": localconf['logger']['debug_level'],
"logs_dir": localconf['logger']['logs_dir']},
"analyst": {"walker": localconf['walker']['walker'], "walker_lock": localconf['walker']['walker_lock']},
"keys": {"key_pvt": key_pvt["data"], "key_pub": key_pub["data"]},
"mongodb": {"ip": localconf['databases']['mongodb_ip'], 'port': localconf['databases']['mongodb_port']},
"redis": {"ip": localconf['databases']['redis_ip'], 'port': localconf['databases']['redis_port']},
"deploy": {'concurrencydeploy': localconf['deploy']['concurrencydeploy'], 'delayrounddeploy': localconf['deploy']['delayrounddeploy']}
}
""" Active logger"""
logger = Logger(generalconf)
""" Init Core thread """
logger.write({"result": "INFO", "type": "PYTHON", "value": "Init Core thread"})
core = Core(generalconf)
""" Init API thread """
logger.write({"result": "INFO", "type": "PYTHON", "value": "Init API thread"})
api_th = ThreadAPI(1, "ThreadAPI", urls, core, generalconf)
api_th.start()