监控链上活动的智能合约

Defender 允许你跨链监控智能合约的交易和事件。本教程展示了如何构建一个自定义的监控模板,并在实际场景中使用它来监控一个 Uniswap V2,window=_blank 池。

前提条件

  • OpenZeppelin Defender 账户。

学习如何使用 Defender 在此 部署要监控的合约!

1. 配置监控器

你将监控 Ethereum 主网中的 0xB4e16d0168e52d35CaCD2c6185b44281Ec28C9Dc 合约,它是 Uniswap V2 USDC-ETH 池,window=_blank。该合约有持续的活动,使其成为查看监控器速度的好选择。要配置监控器,请按照以下步骤操作:

  1. 在 Web 浏览器中打开 Defender Monitor,window=_blank

  2. 点击 创建监控器

    监控器登录页面
  3. 将此监控器命名为 Uniswap V2: USDC-ETH Monitor

  4. 选择 Financial 风险类别。

  5. 点击 合约 字段,然后选择添加新地址。

  6. 使用以下参数填写表单,并选择它作为要监控的合约:

    • 名称: Uniswap V2: USDC-ETH Pool

    • 网络: Mainnet

    • 地址: 0xB4e16d0168e52d35CaCD2c6185b44281Ec28C9Dc

  7. 选择 1 confirmation block。Defender 将自动拾取 ABI,因此我们可以接下来选择交易过滤器。

    监控器添加的合约
  8. status == "success" 参数添加到 交易属性,以按交易级别的数据进行过滤,并确认交易已成功确认且未回滚。

    监控器交易过滤器
  9. 从下拉菜单中选择 Swap 事件。每次在池中进行交换时都会发出此事件。

    监控器事件过滤器
  10. 跳过函数级别的过滤器,因为你已经在跟踪从合约发出的所有 Swap 事件。

  11. 选择你选择的通知通道(例如电子邮件)。

  12. 点击 保存监控器

    监控器警报

你的监控器现在正在运行!

监控器卡片

2. 接收警报

只要监控器处于活动状态,警报就会开始滚动。如果选择电子邮件作为通知通道,你的通知应如下所示:

监控器 Telegram 警报

你可以在 Defender Monitor,window=_blank 页面上暂停或删除监控器。这个会频繁触发,因此在收到几个警报后,你可能需要使用右侧的切换按钮暂停它。你还可以通过单击其卡片的点状图标并选择“另存为模板”来将监控器另存为模板。

监控器保存模板

下一步

恭喜!你可以修改监控器以过滤特定的 Swap 数据或定位另一个池。如果你对高级用例感兴趣,我们正在研究与监控器相关的指南。

设置监控器后,我们建议在 Defender 上创建 Actions。 学习如何使用 Actions 及其教程 在此