From 76c2e8311751ea671be32b27446da250dab93fce Mon Sep 17 00:00:00 2001 From: Sebastian Serfling Date: Wed, 25 Oct 2023 11:07:51 +0200 Subject: [PATCH] ADD zls_check.py --- log.txt | 4 +++ main.py | 106 ++++++++++++++++++++++++++------------------------------ 2 files changed, 54 insertions(+), 56 deletions(-) diff --git a/log.txt b/log.txt index 0611260..ff8c930 100644 --- a/log.txt +++ b/log.txt @@ -4,3 +4,7 @@ Keine Netvolume vorhanden! Keine Netvolume vorhanden! Keine Netvolume vorhanden! Keine Netvolume vorhanden! +25.10.2023 11:04 - rdpadmin has no access to \\jah-data01\Daten\Netzwerkfreigaben\Datenaustausch X +25.10.2023 11:04 - rdpadmin has no access to \\jah-data01\Home\%USERNAME% U +25.10.2023 11:06 - rdpadmin has no access to \\jah-data01\Daten\Netzwerkfreigaben\Datenaustausch X +25.10.2023 11:06 - rdpadmin has no access to \\jah-data01\Home\%USERNAME% U diff --git a/main.py b/main.py index 6f636eb..e5e4095 100644 --- a/main.py +++ b/main.py @@ -39,75 +39,69 @@ user = os.getlogin() ## GET CURRENT USER ## Check Database database = request("host/get/database",{"ip":system_info.get_local_ip()}).text.replace('"','') ##GET DATABASE FROM SQL-SERVER -# check_hostname = request("host/get",{"hostname":hostname,"dbname":database}) ##GET VOLUMES FROM SQL-SERVER +check_hostname = request("host/get",{"hostname":hostname,"dbname":database}) ##GET VOLUMES FROM SQL-SERVER +system_type = system_info.get_client_info() -## Check Host -# if check_hostname.text == "false": -# request("host/set",{"hostname":hostname,"ipadresse":system_info.get_local_ip(),"ram":system_info.get_ram_info(),"hddused":space_used(),"hddfree":space_free(),"hddtotal":space_total(),"dbname":database}) -# else: -# request("host/update", -# {"hostname": hostname, "ipadresse": system_info.get_local_ip(), "ram": system_info.get_ram_info(), -# "hddused": space_used(), "hddfree": space_free(), "hddtotal": space_total(), "dbname": database}) - -if system_info.get_client_info() == "Client": +if system_type == "Client": user = system_info.get_smb_credential() ### Check User check_user_exist = request("user/get",{"user":user,"dbname":database}) -print(check_user_exist.text) if check_user_exist.text == "false": request("user/set", {"user": user, "dbname": database,"hardwareID": check_hostname.text}) -# else: -# request("user/set/lastlogon", {"userID": check_user_exist.text, "dbname": database, "lastlogon": system_info.get_lastlogon(user)}) +else: + if system_type == "Client": + next + else: + request("user/set/lastlogon", {"userID": check_user_exist.text, "dbname": database, "lastlogon": system_info.get_lastlogon(user)}) + + +## Check Host +if check_hostname.text == "false": + request("host/set",{"hostname":hostname,"user": os.getlogin(),"ipadresse":system_info.get_local_ip(),"winver":system_info.get_winver(),"cpuname":system_info.get_cpu_brand(),"cores":system_info.get_cpu_core(),"ram":system_info.get_ram_info(),"hddused":space_used(),"hddfree":space_free(),"hddtotal":space_total(),"netvolumeuser":user,"dbname":database}) +else: + request("host/update", + {"hostname":hostname,"user": os.getlogin(),"ipadresse":system_info.get_local_ip(),"winver":system_info.get_winver(),"cpuname":system_info.get_cpu_brand(),"cores":system_info.get_cpu_core(),"ram":system_info.get_ram_info(),"hddused":space_used(),"hddfree":space_free(),"hddtotal":space_total(),"netvolumeuser":user,"dbname":database}) -# ### Check CPU -# check_cpu = request("host/get/cpu",{"cputype":system_info.get_cpu_brand(),"ghz":system_info.get_cpu_ghz()}) -# if check_cpu.text == "false": -# request("host/set/cpu",{"cputype":system_info.get_cpu_brand(),"cpucore":system_info.get_cpu_core()}) -# -# ### Check Mainboard -# request("host/mainboard",{"mainboardmodel":system_info.get_mainboard_model(),"mainboardvendor":system_info.get_mainboard_vendor()}) ### Check NetVolume Exist netvolume = request("host/get/netvolume",{"user":user,"dbname":database}) -# if netvolume.text == "false": -# print(net_volume.get_netvolume()) -# if net_volume.get_netvolume() is None: -# with open("log.txt", "a") as datei: ## Schreibt ergebnissse in Log File -# datei.writelines(f"Keine Netvolume vorhanden!" + "\n") ## WRITE TO ERRORLOG -# # pushover_send("Keine Netvolume vorhanden!", hostname) ## SEND ERROR LOG TO PUSHOVER -# else: -# for i in netvolume.json(): ##LIST FORM netvolume -# print(i[2]) -# if i != "-": -# if not os.path.isdir(f"{i[1]}"): -# try: -# result = subprocess.run(["net", "use", f"{i[1]}:", f"{i[0]}"], capture_output=True, check=True) ## MOUNT VOLUME -# script = fr'''$shell = New-Object -ComObject Shell.Application -# $shell.NameSpace("{i[1]}:").Self.Name = "{i[2]}"''' ### Schreibt den Namen der Netzlaufwerke um -# subprocess.run(["powershell", "-Command", script], capture_output = True,text = True) -# print(script) -# print("net", "use", f"{i[1]}:", f"{i[0]}") -# except subprocess.CalledProcessError as e: -# time = datetime.datetime.now().strftime("%d.%m.%Y %H:%M") -# if "85" in str(e.stderr): -# print(f"{time} - Volume exists {i[0]} {i[1]}") -# elif "1223" in str(e.stderr): -# errorcode = f"{time} - {user} has no access to {i[0]} {i[1]}" -# elif "53" in str(e.stderr): -# errorcode = f"{time} - Volume was not Found {i[0]} {i[1]}" -# elif "64" in str(e.stderr): -# errorcode = f"{time} - Volume Path not found {i[0]} {i[1]}" -# elif "1219" in str(e.stderr): -# errorcode = f"{time} - Multiconnection to Folder not allow {i[0]} {i[1]}" -# else: -# errorcode = f"{time} - Unknow ERROR Code {str(e.stderr)}" -# -# -# with open("log.txt", "a") as datei: -# datei.writelines(f"{errorcode}" + "\n") ## WRITE TO ERRORLOG +if netvolume.text == "false": + print(net_volume.get_netvolume()) + if net_volume.get_netvolume() is None: + with open("log.txt", "a") as datei: ## Schreibt ergebnissse in Log File + datei.writelines(f"Keine Netvolume vorhanden!" + "\n") ## WRITE TO ERRORLOG + # pushover_send("Keine Netvolume vorhanden!", hostname) ## SEND ERROR LOG TO PUSHOVER +else: + for i in netvolume.json(): ##LIST FORM netvolume + print(i[2]) + if i != "-": + if not os.path.isdir(f"{i[1]}"): + try: + subprocess.run(["net", "use", f"{i[1]}:", f"{i[0]}"], capture_output=True, check=True) ## MOUNT VOLUME + script = fr'''$shell = New-Object -ComObject Shell.Application + $shell.NameSpace("{i[1]}:").Self.Name = "{i[2]}"''' ### Schreibt den Namen der Netzlaufwerke um + subprocess.run(["powershell", "-Command", script], capture_output = True,text = True) + except subprocess.CalledProcessError as e: + time = datetime.datetime.now().strftime("%d.%m.%Y %H:%M") + if "85" in str(e.stderr): + print(f"{time} - Volume exists {i[0]} {i[1]}") + elif "1223" in str(e.stderr): + errorcode = f"{time} - {user} has no access to {i[0]} {i[1]}" + elif "53" in str(e.stderr): + errorcode = f"{time} - Volume was not Found {i[0]} {i[1]}" + elif "64" in str(e.stderr): + errorcode = f"{time} - Volume Path not found {i[0]} {i[1]}" + elif "1219" in str(e.stderr): + errorcode = f"{time} - Multiconnection to Folder not allow {i[0]} {i[1]}" + else: + errorcode = f"{time} - Unknow ERROR Code {str(e.stderr)}" + + + with open("log.txt", "a") as datei: + datei.writelines(f"{errorcode}" + "\n") ## WRITE TO ERRORLOG # # pushover_send(errorcode, hostname) ## SEND ERROR LOG TO PUSHOVER # # while True: