add log-system, bug fixed

This commit is contained in:
lzx
2025-11-18 11:10:16 +08:00
parent ac22db02f3
commit 74d9a114c0
13 changed files with 861 additions and 186 deletions

View File

@@ -276,6 +276,196 @@ func LogETHNode(msg string) {
}
}
// =============================== RMQ <-> Listen 通信日志 ===============================
// LogRmqToListenTopupReq 记录 RMQ -> Listen 充值请求
// 使用 address 作为文件名
func LogRmqToListenTopupReq(queueId, chain, symbol, address string, timestamp uint64) {
if txLogger == nil {
return
}
lf, err := txLogger.getOrCreateLogFile(address)
if err != nil {
fmt.Printf("⚠️ 获取日志文件失败: %v\n", err)
return
}
t := time.Now().Format("2006-01-02 15:04:05")
// 格式:[msg-Type]: time-fromaddress-toaddress-chain-symbol-amount
// TopupReq 没有 fromAddress使用 "-" 代替toAddress 是 addressamount 为 0
content := fmt.Sprintf("[TopupReq]: %s--%s-%s-%s-0",
t, address, chain, symbol)
if err := lf.write(content); err != nil {
fmt.Printf("⚠️ 写入日志失败: %v\n", err)
}
}
// LogRmqToListenWithdrawReq 记录 RMQ -> Listen 提现请求
// 使用 fromAddress 作为文件名
func LogRmqToListenWithdrawReq(queueId, chain, symbol, fromAddress, toAddress string, amount, fee float64, timestamp uint64) {
if txLogger == nil {
return
}
lf, err := txLogger.getOrCreateLogFile(fromAddress)
if err != nil {
fmt.Printf("⚠️ 获取日志文件失败: %v\n", err)
return
}
t := time.Now().Format("2006-01-02 15:04:05")
// 格式:[msg-Type]: time-fromaddress-toaddress-chain-symbol-amount
content := fmt.Sprintf("[WithdrawReq]: %s-%s-%s-%s-%s-%.6f",
t, fromAddress, toAddress, chain, symbol, amount)
if err := lf.write(content); err != nil {
fmt.Printf("⚠️ 写入日志失败: %v\n", err)
}
}
// LogRmqToListenPayReq 记录 RMQ -> Listen 支付请求
// 使用 fromAddress 作为文件名
func LogRmqToListenPayReq(queueId, chain, symbol, fromAddress, toAddress string, amount, fee float64, timestamp uint64) {
if txLogger == nil {
return
}
lf, err := txLogger.getOrCreateLogFile(fromAddress)
if err != nil {
fmt.Printf("⚠️ 获取日志文件失败: %v\n", err)
return
}
t := time.Now().Format("2006-01-02 15:04:05")
// 格式:[msg-Type]: time-fromaddress-toaddress-chain-symbol-amount
content := fmt.Sprintf("[PayReq]: %s-%s-%s-%s-%s-%.6f",
t, fromAddress, toAddress, chain, symbol, amount)
if err := lf.write(content); err != nil {
fmt.Printf("⚠️ 写入日志失败: %v\n", err)
}
}
// LogRmqToListenRemoveReq 记录 RMQ -> Listen 移除监听请求
// 使用 address 作为文件名
func LogRmqToListenRemoveReq(queueId string, msgType int, chain, symbol, address string, timestamp uint64) {
if txLogger == nil {
return
}
lf, err := txLogger.getOrCreateLogFile(address)
if err != nil {
fmt.Printf("⚠️ 获取日志文件失败: %v\n", err)
return
}
t := time.Now().Format("2006-01-02 15:04:05")
// 格式:[msg-Type]: time-fromaddress-toaddress-chain-symbol-amount
// RemoveReq 没有 fromAddresstoAddress 是 addressamount 为 0
content := fmt.Sprintf("[RemoveReq]: %s--%s-%s-%s-0",
t, address, chain, symbol)
if err := lf.write(content); err != nil {
fmt.Printf("⚠️ 写入日志失败: %v\n", err)
}
}
// LogListenToRmqTopupResp 记录 Listen -> RMQ 充值响应
// 使用 address 作为文件名
func LogListenToRmqTopupResp(queueId, chain, symbol, address, fromAddress, txHash string, amount float64, blockHeight uint64, status int) {
if txLogger == nil {
return
}
lf, err := txLogger.getOrCreateLogFile(address)
if err != nil {
fmt.Printf("⚠️ 获取日志文件失败: %v\n", err)
return
}
t := time.Now().Format("2006-01-02 15:04:05")
// 格式:[msg-Type]: time-fromaddress-toaddress-chain-symbol-amount
// TopupResp 中 address 是目标地址toAddressfromAddress 是来源地址
content := fmt.Sprintf("[TopupResp]: %s-%s-%s-%s-%s-%.6f",
t, fromAddress, address, chain, symbol, amount)
if err := lf.write(content); err != nil {
fmt.Printf("⚠️ 写入日志失败: %v\n", err)
}
}
// LogListenToRmqWithdrawResp 记录 Listen -> RMQ 提现响应
// 使用 fromAddress 作为文件名
func LogListenToRmqWithdrawResp(queueId, chain, symbol, fromAddress, toAddress, txHash string, amount, fee float64, blockHeight uint64, status int) {
if txLogger == nil {
return
}
lf, err := txLogger.getOrCreateLogFile(fromAddress)
if err != nil {
fmt.Printf("⚠️ 获取日志文件失败: %v\n", err)
return
}
t := time.Now().Format("2006-01-02 15:04:05")
// 格式:[msg-Type]: time-fromaddress-toaddress-chain-symbol-amount
content := fmt.Sprintf("[WithdrawResp]: %s-%s-%s-%s-%s-%.6f",
t, fromAddress, toAddress, chain, symbol, amount)
if err := lf.write(content); err != nil {
fmt.Printf("⚠️ 写入日志失败: %v\n", err)
}
}
// LogListenToRmqPayResp 记录 Listen -> RMQ 支付响应
// 使用 fromAddress 作为文件名
func LogListenToRmqPayResp(queueId, chain, symbol, fromAddress, toAddress, txHash string, amount, fee float64, blockHeight uint64, status int) {
if txLogger == nil {
return
}
lf, err := txLogger.getOrCreateLogFile(fromAddress)
if err != nil {
fmt.Printf("⚠️ 获取日志文件失败: %v\n", err)
return
}
t := time.Now().Format("2006-01-02 15:04:05")
// 格式:[msg-Type]: time-fromaddress-toaddress-chain-symbol-amount
content := fmt.Sprintf("[PayResp]: %s-%s-%s-%s-%s-%.6f",
t, fromAddress, toAddress, chain, symbol, amount)
if err := lf.write(content); err != nil {
fmt.Printf("⚠️ 写入日志失败: %v\n", err)
}
}
// LogListenToRmqRemoveResp 记录 Listen -> RMQ 移除监听响应
// 使用 address 作为文件名
func LogListenToRmqRemoveResp(queueId string, msgType int, chain, symbol, address string, status int) {
if txLogger == nil {
return
}
lf, err := txLogger.getOrCreateLogFile(address)
if err != nil {
fmt.Printf("⚠️ 获取日志文件失败: %v\n", err)
return
}
t := time.Now().Format("2006-01-02 15:04:05")
// 格式:[msg-Type]: time-fromaddress-toaddress-chain-symbol-amount
// RemoveResp 没有 fromAddresstoAddress 是 addressamount 为 0
content := fmt.Sprintf("[RemoveResp]: %s--%s-%s-%s-0",
t, address, chain, symbol)
if err := lf.write(content); err != nil {
fmt.Printf("⚠️ 写入日志失败: %v\n", err)
}
}
// Close 关闭所有日志文件
func CloseTransactionLogger() {
if txLogger == nil {