# Transaction Bot 监控

### Transaction Bot 监控是什么？

Transaction Bot 监控主要用于链上交易监控。

### Transaction Bot 监控典型场景

1. 监控目标发送人的交易
2. 监控目标接受人的交易
3. 监控 ETH 大于或小于目标阈值发送告警
4. 监控特定 methodId 的交易

**支持的数据源**

| 数据源           | 类型       | 稳定性 |
| ------------- | -------- | --- |
| Ethereum      | on chain | 极高  |
| BSC           | on chain | 高   |
| Avalanche     | on chain | 高   |
| Polygon Pos   | on chain | 高   |
| Arbitrum      | on chain | 高   |
| Optimism      | on chain | 高   |
| Polygon zkEVM | on chain | 高   |
| ZkSync Era    | on chain | 高   |
| Base          | on chain | 高   |
| Scroll        | on chain | 高   |
| Manta         | on chain | 高   |
| ZKFair        | on chain | 高   |
| Blast         | on chain | 高   |
| Linea         | on chain | 高   |
| B2            | on chain | 高   |
| Merlin        | on chain | 高   |

### 如何配置 Transaction Bot 监控？

登录 ChainBot 平台后，右上角 "Create Bot" -> "Transaction Monitor"。

<figure><img src="https://269759277-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmoG8PqN7GJCejgjqG74o%2Fuploads%2F2h6tCnT7yzZXi4XBKo04%2Fcreate-tx-monitor.png?alt=media&#x26;token=b27defeb-920e-431f-9cf1-a67c2ff45ec5" alt=""><figcaption><p>Create a Transaction Bot</p></figcaption></figure>

#### Info 说明

| 字段名      | 说明               | 是否必填 |
| -------- | ---------------- | ---- |
| Name     | Bot 监控名          | 是    |
| Chain    | 选定的 Chain        | 是    |
| Contract | 选定的智能合约地址        | 是    |
| Function | 选定的智能合约的方法       | 是    |
| Tags     | Bot 监控 tags，利于搜索 | 是    |

#### Conditions 说明

<table><thead><tr><th>参数</th><th width="202.33333333333331">Symbol</th><th>说明</th></tr></thead><tbody><tr><td>From</td><td>==, in</td><td>发送交易的 from 参数，不同链的格式不同</td></tr><tr><td>To</td><td>==, in</td><td>发送交易的 to 参数</td></tr><tr><td>Value</td><td>>, >=, &#x3C;, &#x3C;=, ==, !=, in</td><td>发送交易的 value 参数，默认为 wei，1ETH == 1000000000000000000</td></tr><tr><td>methodId</td><td>==, in</td><td>发送交易的 MethodID，必须为 0x 开头的4个字节，例如 0x95d89b41</td></tr><tr><td>data</td><td>可以为空</td><td>整体字符串</td></tr></tbody></table>

#### 模板变量说明

<table><thead><tr><th width="331">变量</th><th>说明</th></tr></thead><tbody><tr><td>$subscription.name</td><td>订阅名称，一般和 Bot 监控同名</td></tr><tr><td>$chain.explore</td><td>链浏览器前缀</td></tr><tr><td>$chain.network</td><td>链的 chainId</td></tr><tr><td>$block.time</td><td>交易产生的区块时间</td></tr><tr><td>$tx.hash</td><td>交易 hash</td></tr><tr><td>$tx.height</td><td>交易产生的区块高度</td></tr><tr><td>$tx.nonce</td><td>交易 nonce 值</td></tr><tr><td>$tx.from</td><td>交易发送地址</td></tr><tr><td>$tx.to</td><td>交易接收地址</td></tr><tr><td>$tx.value</td><td>交易以太数值，如果以 ETH 为单位，则应该填写 $tx.value/1e18</td></tr><tr><td>$tx.gas</td><td>交易消耗的 Gas 费</td></tr><tr><td>$tx.gasPrice</td><td>交易的 gasPrice</td></tr><tr><td>$tx.input</td><td>交易的 input_data</td></tr><tr><td>$tx.type</td><td>交易类型</td></tr><tr><td>$tx.accessList</td><td>支持部分交易</td></tr><tr><td>$tx.chainId</td><td>交易的 ChainID</td></tr><tr><td>$tx.maxFeePerGas</td><td>ERC-1155 之后才有</td></tr><tr><td>$tx.maxPriorityFeePerGas</td><td>ERC-1155 之后才有</td></tr><tr><td>$tx.r</td><td>交易签名的 R 值</td></tr><tr><td>$tx.s</td><td>交易签名的 S 值</td></tr><tr><td>$tx.v</td><td>交易签名的 V 值</td></tr><tr><td>$tx.method</td><td>交易的方法名</td></tr></tbody></table>

#### 默认告警模板

```
[{$bot.name}]
From: {$tx.from}
To: {$tx.to}
Detail: {$parsed.message}
Method: {$tx.method}
Status: {$tx.status}
Explore: {$chain.explore}/tx/{$tx.hash}
Time: {$alert.time}
```

[了解告警通知模板？](https://docs.chainbot.io/zh/advanced-features/alarm-notification-template)

#### 通知消息示例

> \[ Transaction Monitor ]\
> Name: mim增发监控\
> From: 0xfddfe525054efaad204600d00ca86adb1cc2ea8a\
> To: 0x5f0dee98360d8200b20812e174d139a1a633edd2\
> Method: execTransaction(address,uint256,bytes,uint8,uint256,uint256,uint256,address,address,bytes)\
> Explore: <https://etherscan.io/tx/0x5a1a9f01fd3fad6fa3909bcdd284e8023eedf9797d94458a13bb6df929d80a1a>\
> Time: 2022-05-10 22:40:29 +0800 CST
>
> Created By [ChainBot.io](https://www.chainbot.io)

#### Transaction Bot 监控案例

[transaction-bot-demo](https://docs.chainbot.io/zh/bot-case/transaction-bot-demo "mention")
