From 232d074ce7e5b41160c055e97ea46888e48a3539 Mon Sep 17 00:00:00 2001 From: shenjack <3695888@qq.com> Date: Tue, 14 Jun 2022 20:52:03 +0800 Subject: [PATCH] reeeeee fix server crash? --- Difficult_Rocket/server/__init__.py | 12 +- Difficult_Rocket/utils/translate.py | 5 + libs/msdnicrosoft_logger/__init__.py | 170 +++++++++++++++++++++++++++ try/c/a.exe | Bin 54728 -> 0 bytes try/c/compile.ps1 | 1 + try/c/feb_speed.c | 22 +++- try/c/feb_speed.exe | Bin 55402 -> 54324 bytes try/c/run.exe | Bin 54324 -> 0 bytes 8 files changed, 197 insertions(+), 13 deletions(-) create mode 100644 libs/msdnicrosoft_logger/__init__.py delete mode 100644 try/c/a.exe create mode 100644 try/c/compile.ps1 delete mode 100644 try/c/run.exe diff --git a/Difficult_Rocket/server/__init__.py b/Difficult_Rocket/server/__init__.py index ef5f237..ee083df 100644 --- a/Difficult_Rocket/server/__init__.py +++ b/Difficult_Rocket/server/__init__.py @@ -19,9 +19,10 @@ if __name__ == '__main__': # been start will not run this sys.path.append('/bin/libs') sys.path.append('/bin') -from utils import tools +from Difficult_Rocket.utils import tools +from Difficult_Rocket.utils.translate import tr from Difficult_Rocket.api.delivery import Delivery -from utils.new_thread import new_thread +from Difficult_Rocket.utils.new_thread import new_thread # TODO 改变服务端启动逻辑 0.6.0会写完的( @@ -40,10 +41,7 @@ class Server: self.config = tools.load_file('configs/main.config') self.dev = Dev self.net_mode = net_mode - # lang - self.lang = tools.load_file('configs/lang/%s.json5' % self.config['runtime']['language'], 'server') - self.logger.info('%s' % self.lang['setup.done']) + self.logger.info(tr.lang('server', 'setup.done')) - @new_thread('Server') def run(self): - self.logger.info(self.lang['os.pid_is'].format(os.getpid(), os.getppid())) + self.logger.info(tr.lang('server', 'os.pid_is').format(os.getpid(), os.getppid())) diff --git a/Difficult_Rocket/utils/translate.py b/Difficult_Rocket/utils/translate.py index 877de4c..7700c08 100644 --- a/Difficult_Rocket/utils/translate.py +++ b/Difficult_Rocket/utils/translate.py @@ -39,6 +39,7 @@ class Lang: self.语言 = language self.翻译结果 = tools.load_file(f'configs/lang/{language}.toml') self.默认翻译 = tools.load_file('configs/lang/zh-CN.toml') + self.直接返回原始数据 = True def __str__(self) -> str: return self.语言 @@ -58,6 +59,8 @@ class Lang: self.翻译结果 = tools.load_file(f'configs/lang/{value}.toml') self.语言 = value except FileNotFoundError: + if self.直接返回原始数据: + return None raise LanguageError(f'{value}\'s language toml file not found') else: raise NotImplementedError @@ -82,6 +85,8 @@ class Lang: 结果 = 结果[选项] return 结果 except KeyError: + if self.直接返回原始数据: + return args raise LanguageError(f'there\'s no key {args} in both {self.语言} and zh-CN') def 翻译(self, *args) -> Union[int, str, list, dict]: diff --git a/libs/msdnicrosoft_logger/__init__.py b/libs/msdnicrosoft_logger/__init__.py new file mode 100644 index 0000000..376eb8b --- /dev/null +++ b/libs/msdnicrosoft_logger/__init__.py @@ -0,0 +1,170 @@ +from time import strftime + +__all__ = [ + "Log" +] + + +class Log: + """ + 参数:\n + Shell -- 是否输出消息 -> 控制台 (Default:True) | Boolean\n + LogFile -- 是否输出消息 -> 文件 (Default: False) | Boolean\n + FileName [已使用格式化时间] -- 输出文件名(仅 LogFile=True 时此参数有效)(Default:%Y-%m-%d_%H-%M.log) | String\n + FileName 请注意符合对应操作系统的文件命名要求\n + """ + + def __init__(self, + Shell=True, + LogFile=False, + FileName="%Y-%m-%d_%H-%M.log" + ): + self.Shell = Shell + self.LogFile = LogFile + self.FileName = FileName + + def info(self, Message): + if self.Shell: + Console.info(Message) + if self.LogFile: + file = File(FileName=self.FileName) + file.info(Message) + + def warning(self, Message): + if self.Shell: + Console.warning(Message) + if self.LogFile: + file = File(FileName=self.FileName) + file.warning(Message) + + def error(self, Message): + if self.Shell: + Console.error(Message) + if self.LogFile: + file = File(FileName=self.FileName) + file.error(Message) + + def fatal(self, Message): + if self.Shell: + Console.fatal(Message) + if self.LogFile: + file = File(FileName=self.FileName) + file.fatal(Message) + + def debug(self, Message): + if self.Shell: + Console.debug(Message) + if self.LogFile: + file = File(FileName=self.FileName) + file.debug(Message) + + +class Console: + """ + This class can output colored messages to Shell. + """ + from colorama import init + sColorSuffix = "\033[0m" + init(autoreset=True) + + @staticmethod + def info(Message): + print( + strftime( + f"[%H:%M:%S] [\033[32mINFO{Console.sColorSuffix}]: {Message}" + ) + ) + + @staticmethod + def warning(Message): + print( + strftime( + f"[%H:%M:%S] [\033[33mWARN{Console.sColorSuffix}]: {Message}" + ) + ) + + @staticmethod + def error(Message): + print( + strftime( + f"[%H:%M:%S] [\033[31mERROR{Console.sColorSuffix}]: {Message}" + ) + ) + + @staticmethod + def fatal(Message): + print( + strftime( + f"[%H:%M:%S] [\033[1;31;47mFATAL{Console.sColorSuffix}]: {Message}" + ) + ) + + @staticmethod + def debug(Message): + print( + strftime( + f"[%H:%M:%S] [\033[34mDEBUG{Console.sColorSuffix}]: {Message}" + ) + ) + + +class File: + """ + This class can output messages to file. + """ + + def __init__(self, FileName): + self.File = open(strftime(FileName), "a", encoding="utf-8") + + def __del__(self): + self.File.close() + + def info(self, Message): + self.File.write( + strftime( + f"[%H:%M:%S] [INFO]: {Message}\n" + ) + ) + + def warning(self, Message): + self.File.write( + strftime( + f"[%H:%M:%S] [WARN]: {Message}\n" + ) + ) + + def error(self, Message): + self.File.write( + strftime( + f"[%H:%M:%S] [ERROR]: {Message}\n" + ) + ) + + def fatal(self, Message): + self.File.write( + strftime( + f"[%H:%M:%S] [FATAL]: {Message}\n" + ) + ) + + def debug(self, Message): + self.File.write( + strftime( + f"[%H:%M:%S] [DEBUG]: {Message}\n" + ) + ) + + +if __name__ == '__main__': + from time import sleep + + logger = Log(LogFile=True) + logger.info("这是一条正常消息") + sleep(1) + logger.warning("这是一条警告消息") + sleep(2) + logger.error("这是一条错误消息") + sleep(3) + logger.fatal("这是一条致命错误消息") + sleep(4) + logger.debug("这是一条调试消息") diff --git a/try/c/a.exe b/try/c/a.exe deleted file mode 100644 index 868ad2b461381e66ff767cc49175d31d49d7db58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54728 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 E21BI;`v3p{ delta 8413 zcmaJ`3tUvk)xUFh@3OpCagp~fEFhv0P}mr?x+YjJ)g)+M8nMe8k*BZ-K0y>^1$5yg ziiwHXXrjg>C^o*5NDR?D{8E~HY5Z*3kk;5uYEs%Xsc93p|GB%o((n83kC}7kyyncA zGiUBzP90Hw(XDbcd*^NL$`wil;o0_fi+3^;1hpV6ZEe5yGqF;nEzyZAo0hP7qBDXz z*nQ%ln*PAzStWUklf=I>nl4^q4fLHj$!BqlAPBu^v6QHaGXD{lgh4bBEf;OnV-a+B zC#9w-l=nGba8E1b(`HpzKr^T4K;o=b^sLI@ZS;&*(|f9n`hrwJNO}J<*AnCwsSv~A zLGkFp)X{^$8G=x_W#+w)+Ll3yfo0b}V-tRi)yEB?Z7P zI_m-yUi%L&m-9*pX7$3+;q&v`!VR_lnRy3&&vSSM;=3oM>nCrdPChBbc0CQ|>yNBnYqaD7R>~ z-eQ4GzsKxn4LnfK1rHOQAR=5(K~`?@-wxnhM~k(0TGj!*tZ{FWe-@`FLF@Akkhj0? zQ~`GsP75?_gFUEjy_o>l#*na94SpZO%je6d{MS)_R*(2$M=NWa0D zFZ}a0E|<$8yW$?A$9yJ>hA_I|V-)?v=u@BI#EcT|s4dp$(nkTEZ|`&IBZ1i8bm`ML zuWfN`g8i~fZ=q=48QSJhknH+)%JNN*y19(!$UCdKg~*REo80!$)deZNvi*Nt`t$Uf zZwxz5pZZ4CZ&5^~%@9d>TeheD07c|W;Yxrr-fE#&*&n;KfD>Az7m-@BeZe5m9yfZ+ zrC-2pwE2q(e9mPUxbzo`1>qc5M=rVash~MGjOP{>guuE^acBWTC`yN^!7qd5(K~*V zwfkzhp|lSAmtPk9ke2x`Vs<*@pFA!CrsX_!qs;nU19DrWlRopmlO3VR0Q1t$ctQB{ z?m$C>vVm=pM=}07sH_)`35 z!?^t-isKU9^hv)~mhFEr4x8EXV61j=OL}sM^MgP|vK3U>e$CkzNXK+W)=2N_!r;UW zU3^R?j9ivxL0eg3OWOS)$dmizw)9vd!kMs~rj0YR1S%Mp9{wCQFy-6DEpfN=6@PY3 zfIEc_Y*;(>jf-PN^u;)tJ=!y4d>9McYl5N63yyHR&hh?=Ba1+DYI=%-US$(AAL2G@ z;^d|;ZAL7|8O=R0(`~YYRN(BK0sc7Mia5Z&q0Y!JCIlmU91d5U#sj}an$YH`(v$!ooN@aRH@xA2 zzwy9J9{8*W?x7im)Mooz@(xMENe=!X*CzAg(DHwbU2$_2V?+Az%47Un z

-2h61VE(4`#`q5)$2{8rR~q_~If^9|0C0ml5u@~3+$t&ZM912J74F*=x&1^x2Mce>#3VF8}(OV}%8|G%GfqIeKzpx3bXV zS6!|zKXSRU087y}qP3#!@A)C_9+uKO)iN>}u)*~Ie{7*OlRg>OA3av8p(iJyi;*MR zNG!3Ueivd@myHMmzKOOCct4;SS8XeB3!oLP6L>aY5!!y>m4MY~UBDXvAD$=(hqw&j zGHmoIjsxyS>jUlpRD}w{72rC+AhfI5LcL%Fl7sd!7?pq<(XIn;;5hD5C&vM|q6s-L z1o#-58h97rAv7)UZoo|uf)E0{0dO|nITCEJ3@;Wu^+kQ8Yi`-GIMD69;p8mdxy69n+GR3Xo$6@~H`k5*m*X zhu&%?sP6{D!@myN_Z~in%){rpO4F(&?NYUhW%lfvR>izQc0WBoBu&wZ*}=qC275a~ zEDAN7a$=1=*)#X5I_BuSGxcuj-1g{+9dk6k=_>55BB!HqbK;~bK8DASGcOBJH40YR z+~g&KU;3=9qGH>sn%wHF^rcz0s&!d;SvX$S>dJzG{Aqc@|H2oBCsQVHcOui|t;(sQ zdGn?QsA@TCwF&CnkUoK0<{2VHwNzSBUSupT2UWWTI%@4HrN1W7yYud%Aj|lAQKwdf z@+)d`OA7?aYAr6Sv|6oYxz@azDr;Fzogh~0zJr?POLUD0nwK4j0MY7o)z*Tls?y?W zn;;&KuL93aEC*E(Ux>X1G3}7WoT{QcK@4Szu_0=`738&o7|DV@gt}V$Tczhy4T)H5 z-6GK}_?E)Ft@K}y5-BKOTU=F9E{K!dW`VCZTU@S?fBGNfvYgcw zkYD8G;n2bP6Y9BH$(mD^TUt_Gyk1bHP2^Kxm#d45$_w(1e1`>5l&V)%RN0hm^)AaP zE*F?2@kswTMc96yyowrZKJ)T@h8t>Mg{r_2;R*Cw){S15XhAOscPCmXd~PUv5jpx# zaSH26nRh-?KUBs;o{AC#|5@HX-m0rpaU@*0VqU3d<5-+F$XBHe*N$W3y>uw2Vyxin zI~OEW&|pEOo#i{*_b%UzAjB&W9F9n-qv-QO=b(0K7|RG^;CV$089_rV z_cS&ybj0E~7Bb$;60+xR==+Q|DTeg?u(FudAIGXhVLN)p{uSVlo?%D%sb}f4k~{}6 zDSc@Y4qy^LbV>6wGapDQD=sgpHK!)k%`{uhsdoUqLm|zWo>W|(S6Y)_fVa9)hZXj! zZTY3exzko*I-xA5w6r1*cnSu2Rkr+s!fH21keJ{t4sFuJMoD^9n=HGZi-Va_VV8le13QgnVjNBv zi!+&yb7=bNU|PB_g3C)`SY0nSLanQVA<50H5h=M-F~|1Nfz<}ml!UPXMaWX3X8jyv z*D12Z#QsV1OH6dUq>;w2HcC0Dj`$5&65dl@I$p#p>6Y?vHP3A7DmPO0F)dvy_mOx2 zB#N%q(_qtNcMWfzFFFD)5hw$Ha{td%a5L~Ak$5T%JBANb>Md%1$@VVf`!I4hsL)8 zzl}3o#ESCr_<~T}M?V^P30Kmmh-Vha!S(V+4I-^J0(D^J`4_#PzE+C2T*ou8 z4`9M<`b(9`H(RmIJ@=xV&QLN}%aE_HHlZ)6h@cDAQ`kBBGscw^Xfyd%4$G^Et^WzF zx5ct9$Xk?I-={y>44NERZ_tpgGYSq(sWHLX`)f@1_V7u)Mla<~>^YhtJ9{ni%^1 zT3HkrCDcY~Tzp0?4OWF=>m~+ZCI>3kNZccNG-*riJrh%b>F`?M<_*o8O~0)z@$G{U z7gRBK*smyIx31GrTU`cH;G?>K;plv@&LkSWJs!l;-1Vp8O~@s8UXDqOxU0}^wTM0qe*P= z;b|9FSXot2U0@R$e15z{H-#_Gy~AH@jOEd5sE!dQFe)(gON`!#ju?Z(WsBo?lupdLtY8 zWPv;)*8M;SbfdjL35tw{KTp2D4wRpX5z4!qf;K|=5NQ9nAv;66Y@s)|lpxnq8ckvr z7El+?OQSd_()z|2)=p0~8l;=h?4{Qm4fTGQLqMjCSPcVZ0J%RxNdP68zbfOrxvS6u zP@H3AmVweeMy3vwO#Bubdro?Brz28`@@klxMAoem zC8&xUwwsWu2ezBUD~!sIhT#afudj3!Ik!hi{FZuxe0LZmek*lT(hifaE{t2_k)4hL z97-Q=i>1wbeW(k$`~jqr>B0^JYoay z(kIP^M6Q|*v)lz0Got5{jD5HhQ&30kF|3sq*}1(6dkOj_t!bp&DYIn?whI{kw*s19 zi_BIj*iK-T3Z`w9aVsoo-9*>yW>UAwv}~uD8UcT^)7-I3rUzThv>EVy!0!PwTg|k7 zw@mK=-U3|QW~Q|cnce~XJD|MFOjYeNT>=~gOy6y$@(!6U0^S6)ILx$~WO@zI2{@R3ML0sZZgR7#H>X%86be4!tcg?^xMzWWSPIaIQ_ zinI=xW4LB!Q|-PI@us3hH#%cQr^s`XT90Vyz9(YE%5X}4K9}Cx??u0RA_KeG-jzmK zPx5``*fn5#Y0Z&vn!8^sHjD_L*k6W2&qW@5N=9OG?0sMk1sBziOQ!u#nduT>*wbc8KPXct;6=dT17@=PLZ-(6UjrQ9Wu`gL$m9S# z2N-bBOfwJ3)C%}ApwBPNlzLdEX26qxnrFz2HuK1i&bbJ(LWEH>FHxKqWq_02F>G$Z8yK*Via~BUNf)d=c59)n|Z{x~lf zpB!J#dg-ng(k5uRG*ZT0t^@GKdn=q8UxG<#w7t@1lRalomANGq*eldN0lEPQ#m24fo{0ZdB$M^Ta+W}6Png6(75)B1Ob}o5$g=+d zp|>dLWLg~mPB&8N@5CjZ4U;31^FeV?*~x{YoW>g!KDZQOF_%x8f{u)F^i{}b(hnyW zioFr^)1GA$8iu0`4vkAES2!jBfg_CkC{3L*xFMIgL=p8dK3OV zl}W!owVNeV&M(vA2NmCka-tCz@vSkdae(3sr&oU2hbq10WmC}AG3M%UyPu)cFPkPb zj0w&G(4ArQ)yt{kKsd#o-Y8xTqhFj(jW-UfSLfxF7h*Y;W9Hk0mxF;Y`u;TXIGi3n zvpUEEnUPp7z+Ie8ADl4-y)~>?SX)(WE8sEqKAVOY$9ZQLA`Nz&P0J95XM+(T5qGq1 zm}0FcS8}~~*bbNZ31mi6%Y7K|k&~ozyEFQSmsoA9DlI67Cu4N~3SD8$RtdP?b;DZR zejF(HXURDvm72u!G2(!V;?KtfWe!^^tSZ1-@WHib#rY3awDY`?^nHO5rN!k1!nCUV u99vH8`t|FDY54`YHAU9Ks+_Wdo`MTI)hamEliC-;DEY$Fp2crE1O5%m1Al-3 diff --git a/try/c/run.exe b/try/c/run.exe deleted file mode 100644 index 8f446e75bb9c31852c089a41d3d36dbb198c8c86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54324 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