Bombsquad-Ballistica-Modded.../dist/ba_root/mods/tools/Logger.py

77 lines
1.3 KiB
Python
Raw Normal View History

import ba,_ba
import datetime;
import os
2021-10-23 15:57:59 +05:30
import threading
# ct stores current time
path=_ba.env()['python_directory_user']
serverdata=os.path.join(path,"serverData" + os.sep)
2021-10-23 15:57:59 +05:30
chats=[]
joinlog=[]
cmndlog=[]
misclogs=[]
def log(msg,mtype='sys'):
global chats,joinlog,cmndlog,misclogs
2021-10-23 15:57:59 +05:30
ct=datetime.datetime.now()
msg=str(ct)+": "+msg +"\n"
if mtype=='chat':
chats.append(msg)
if len(chats) >10:
dumplogs(chats,"chat").start()
chats=[]
elif mtype=="playerjoin":
joinlog.append(msg)
if len(joinlog)>3:
2021-10-23 15:57:59 +05:30
dumplogs(joinlog,"joinlog").start()
joinlog=[]
elif mtype=='chatcmd':
cmndlog.append(msg)
if len(cmndlog)>3:
2021-10-23 15:57:59 +05:30
dumplogs(cmndlog,"cmndlog").start()
cmndlog=[]
else:
misclogs.append(msg)
if len(misclogs)>5:
2021-10-23 15:57:59 +05:30
dumplogs(misclogs,"sys").start()
misclogs=[]
class dumplogs(threading.Thread):
def __init__(self,msg,mtype='sys'):
threading.Thread.__init__(self)
self.msg=msg
self.type=mtype
def run(self):
if self.type=='chat':
f=open(serverdata+"Chat Logs.log","a+")
2021-10-23 15:57:59 +05:30
elif self.type=='joinlog':
2021-12-02 13:44:49 +05:30
f=open(serverdata+"joining.log","a+")
2021-10-23 15:57:59 +05:30
elif self.type=='cmndlog':
2021-12-02 13:44:49 +05:30
f=open(serverdata+"cmndusage.log","a+")
else:
f=open(serverdata+"logs.log","a+")
2021-10-23 15:57:59 +05:30
for m in self.msg:
f.write(m)
f.close()