logsSubscribe RPC 方法

订阅交易日志记录

{
"jsonrpc": "2.0",
"id": 1,
"method": "logsSubscribe",
"params": [
{
"mentions": ["11111111111111111111111111111111"]
},
{
"commitment": "finalized"
}
]
}

params

string | objectrequired

用于根据账户类型接收结果的日志过滤条件。目前支持以下过滤类型:

  • all - 订阅除简单投票交易以外的所有交易
  • allWithVotes - 订阅包括简单投票交易在内的所有交易
  • 一个包含以下字段的对象:
    • mentions: [ <string> ] - 包含单个 Pubkey(以 base-58 编码的字符串)的数组;如果存在,则仅订阅提到此地址的交易

mentions 字段目前 仅支持一个 Pubkey 字符串每次方法调用。列出额外的地址将导致错误。

objectoptional

包含以下字段的配置对象:

result

Response
{
"jsonrpc": "2.0",
"result": 24040,
"id": 1
}
integer

订阅 ID(用于取消订阅)

通知格式:

通知将是一个 RpcResponse JSON 对象,其值等于:

  • signature: <string> - 交易签名,base58 编码。
  • err: <object|null> - 如果交易失败则为错误,成功则为 null。 TransactionError 定义
  • logs: <array[string]> - 交易指令在执行期间输出的日志消息数组。

示例:

{
"jsonrpc": "2.0",
"method": "logsNotification",
"params": {
"result": {
"context": {
"slot": 5208469
},
"value": {
"signature": "5h6xBEauJ3PK6SWCZ1PGjBvj8vDdWG3KpwATGy1ARAXFSDwt8GFXM7W5Ncn16wmqokgpiKRLuS83KUxyZyv2sUYv",
"err": null,
"logs": [
"SBF program 83astBRguLMdt2h5U1Tpdq5tjFoJ6noeGwaY3mDLVcri success"
]
}
},
"subscription": 24040
}
}

Is this page helpful?