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