From 81f328532e366eef171b71810b221a9294dda78f Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期四, 21 十二月 2023 14:31:58 +0800 Subject: [PATCH] 买入条件调整/L撤调整 --- log_module/async_log_util.py | 69 ++++++++++++++++++++++++++++++---- 1 files changed, 60 insertions(+), 9 deletions(-) diff --git a/log_module/async_log_util.py b/log_module/async_log_util.py index de63946..de70236 100644 --- a/log_module/async_log_util.py +++ b/log_module/async_log_util.py @@ -4,38 +4,89 @@ import queue import time -from log_module.log import logger_debug +from log_module.log import logger_debug, logger_system from utils import tool + + +class AsyncLogManager: + __log_queue = queue.Queue() + + def __add_log(self, logger, method, *args): + self.__log_queue.put_nowait((logger, time.time(), method, args)) + + def debug(self, logger, *args): + self.__add_log(logger, "debug", *args) + + def info(self, logger, *args): + self.__add_log(logger, "info", *args) + + def warning(self, logger, *args): + self.__add_log(logger, "warning", *args) + + def error(self, logger, *args): + self.__add_log(logger, "error", *args) + + def exception(self, logger, *args): + self.__add_log(logger, "exception", *args) + + # 杩愯鍚屾鏃ュ織 + def run_sync(self): + logger_system.info(f"run_sync 绾跨▼ID:{tool.get_thread_id()}") + while True: + try: + val = self.__log_queue.get() + time_s = val[1] + cmd = val[2] + method = getattr(val[0], cmd) + d = list(val[3]) + d[0] = f"[{tool.to_time_str(int(time_s))}.{str(time_s).split('.')[1][:3]}] " + d[0] + d = tuple(d) + method(*d) + except: + pass + + +l2_data_log = AsyncLogManager() + +huaxin_l2_log = AsyncLogManager() log_queue = queue.Queue() -def __add_log(logger, method, *args): - log_queue.put_nowait((logger, time.time(), method, args)) +def __add_log(logger, time_out_log, method, *args): + start_time = time.time() + log_queue.put_nowait((logger, start_time, method, args)) + if time_out_log: + end_time = time.time() + sub_time = end_time - start_time + if sub_time > 0.01: + # 璁板綍鏃ュ織淇濆瓨鎱㈢殑鏃ュ織 + __add_log(logger_debug, False, f"淇濆瓨鍒版棩蹇楅槦鍒楃敤鏃讹細{sub_time}s") def debug(logger, *args): - __add_log(logger, "debug", *args) + __add_log(logger, True, "debug", *args) def info(logger, *args): - __add_log(logger, "info", *args) + __add_log(logger, True, "info", *args) def warning(logger, *args): - __add_log(logger, "warning", *args) + __add_log(logger, True, "warning", *args) def error(logger, *args): - __add_log(logger, "error", *args) + __add_log(logger, True, "error", *args) def exception(logger, *args): - __add_log(logger, "exception", *args) + __add_log(logger, True, "exception", *args) # 杩愯鍚屾鏃ュ織 def run_sync(): + logger_system.info(f"async_log 绾跨▼ID:{tool.get_thread_id()}") while True: try: val = log_queue.get() @@ -52,5 +103,5 @@ if __name__ == "__main__": # info(logger_debug, "*-{}", "test") - info(logger_debug, "123123") + info(logger_debug, "002375") run_sync() -- Gitblit v1.8.0