Administrator
2022-10-21 527cff877e1f0d4b3bdf43eb5ef3874838947d3f
日志改造
2个文件已修改
157 ■■■■■ 已修改文件
l2_data_log.py 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
log.py 142 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
l2_data_log.py
@@ -7,3 +7,18 @@
def l2_time(code, time_, description, new_line=False):
    log.logger_l2_process_time.info("{}: {}-{}{}", description, code, time_, "\n" if new_line else "")
    return int(time.time() * 1000)
class TradeLog:
    def __init__(self, thread_id):
        self.key = thread_id
    def trade(self, code, content, *args):
        log.logger_l2_trade.debug(("thread-id={} code={}  ".format(self.key, code) + content).format(*args))
    def trade_buy(self, code, content, *args):
        log.logger_l2_trade_buy.debug(("thread-id={} code={}  ".format(self.key, code) + content).format(*args))
    def trade_cancel(self, code, content, *args):
        log.logger_l2_trade_cancel.debug(("thread-id={} code={}  ".format(self.key, code) + content).format(*args))
log.py
@@ -3,75 +3,89 @@
"""
import datetime
import os
import sys
from loguru import logger
def get_path(dir_name, log_name):
    return "D:/logs/gp/{}/{}".format(dir_name, log_name) + ".{time:YYYY-MM-DD}.log"
class MyLogger:
    def __init__(self):
        logger.remove()
        #   每一天生成一个日志文件,历史日志文件采用zip压缩,异步写入日志
        logger.add(self.get_path("trade", "trade_gui"),
                   filter=lambda record: record["extra"].get("name") == "trade_gui",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("trade", "trade"), filter=lambda record: record["extra"].get("name") == "trade",
                   rotation="00:00",
                   compression="zip")
        logger.add(self.get_path("trade", "delegate"), filter=lambda record: record["extra"].get("name") == "delegate",
                   rotation="00:00",
                   compression="zip")
        logger.add(self.get_path("l2", "l2_error"), filter=lambda record: record["extra"].get("name") == "l2_error",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("l2", "l2_process"), filter=lambda record: record["extra"].get("name") == "l2_process",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("l2", "l2_process_time"),
                   filter=lambda record: record["extra"].get("name") == "l2_process_time",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("l2", "l2_trade"), filter=lambda record: record["extra"].get("name") == "l2_trade",
                   rotation="00:00", compression="zip", enqueue=True)
        # 显示在控制台
        logger.add(sys.stdout,
                   filter=lambda record: record["extra"].get("name") == "l2_trade")
        logger.add(self.get_path("l2", "l2_trade_cancel"),
                   filter=lambda record: record["extra"].get("name") == "l2_trade_cancel",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("l2", "l2_trade_buy"),
                   filter=lambda record: record["extra"].get("name") == "l2_trade_buy",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("l2", "l2_big_data"),
                   filter=lambda record: record["extra"].get("name") == "l2_big_data",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("juejin", "juejin_tick"),
                   filter=lambda record: record["extra"].get("name") == "juejin_tick",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("ths", "code_operate"),
                   filter=lambda record: record["extra"].get("name") == "code_operate",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("device", "device"), filter=lambda record: record["extra"].get("name") == "device",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_path("system", "system"), filter=lambda record: record["extra"].get("name") == "system",
                   rotation="00:00", compression="zip", enqueue=True)
    def get_path(self, dir_name, log_name):
        return "D:/logs/gp/{}/{}".format(dir_name, log_name) + ".{time:YYYY-MM-DD}.log"
    def get_logger(self, log_name):
        return logger.bind(name=log_name)
logger.add(get_path("l2", "l2_process_time"), filter=lambda record: record["extra"].get("name") == "l2_process_time",
           rotation="00:00", compression="zip", enqueue=True)
logger_l2_process_time = logger.bind(name="l2_process_time")
logger.remove(handler_id=None)
__mylogger = MyLogger()
logger_trade_gui = __mylogger.get_logger("trade_gui")
logger_trade = __mylogger.get_logger("trade")
logger_trade_delegate = __mylogger.get_logger("delegate")
logger_l2_error = __mylogger.get_logger("l2_error")
logger_l2_process = __mylogger.get_logger("l2_process")
logger_l2_process_time = __mylogger.get_logger("l2_process_time")
#   每一天生成一个日志文件,历史日志文件采用zip压缩,异步写入日志
logger.add(get_path("trade", "trade_gui"), filter=lambda record: record["extra"].get("name") == "trade_gui",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("trade", "trade"), filter=lambda record: record["extra"].get("name") == "trade", rotation="00:00",
           compression="zip")
logger.add(get_path("trade", "delegate"), filter=lambda record: record["extra"].get("name") == "delegate",
           rotation="00:00",
           compression="zip")
logger.add(get_path("l2", "l2_error"), filter=lambda record: record["extra"].get("name") == "l2_error",
           rotation="00:00", compression="zip", enqueue=True)
logger_l2_trade = __mylogger.get_logger("l2_trade")
logger_l2_trade_cancel = __mylogger.get_logger("l2_trade_cancel")
logger_l2_trade_buy = __mylogger.get_logger("l2_trade_buy")
logger.add(get_path("l2", "l2_process"), filter=lambda record: record["extra"].get("name") == "l2_process",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("l2", "l2_trade"), filter=lambda record: record["extra"].get("name") == "l2_trade",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("l2", "l2_trade_cancel"), filter=lambda record: record["extra"].get("name") == "l2_trade_cancel",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("l2", "l2_trade_buy"), filter=lambda record: record["extra"].get("name") == "l2_trade_buy",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("l2", "l2_big_data"), filter=lambda record: record["extra"].get("name") == "l2_big_data",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("juejin", "juejin_tick"), filter=lambda record: record["extra"].get("name") == "juejin_tick",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("ths", "code_operate"), filter=lambda record: record["extra"].get("name") == "code_operate",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("device", "device"), filter=lambda record: record["extra"].get("name") == "device",
           rotation="00:00", compression="zip", enqueue=True)
logger.add(get_path("system", "system"), filter=lambda record: record["extra"].get("name") == "system",
           rotation="00:00", compression="zip", enqueue=True)
logger_trade_gui = logger.bind(name="trade_gui")
logger_trade = logger.bind(name="trade")
logger_trade_delegate = logger.bind(name="delegate")
logger_l2_error = logger.bind(name="l2_error")
logger_l2_process = logger.bind(name="l2_process")
logger_l2_trade = logger.bind(name="l2_trade")
logger_l2_trade_cancel = logger.bind(name="l2_trade_cancel")
logger_l2_trade_buy = logger.bind(name="l2_trade_buy")
logger_l2_big_data = logger.bind(name="l2_big_data")
logger_juejin_tick = logger.bind(name="juejin_tick")
logger_code_operate = logger.bind(name="code_operate")
logger_device = logger.bind(name="device")
logger_system = logger.bind(name="system")
logger_l2_big_data = __mylogger.get_logger("l2_big_data")
logger_juejin_tick = __mylogger.get_logger("juejin_tick")
logger_code_operate = __mylogger.get_logger("code_operate")
logger_device = __mylogger.get_logger("device")
logger_system = __mylogger.get_logger("system")
class LogUtil:
@@ -119,6 +133,8 @@
if __name__ == '__main__':
    date = datetime.datetime.now().strftime("%Y-%m-%d")
    LogUtil.extract_log_from_key("003005", "D:/logs/gp/l2/l2_process_time.{}.log".format(date),
                                 "D:/logs/gp/l2/l2_process_time{}.{}.log".format("003005", date))
    logger_l2_process_time.info("test123")
    # date = datetime.datetime.now().strftime("%Y-%m-%d")
    # LogUtil.extract_log_from_key("003005", "D:/logs/gp/l2/l2_process_time.{}.log".format(date),
    #                              "D:/logs/gp/l2/l2_process_time{}.{}.log".format("003005", date))