What Defender Monitor did
A Defender Monitor watched the transactions of one or more contracts that share an ABI, and sent a notification when a transaction matched what you set up. You could select events and functions, add conditions on their arguments by name or by position, and narrow the match with a transaction filter on fields such as from, to, value, gas used and status.
Selecting several events or several functions acted as an OR: any one of them was a match. Function matches needed the transaction to call the function directly, while events matched whichever contract call led to them.
Around the match itself, Defender Monitor offered more:
- Custom filters: your own code received the matches for a block and decided which ones counted.
- Confirmation blocks: how many blocks to wait before notifying, to trade speed for safety against reorganisations.
- An alert threshold and a minimum time between notifications, to cap repeated alerts.
- Notification channels from chat apps to incident tools and custom APIs, Telegram among them, with an editable message template.
- Actions and Workflows that ran when a match happened, for an automated on-chain response.
- Templates for common cases, five risk categories and a severity level for grouping.
The shutdown and OpenZeppelin Monitor
OpenZeppelin's Defender docs state that new sign-ups were disabled on June 30, 2025, and that Defender would stay fully operational until its final shutdown on July 1, 2026, while OpenZeppelin focuses on the open-source versions of its tools.
For alerts, that open-source version is OpenZeppelin Monitor. You install and run it yourself, from source or with Docker, and describe the networks, what to watch and where to send each notification in JSON files. Its docs list EVM-compatible networks and several other chains, and notification channels that include Telegram.
If you want to run your own service and keep many networks and channels, OpenZeppelin Monitor is the direct path. If you'd rather not run anything and your contracts are on Ethereum mainnet, a hosted contract rule in Alerts on Chain covers the core of a Defender Monitor setup: an event or a function, conditions on its arguments, and a message in Telegram.
What a contract rule covers
In Alerts on Chain you paste a contract address and add rules to it. Each rule says what to match and which Telegram chat to send to:
- Event emitted: one event from the standard catalog, one of the events listed for a well-known contract, a pasted event signature, or every event the contract emits.
- Method called: one function, by pasting its signature or 4-byte selector, or any method, with a choice of succeeded, failed or either.
- Argument conditions by name: is, is not, is one of, greater than, at least, contains and similar, depending on the argument's type;
[]means any element of an array. - Transaction conditions: Caller (tx.from) is, or is not, one of a list of addresses, and the ETH value sent.
- Delivery: one Telegram message per transaction per rule, to a chat or a group, within seconds of the transaction being confirmed.
Ownership moved from 0x3f5c…e0b7 to 0x9f2c…9a71
Contract 0x87b1…4e2a · Rule: Everything on the contract
What it doesn't do
Some of what Defender Monitor offered has no equivalent here. Check this list before you move:
- Ethereum mainnet only. More networks are planned, but none is live yet.
- Telegram is the only live channel. Discord, Slack, email and webhooks are coming.
- Alerts arrive within seconds of the transaction being confirmed. Pending (mempool) transactions are not alerted.
- No custom filter code and no OR or NOT expressions: all the conditions on a rule must match. Use one rule per alternative.
- No conditions on gas, nonce or the transaction's to field; only Caller and ETH value.
- No automated actions or relaying. Alerts on Chain is read-only: it never signs or sends a transaction in response to a match.
- No alert threshold, quiet period or confirmation-depth setting, and no editable message template: every alert uses the same format.
- Method calls are direct calls only. Calls made through Safes, routers or multicall are coming with Premium; events are emitted either way.
- No USD values; amounts are raw token units unless you set the token's decimals.
Map a Defender Monitor setup onto rules
Open your Defender Monitor configuration next to the dashboard and go through it field by field:
- Contracts: each contract is its own watched address. If one Defender Monitor covered several contracts with the same ABI, add each address and give it the same rules.
- Events: one rule per selected event, since several events were an OR. To keep everything a contract emits, use one rule on every event.
- Functions: one Method called rule per selected function. Paste the function signature with parameter names, so conditions can refer to them.
- Event and function conditions: name the argument instead of its position. Terms joined with
andbecome several conditions on one rule; terms joined withorbecome separate rules. - Transaction filter:
frombecomes a Caller condition,valuean ETH value condition, andstatusthe method rule's succeeded or failed choice. Gas fields have no equivalent. - Notifications: connect each Telegram chat or group on the Channels tab, then pick it on the rule.
- Custom filters, Actions, Workflows and thresholds: no equivalent. Keep them in your own code, or use OpenZeppelin Monitor for that part.
Contract
0x87b1…4e2a
Admin method called
pause()
0x3f5c…e0b7 paused the contract
Contract 0x87b1…4e2a · Rule: Admin method called
Set it up step by step
From sign-in to your first alert, in the actual dashboard.
- 1Sign in at alertsonchain.com with Google or with your wallet. A wallet sign-in is a signed message, not a transaction, so it costs no gas.
- 2Open the Channels tab and connect Telegram: start a chat with @alertsonchain_com_bot, send /start, and paste the 8-character code it replies with.
- 3Open the Everything on a contract template and paste the contract address from your Defender Monitor setup. Use the proxy address for upgradeable contracts.
- 4Open the rule and choose the event from the catalog, or paste the event or method signature. Add one rule per event or function you had selected.
- 5Add the argument conditions, then Caller or ETH value conditions in place of the transaction filter, and pick the Telegram chat the rule sends to.
- Click Create rule. The rule is active straight away, and the next matching transaction sends a Telegram message.
Frequently asked questions
Is OpenZeppelin Defender still available?
OpenZeppelin's docs state that new Defender sign-ups closed on June 30, 2025 and set the final shutdown for July 1, 2026. They point to open-source versions of its tools, such as OpenZeppelin Monitor.
Can I import my Defender Monitor configuration?
No. Rules are set up in the dashboard. Recreate each one with the field-by-field mapping on this page: the contract, then one rule per event or function, then the conditions.
Can a match send a transaction, like a Defender Action?
No. Alerts on Chain is read-only. It watches public addresses and never asks for a private key or a seed phrase. Alerts report activity; they can't respond on-chain.
Which networks are covered?
Ethereum mainnet only. More networks are planned, but none is live yet.
Related guides
- How to monitor smart contract eventsHow to monitor smart contract events on Ethereum: pick events from a catalog or paste a signature, filter on arguments by name, get each match within seconds. No code.Smart contract · 6 min
- What are blockchain alerts?Blockchain alerts turn activity on a wallet or smart contract into real-time messages. How they work, what you can watch on Ethereum, and how to set one up.Basics · 5 min
- Alert typeExplore Smart contract alerts
Sources (checked 2026-10-08)
Every statement about another product on this page comes from that product's own pages, listed here and opened on the date above.
- OpenZeppelin Defender docs: Defender (overview and sunset notice)https://github.com/OpenZeppelin/defender-docs/blob/main/docs/modules/ROOT/pages/index.adoc
- OpenZeppelin Defender docs: FAQ, "How can I sign up to Defender?"https://github.com/OpenZeppelin/defender-docs/blob/main/docs/modules/ROOT/pages/faq.adoc
- OpenZeppelin Defender docs: Defender Monitorhttps://github.com/OpenZeppelin/defender-docs/blob/main/docs/modules/ROOT/pages/module/monitor.adoc
- OpenZeppelin docs: OpenZeppelin Monitor (overview, installation and configuration)https://github.com/OpenZeppelin/docs/blob/main/content/monitor/index.mdx
- OpenZeppelin Monitor on GitHub: READMEhttps://github.com/OpenZeppelin/openzeppelin-monitor/blob/main/README.md