跳到主要内容

消息调试

从原始交易中查找消息 ID

最简单的方法是使用 Hyperlane Explorer,如果您的链被支持。如果您的链不被支持,可以通过查看原始交易来找到消息 ID。

在原始链的区块浏览器上查看原始交易时,导航到 日志 标签。

DispatchId 日志包含消息 ID,作为主题编号 1(第二个主题)。

有时,链区块浏览器不会显示人性化的 "DispatchId" 名称。在这种情况下,您可以通过其主题 0 查找日志:0x788dbc1b7152732178210e7f4d9d010ef016f9eafbe66786bd7169f56e0c353a

在原始交易上显示 DispatchId 日志的 Arbiscan 示例。

调试发送到 Cosmos 链的消息

目前,Hyperlane Explorer 不支持非 EVM 链。

要检查您的消息是否已送达,请选择目标链并在下面输入您的消息 ID:

Destination Chain:
Message ID:
我的 Warp Route 转账显示已送达,但我没有看到

我们可以通过两个步骤来调试这个问题:

验证资金是否已收到:

  1. 打开目标链的区块浏览器,导航到您预期的接收地址。
  2. 如果您期望收到代币(例如 ERC-20),请检查代币转账标签,查看转账到您地址的代币。
  3. 如果您期望收到原生代币(例如 ETH,在以太坊上),请检查 "内部交易" 标签,查看转账到您地址的原生代币。

验证您的转账接收者

在原始链的区块浏览器上查看原始交易时,导航到 日志 标签。

SentTransferRemote 日志包含接收者,作为主题编号 1(第二个主题)。

有时,链区块浏览器不会显示人性化的 "SentTransferRemote" 名称。在这种情况下,您可以通过其主题 0 查找日志:0xd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec

接收者地址是将在目标链上接收扭曲代币的账户。如果需要,地址左侧会填充零。

如果您的目标链是 EVM 链,日志将显示 0x0000000000000000000000ffffffffffffffffffffffffffffffffffffffff,表示 0xffffffffffffffffffffffffffffffffffffffff 是转账接收者。

如果您的目标链是 Cosmos 链,您可以将十六进制内容转换为 bech32 地址,使用像 这个工具 这样的工具。一些 Cosmos 链有不同的地址长度,因此请注意复制多少个字符。

在原始交易上显示 DispatchId 日志的 Arbiscan 示例。

我的 Warp Route 转账接收者不是我想要的地址

有时浏览器扩展钱包之间可能会相互竞争,您不常用的钱包的地址优先于您想要的钱包。我们已经看到这种情况发生在 OKX Wallet 上。请检查您所有的钱包地址以找到您的接收地址。

自己中继 EVM → EVM 消息

使用 Hyperlane CLI,如果在两个 EVM 链之间,可以自己中继消息。

  1. 按照 这些说明 在本地设置 CLI。
  2. 按照 上述说明 查找您的消息 ID。
  3. 获取一个在目标链上有资金的账户的私钥。
  4. 运行命令以中继消息:
HYP_KEY=<your-private-key> hyperlane status --relay --origin <origin-chain> --destination <destination-chain> --id <message-id>

例如:

HYP_KEY=0xffff00000000000000000000000000000000000000000000000000000000ffff hyperlane status --relay --origin base --destination blast --id 0xabcd00000000000000000000000000000000000000000000000000000000abcd
我仍然需要帮助我的消息未送达

如果上述步骤没有帮助,您可以加入我们的 Discord 并在 #support-forum 频道创建新帖子。