Skip to main content

3. Modify Live Contract and Simulate Transactions

Add a new event

In the GhostLogs IDE, select the chain and contract that you want to modify. Declare any new events you want to emit. Did the contract authors leave out crucial events? No problem. You can define your own.

Go beyond gasless events

Did you know that you can also create custom view functions?

Follow Along

Here is a link to the modified code for your reference: Uniswap X

DefineEvents

Emit Any Data

Edit the contract to emit your new event (or events!).

Before emitting events, you can do powerful things like make an external call to another contract. For example, read the Chainlink oracle feed price for an asset.

You can also read private variables in the contract and declare and call new view functions to do things like calculate the current debt for an account. This way you don't need to duplicate this logic in your ETL workflows since you can go direct to the source to output data just how you want it.

EmitEvents

Compile and Simulate Transactions

Before deploying your work for running a backfill job, you have the option to simulate your modifications against sample transactions (transactions are automatically determined by our backend, but you have the option to select your own) to see what effect your changes will have.

SimulateTxs