|
|
@@ -277,12 +277,14 @@ class ArbitrageProcess:
|
|
|
# final, 設定交易狀態,開始交易
|
|
|
self._set_state(self.STATE_SELLING_ON_EXCHANGE)
|
|
|
except Exception as e:
|
|
|
- msg = f"前置檢查未通過:{e}"
|
|
|
+ exc_traceback = traceback.format_exc()
|
|
|
+ msg = f"前置檢查未通過\n{exc_traceback}"
|
|
|
logger.error(msg)
|
|
|
+
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "fail")
|
|
|
self._set_state(self.STATE_REJECT)
|
|
|
|
|
|
- traceback.print_exc()
|
|
|
+ # traceback.print_exc()
|
|
|
|
|
|
# 以下是每个状态对应的具体执行函数
|
|
|
def _execute_sell_on_exchange(self):
|
|
|
@@ -324,12 +326,14 @@ class ArbitrageProcess:
|
|
|
|
|
|
self._set_state(self.STATE_WAITING_SELL_CONFIRM)
|
|
|
except Exception as e:
|
|
|
- msg = f"交易所现货卖出下单失败:{e}"
|
|
|
+ exc_traceback = traceback.format_exc()
|
|
|
+ msg = f"交易所现货卖出下单失败\n{exc_traceback}"
|
|
|
logger.error(msg)
|
|
|
+
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "fail")
|
|
|
self._set_state(self.STATE_FAILED)
|
|
|
|
|
|
- traceback.print_exc()
|
|
|
+ # traceback.print_exc()
|
|
|
|
|
|
def _wait_sell_confirm(self):
|
|
|
"""
|
|
|
@@ -378,12 +382,14 @@ class ArbitrageProcess:
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "fail")
|
|
|
self._set_state(self.STATE_FAILED)
|
|
|
except Exception as e:
|
|
|
- msg = f"查询交易所现货卖出订单状态时发生错误:{e}"
|
|
|
+ exc_traceback = traceback.format_exc()
|
|
|
+ msg = f"查询交易所现货卖出订单状态时发生错误\n{exc_traceback}"
|
|
|
logger.error(msg)
|
|
|
+
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "fail")
|
|
|
self._set_state(self.STATE_FAILED)
|
|
|
|
|
|
- traceback.print_exc()
|
|
|
+ # traceback.print_exc()
|
|
|
|
|
|
def _execute_buy_on_chain(self):
|
|
|
"""
|
|
|
@@ -426,12 +432,14 @@ class ArbitrageProcess:
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "success")
|
|
|
self._set_state(self.STATE_WAITING_CHAIN_CONFIRM)
|
|
|
except Exception as e:
|
|
|
- msg = f"鏈上買入未處理的錯誤:{e}, 交易哈希:{self.chain_tx_hash}"
|
|
|
+ exc_traceback = traceback.format_exc()
|
|
|
+ msg = f"鏈上買入未處理的錯誤, 交易哈希:{self.chain_tx_hash}\n{exc_traceback}"
|
|
|
logger.error(msg)
|
|
|
+
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "fail")
|
|
|
self._set_state(self.STATE_WAITING_CHAIN_CONFIRM)
|
|
|
|
|
|
- traceback.print_exc()
|
|
|
+ # traceback.print_exc()
|
|
|
|
|
|
def _wait_chain_confirm(self):
|
|
|
"""
|
|
|
@@ -596,12 +604,14 @@ class ArbitrageProcess:
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "fail")
|
|
|
self._set_state(self.STATE_WAITING_EXCHANGE_ROLLBACK)
|
|
|
except Exception as e:
|
|
|
- msg = f"查询链上确认状态时发生错误:{e}"
|
|
|
+ exc_traceback = traceback.format_exc()
|
|
|
+ msg = f"查询链上确认状态时发生错误\n{exc_traceback}"
|
|
|
logger.error(msg)
|
|
|
+
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "fail")
|
|
|
self._set_state(self.STATE_WAITING_EXCHANGE_ROLLBACK)
|
|
|
|
|
|
- traceback.print_exc()
|
|
|
+ # traceback.print_exc()
|
|
|
|
|
|
def _wait_exchange_rollback(self):
|
|
|
"""
|
|
|
@@ -697,12 +707,14 @@ class ArbitrageProcess:
|
|
|
|
|
|
self._set_state(self.STATE_FAILED)
|
|
|
except Exception as e:
|
|
|
- msg = f"【回滚】交易所回滚交易失败:{e}"
|
|
|
+ exc_traceback = traceback.format_exc()
|
|
|
+ msg = f"【回滚】交易所回滚交易失败\n{exc_traceback}"
|
|
|
logger.error(msg)
|
|
|
+
|
|
|
add_state_flow_entry(self.process_item, self.current_state, msg, "fail")
|
|
|
self._set_state(self.STATE_FAILED)
|
|
|
|
|
|
- traceback.print_exc()
|
|
|
+ # traceback.print_exc()
|
|
|
|
|
|
# 伪代码示例:如何使用这个类
|
|
|
if __name__ == "__main__":
|