Мониторинг казны и кошельков keeper
Алерты на контракт следят за тем, что делают пользователи. Алерты на кошельки следят за деньгами, от которых зависит сам протокол: казна, из которой идут выплаты, мультисиг с резервами и кошельки keeper, relayer и оракулов, которые платят газ, чтобы протокол продолжал работать.
С этими кошельками случаются две беды, и обе тихие:
- У keeper заканчивается газ. Бот останавливается, вместе с ним встают ликвидации или обновления цен, и никто не замечает, пока что-то не сломается.
- Казна уменьшается. Из-за неожиданного вывода или из-за падения цены без единого перевода.
Эти пять алертов закрывают обе. Подтверждать владение не нужно: балансы публичные, следить можно за любым адресом.
Кошельки keeper и relayer
| Алерт | Срабатывает, когда | Зачем |
|---|---|---|
| Низкий баланс | Баланс ниже нижней границы, в токенах | Простейшая защита, подходит кошелькам с ровными тратами |
| Газа осталось на N дней | При недавней скорости трат баланса хватит меньше чем на N дней | Граница в токенах срабатывает поздно в загруженный день и зря в тихий |
| Баланс низкий и пополнения нет | Баланс ниже границы И пополнения за окно не было | Для кошельков с ботом автопополнения: вы узнаёте, только если пополнение не удалось |
- Срабатывает, когда
- Баланс ниже нижней границы, в токенах
- Зачем
- Простейшая защита, подходит кошелькам с ровными тратами
- Срабатывает, когда
- При недавней скорости трат баланса хватит меньше чем на N дней
- Зачем
- Граница в токенах срабатывает поздно в загруженный день и зря в тихий
- Срабатывает, когда
- Баланс ниже границы И пополнения за окно не было
- Зачем
- Для кошельков с ботом автопополнения: вы узнаёте, только если пополнение не удалось
Дни, а не граница. В тихую неделю 0,1 ETH хватает на месяц, в загруженный день — на несколько часов. Правило запаса измеряет, сколько кошелёк потратил за 6 часов, 24 часа или 3 дня, и делит баланс на эту скорость. Алерт выглядит так: «Хватит на 2,5 дня (условие < 3 дн.)», со скоростью трат и балансом.
Низкий баланс и нет пополнения. Если кошелёк пополняет бот, простая граница будит команду каждый раз, хотя бот пополняет его через минуту. Условие из двух частей через И оставляет только случаи, где нужен человек.
Казна и мультисиг
| Алерт | Срабатывает, когда | Зачем |
|---|---|---|
| Казна ниже $X | Сумма всех токенов на адресе в долларах ниже порога | Ловит и выводы, и падение цен |
| Перевод больше $X | Один перевод токена выше порога в долларах; фильтр по from оставляет только исходящие | Первый признак взлома или ошибки выплаты |
| Сменились владельцы Safe | Владельца Safe добавили, удалили или заменили, либо изменился порог | Кто управляет подписантами, тот управляет казной |
- Срабатывает, когда
- Сумма всех токенов на адресе в долларах ниже порога
- Зачем
- Ловит и выводы, и падение цен
- Срабатывает, когда
- Один перевод токена выше порога в долларах; фильтр по
fromоставляет только исходящие - Зачем
- Первый признак взлома или ошибки выплаты
- Срабатывает, когда
- Владельца Safe добавили, удалили или заменили, либо изменился порог
- Зачем
- Кто управляет подписантами, тот управляет казной
Общая сумма в долларах. В казне лежат ETH, стейблкоины и ваш токен. Граница по каждому токену не отвечает на главный вопрос: сколько денег всего. SmartAlert оценивает каждый токен через Chainlink, запасной источник — CoinGecko, и складывает. Если цена устарела, правило показывает «нет данных», а не неполную сумму.
Настройка
- В «Адресах» добавьте кошелёк и выберите нативную монету и токены, которые на нём лежат.
- Создайте правило из одного из алертов выше и задайте границу, число дней или порог в долларах.
- Выберите канал: Telegram, Slack, Discord, почта, PagerDuty или webhook.
Баланс читается каждую минуту. Когда кошелёк снова выше лимита, приходит «Вернулось в норму».
Ограничения
- История баланса начинается, когда вы добавляете адрес. Правилу запаса нужно, чтобы часть его окна заполнилась, прежде чем оно посчитает траты.
- Суммы в долларах, пороги в долларах и правила с двумя условиями требуют Pro или выше. Граница в токенах и правило запаса работают на любом тарифе.
- Токен без цены совсем исключается из суммы в долларах, и алерт об этом сообщает.
Вопросы и ответы
Можно ли следить за кошельком, который мне не принадлежит?
Да. Балансы публичные, подтверждать владение не нужно.
Какие сети?
Ethereum, BNB Chain, Base и Arbitrum.
Как быстро приходит алерт?
Баланс читается каждую минуту. Как часто проверяется правило, зависит от тарифа: раз в 5 минут на Free, раз в минуту на Pro, раз в 30 секунд на Business.
Попробуйте на своём контракте
Достаточно адреса. Первые 14 дней действуют лимиты Pro, а правила проверяются на истории до включения.