diff --git a/vnpy/gateway/hbdm/hbdm_gateway.py b/vnpy/gateway/hbdm/hbdm_gateway.py index 743ae2a0..5a822659 100644 --- a/vnpy/gateway/hbdm/hbdm_gateway.py +++ b/vnpy/gateway/hbdm/hbdm_gateway.py @@ -9,6 +9,7 @@ import json import zlib import hashlib import hmac +import sys from copy import copy from datetime import datetime from threading import Lock @@ -752,6 +753,19 @@ class HbdmRestApi(RestClient): if not issubclass(exception_type, ConnectionError): self.on_error(exception_type, exception_value, tb, request) + def on_error( + self, exception_type: type, exception_value: Exception, tb, request: Request + ): + """ + Callback to handler request exception. + """ + msg = f"触发异常,状态码:{exception_type},信息:{exception_value}" + self.gateway.write_log(msg) + + sys.stderr.write( + self.exception_detail(exception_type, exception_value, tb, request) + ) + def check_error(self, data: dict, func: str = ""): """""" if data["status"] != "error": diff --git a/vnpy/gateway/huobi/huobi_gateway.py b/vnpy/gateway/huobi/huobi_gateway.py index e57088d5..08c18e05 100644 --- a/vnpy/gateway/huobi/huobi_gateway.py +++ b/vnpy/gateway/huobi/huobi_gateway.py @@ -9,6 +9,7 @@ import json import zlib import hashlib import hmac +import sys from copy import copy from datetime import datetime @@ -440,7 +441,20 @@ class HuobiRestApi(RestClient): self.gateway.write_log(f"委托撤单成功:{order.orderid}") self.order_manager.on_order(order) - + + def on_error( + self, exception_type: type, exception_value: Exception, tb, request: Request + ): + """ + Callback to handler request exception. + """ + msg = f"触发异常,状态码:{exception_type},信息:{exception_value}" + self.gateway.write_log(msg) + + sys.stderr.write( + self.exception_detail(exception_type, exception_value, tb, request) + ) + def check_error(self, data: dict, func: str = ""): """""" if data["status"] != "error": diff --git a/vnpy/gateway/rpc/rpc_gateway.py b/vnpy/gateway/rpc/rpc_gateway.py index c9ad39a8..a1807adb 100644 --- a/vnpy/gateway/rpc/rpc_gateway.py +++ b/vnpy/gateway/rpc/rpc_gateway.py @@ -50,7 +50,7 @@ class RpcGateway(BaseGateway): def send_order(self, req: OrderRequest): """""" gateway_name = self.symbol_gateway_map.get(req.vt_symbol, "") - self.client.send_order(req, gateway_name) + return self.client.send_order(req, gateway_name) def cancel_order(self, req: CancelRequest): """"""