Tenderly is a Smart contract monitoring and alerting tool. With tenderly you can monitor smart contracts on multiple Ethereum networks. Recently, tenderly has come up with a great feature of simulating a transaction on Ethereum network which makes debugging a lot more easier than before.
So, today you will learn how you can simulate a transaction on tenderly.
**Step 1:**
Create an account on [tenderly](https://dashboard.tenderly.co/register?utm_source=homepage)
Now, If we will cast the above spells, then it will thrown an error of `gas required exceeds allowance`. But it doesn’t give any clue why it is throwing this error.
So, now we can use the DSA’s estimateCastGas() function which provide us the amount of gasLimit we need to provide to the spells and in its Catch section we will print the error which will give us the data variable in case any error occurs.
In our case, it is showing that the transaction has failed along with an error `execution reverted`.
But this time the error is quite understandable as it is providing us the condition which caused the error which in our case is `require(managerContract.count(address(this)) > 0, "no-vault-opened");`. Now, we can understand the error and work on solving it.