Administrator
2023-07-10 ad69cf29b884f99b1e22f383644cd706f392753d
华鑫适配
1个文件已删除
3个文件已修改
1个文件已添加
140 ■■■■ 已修改文件
log_module/log.py 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
main.py 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
test/test.py 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
trade/huaxin/huaxin_log.py 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
trade/huaxin/trade_server.py 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
log_module/log.py
@@ -163,9 +163,36 @@
                   filter=lambda record: record["extra"].get("name") == "kp_msg",
                   rotation="00:00", compression="zip", enqueue=True)
        ################################华鑫日志################################
        logger.add(self.get_hx_path("l2", "transaction"),
                   filter=lambda record: record["extra"].get("name") == "hx_l2_transaction",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_hx_path("l2", "orderdetail"),
                   filter=lambda record: record["extra"].get("name") == "hx_l2_orderdetail",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_hx_path("l2", "upload"),
                   filter=lambda record: record["extra"].get("name") == "hx_l2_upload",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_hx_path("contact", "debug"),
                   filter=lambda record: record["extra"].get("name") == "hx_contact_debug",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_hx_path("trade", "trade_callback"),
                   filter=lambda record: record["extra"].get("name") == "hx_trade_callback",
                   rotation="00:00", compression="zip", enqueue=True)
        logger.add(self.get_hx_path("trade", "debug"),
                   filter=lambda record: record["extra"].get("name") == "hx_trade_debug",
                   rotation="00:00", compression="zip", enqueue=True)
    def get_path(self, dir_name, log_name):
        return "{}/logs/gp/{}/{}".format(constant.get_path_prefix(), dir_name,
        path_str = "{}/logs/gp/{}/{}".format(constant.get_path_prefix(), dir_name, log_name) + ".{time:YYYY-MM-DD}.log"
        # print(path_str)
        return path_str
    def get_hx_path(self, dir_name, log_name):
        path_str = "{}/logs/huaxin/{}/{}".format(constant.get_path_prefix(), dir_name,
                                         log_name) + ".{time:YYYY-MM-DD}.log"
        # print(path_str)
        return path_str
    def get_logger(self, log_name):
        return logger.bind(name=log_name)
@@ -227,6 +254,14 @@
logger_kp_msg = __mylogger.get_logger("kp_msg")
# -------------------------------华鑫日志---------------------------------
hx_logger_l2_orderdetail = __mylogger.get_logger("hx_l2_orderdetail")
hx_logger_l2_transaction = __mylogger.get_logger("hx_l2_transaction")
hx_logger_l2_upload = __mylogger.get_logger("hx_l2_upload")
hx_logger_contact_debug = __mylogger.get_logger("hx_contact_debug")
hx_logger_trade_callback = __mylogger.get_logger("hx_trade_callback")
hx_logger_trade_debug = __mylogger.get_logger("hx_trade_debug")
class LogUtil:
    @classmethod
@@ -240,9 +275,6 @@
                        fw.write(line)
        finally:
            fw.close()
# 导出数据处理位置日志
@@ -335,7 +367,8 @@
    if not date:
        date = datetime.datetime.now().strftime("%Y-%m-%d")
    pos_list = []
    with open("{}/logs/gp/l2/l2_process.{}.log".format(constant.get_path_prefix(), date), mode='r', encoding="utf-8") as f:
    with open("{}/logs/gp/l2/l2_process.{}.log".format(constant.get_path_prefix(), date), mode='r',
              encoding="utf-8") as f:
        while True:
            line = f.readline()
            if not line:
@@ -355,7 +388,8 @@
    if not date:
        date = datetime.datetime.now().strftime("%Y-%m-%d")
    pos_list = []
    with open("{}/logs/gp/l2/l2_trade.{}.log".format(constant.get_path_prefix(), date), mode='r', encoding="utf-8") as f:
    with open("{}/logs/gp/l2/l2_trade.{}.log".format(constant.get_path_prefix(), date), mode='r',
              encoding="utf-8") as f:
        while True:
            line = f.readline()
            if not line:
@@ -395,7 +429,8 @@
        date = datetime.datetime.now().strftime("%Y-%m-%d")
    index_list = []
    buy_queues = []
    with open("{}/logs/gp/l2/l2_trade_buy_queue.{}.log".format(constant.get_path_prefix(),date), mode='r', encoding="utf-8") as f:
    with open("{}/logs/gp/l2/l2_trade_buy_queue.{}.log".format(constant.get_path_prefix(), date), mode='r',
              encoding="utf-8") as f:
        while True:
            line = f.readline()
            if not line:
@@ -526,7 +561,8 @@
if __name__ == '__main__':
    print(get_h_cancel_compute_info("603912"))
    logger_l2_process_time.info("test123")
    # print(get_h_cancel_compute_info("603912"))
    # logger_l2_h_cancel.info("test")
    # logger_l2_process_time.info("test123")
main.py
@@ -3,18 +3,20 @@
"""
import multiprocessing
import threading
from trade.huaxin import trade_server
from third_data import data_server
import log_module
from log_module.log import logger_l2_process_time
from server import *
import l2.l2_data_util
# 交易服务
from third_data import data_server
from trade.huaxin import trade_server
def createTradeServer():
    print("create TradeServer")
    # 初始化参数
@@ -22,7 +24,6 @@
    t1 = threading.Thread(target=createDataServer, daemon=True)
    t1.start()
    trade_server.run()
@@ -42,7 +43,7 @@
if __name__ == '__main__':
    log_module.log.logger_l2_process_time.info("测试123")
    logger_l2_process_time.info("测试123")
    serverProcess = multiprocessing.Process(target=createServer)
    serverProcess.start()
    # 将tradeServer作为主进程
test/test.py
New file
@@ -0,0 +1,4 @@
from log_module.log import logger_l2_process_time
if __name__ == "__main__":
    logger_l2_process_time.info("test123")
trade/huaxin/huaxin_log.py
File was deleted
trade/huaxin/trade_server.py
@@ -7,19 +7,15 @@
import socketserver
import threading
import time
import l2
import constant
from code_attribute import gpcode_manager
from l2 import l2_data_manager_new, l2_data_log
from l2.huaxin import l2_huaxin_util, huaxin_target_codes_manager
from l2.l2_data_util import local_today_datas
from log_module.log import logger_l2_error
from trade.huaxin.huaxin_log import logger_l2_orderdetail, logger_l2_transaction, logger_l2_upload, \
    logger_contact_debug, logger_trade_callback, logger_trade_debug
from l2 import l2_data_manager_new
from l2.huaxin import  huaxin_target_codes_manager
from log_module.log import hx_logger_l2_upload, hx_logger_contact_debug, hx_logger_trade_callback, \
    hx_logger_l2_orderdetail, hx_logger_l2_transaction, hx_logger_trade_debug
from trade.huaxin import huaxin_trade_api as trade_api, huaxin_trade_api, huaxin_trade_record_manager
from utils import socket_util, tool
from utils import socket_util
trade_data_request_queue = queue.Queue()
@@ -77,7 +73,7 @@
            else:
                data = skk.recv(1024 * 1024)
                data = buf + data.decode('utf-8')
            logger_l2_upload.info(f"读取数据耗时:{round((time.time() - start_time) * 1000, 1)}")
            hx_logger_l2_upload.info(f"读取数据耗时:{round((time.time() - start_time) * 1000, 1)}")
        return data, header_str
    def handle(self):
@@ -118,7 +114,7 @@
                                        # 记录活跃客户端
                                        trade_api.ClientSocketManager.heart(resultJSON['client_id'])
                                    else:
                                        logger_contact_debug.warning(f"接收到非心跳信息:{result}")
                                        hx_logger_contact_debug.warning(f"接收到非心跳信息:{result}")
                                except json.decoder.JSONDecodeError as e:
                                    if not result:
                                        sk.close()
@@ -140,7 +136,7 @@
                        data_json = data_json["data"]
                        type_ = data_json["type"]
                        # 记录交易反馈日志
                        logger_trade_callback.info(data_json)
                        hx_logger_trade_callback.info(data_json)
                        sk.sendall(json.dumps({"code": 0}).encode(encoding='utf-8'))
                        # 重新请求委托列表与资金
                        trade_data_request_queue.put_nowait({"type": "delegate_list"})
@@ -152,7 +148,7 @@
                        data = data_json["data"]
                        code = data["code"]
                        datas = data["data"]
                        logger_l2_orderdetail.info(f"{code}#{datas}")
                        hx_logger_l2_orderdetail.info(f"{code}#{datas}")
                        l2_data_manager_new.L2TradeDataProcessor.process_huaxin(code, datas)
                        sk.sendall(json.dumps({"code": 0}).encode(encoding='utf-8'))
@@ -160,7 +156,7 @@
                        data = data_json["data"]
                        code = data["code"]
                        datas = data["data"]
                        logger_l2_transaction.info(f"{code}#{datas}")
                        hx_logger_l2_transaction.info(f"{code}#{datas}")
                        sk.sendall(json.dumps({"code": 0}).encode(encoding='utf-8'))
                    # ------客户端请求接口-------
                    elif data_json["type"] == 'buy':
@@ -291,7 +287,7 @@
            data = trade_data_request_queue.get()
            if data:
                type_ = data["type"]
                logger_trade_debug.info(f"获取交易数据开始:{type_}")
                hx_logger_trade_debug.info(f"获取交易数据开始:{type_}")
                if type_ == "delegate_list":
                    data = huaxin_trade_api.get_delegate_list(False)
@@ -312,9 +308,9 @@
                        data = dataJSON["data"]["data"]
                        huaxin_trade_record_manager.DealRecordManager.add(data)
                logger_trade_debug.info(f"获取交易数据成功:{type_}")
                hx_logger_trade_debug.info(f"获取交易数据成功:{type_}")
        except Exception as e:
            logger_trade_debug.exception(e)
            hx_logger_trade_debug.exception(e)
        finally:
            # 有1s的间隔
            time.sleep(1)