Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a way of visualizing transaction history #805

Closed
tmigone opened this issue Sep 11, 2024 · 0 comments · Fixed by #821
Closed

Add a way of visualizing transaction history #805

tmigone opened this issue Sep 11, 2024 · 0 comments · Fixed by #821
Assignees
Labels
status:ready This issue is ready to be worked on type:feature Fetaure request

Comments

@tmigone
Copy link

tmigone commented Sep 11, 2024

Describe the feature

Problem

Sometimes it's useful to have a human readable way of visualizing the "transaction log history" for a deployment.

Solution

In conversation with @alcuadrado he mentioned a good solution to avoid having to duplicate the data would be to add a subcommand to hardhat ignition that would parse the journal files and log to console the relevant bits. This new command could allow filtering the data based on the outputs but also it could be piped to a file or other unix tools for further processing.

In our case the data we would be interested in is:

  • timestamp
  • from and to addresses
  • tx hash
  • parameters
  • some form of human readable label that's associated with the action being taken (contract or module name for example)

As an example, this is what our custom deployment system logs when running a deployment:

[2024-09-09T19:44:26.629Z] > Deploying contract: GraphProxy
[2024-09-09T19:44:26.629Z]    = Sender: 0xACa94ef8bD5ffEE41947b4585a84BdA5a3d3DA6E
[2024-09-09T19:44:26.629Z]    = Params: [ 0xa2E3Aae2D21ee91F6Eeba955bc228513F452b328,0x34720e631A2C63E50b0B01f3DF4E94B21A24B6DC ]
[2024-09-09T19:44:26.629Z]    = TxHash: 0xffaa55ca48d9d00363d6d5405a97e9d71456ef9fbbd83332716ba82938f3576c
[2024-09-09T19:44:26.630Z]    = CreationCodeHash: 0x4e89f2d508c7fb36a48a2791a7dc187233ad7fec009ca84f1416a4aa648640af
[2024-09-09T19:44:26.630Z]    = RuntimeCodeHash: 0xea92401f476b5d9e7863f829cb1409d3b395c839cbf9e07286dd608ae129901b
[2024-09-09T19:44:26.630Z]    ✔ Transaction succeeded!
[2024-09-09T19:44:26.761Z] > Deploying contract: AllocationExchange
[2024-09-09T19:44:26.761Z]    = Sender: 0xACa94ef8bD5ffEE41947b4585a84BdA5a3d3DA6E
[2024-09-09T19:44:26.761Z]    = Params: [ 0xd23eD7B05448F007d7C810F48bd5fB363531E61a,0xef63884e6122af92030CE0fE18f732c826eB261a,0x3E5e9111Ae8eB78Fe1CC3bb8915d5D461F3Ef9A9,0xE11BA2b4D45Eaed5996Cd0823791E0C93114882d ]
[2024-09-09T19:44:26.761Z]    = TxHash: 0x918ce0dccf08d49836b8a013f9e9fd7f4f08b2958f2dd162dd9b06e4e844298e
[2024-09-09T19:44:26.763Z]    = CreationCodeHash: 0x3600c15b83507622be9f21892e1c183297542605c45bacdf03b2fa85ac59bba6
[2024-09-09T19:44:26.763Z]    = RuntimeCodeHash: 0x73b2c6034c03ed9b96ae6b64ad843ed55c9c33e6c4df1d321d1991e03c49a539
[2024-09-09T19:44:26.763Z]    ✔ Transaction succeeded!
...
[2024-09-09T19:44:26.775Z] > Sending transaction: GraphProxyAdmin.transferOwnership
[2024-09-09T19:44:26.775Z]    = Sender: 0xACa94ef8bD5ffEE41947b4585a84BdA5a3d3DA6E
[2024-09-09T19:44:26.775Z]    = Contract: 0x34720e631A2C63E50b0B01f3DF4E94B21A24B6DC
[2024-09-09T19:44:26.775Z]    = Params: [ 0x22d491Bde2303f2f43325b2108D26f1eAbA1e32b ]
[2024-09-09T19:44:26.775Z]    = TxHash: 0x54fe5338b2c5cd1869f4beb3ad554549a80ef6314ea8dc0569a5a81721eb3128
[2024-09-09T19:44:26.775Z]    ✔ Transaction succeeded!
[2024-09-09T19:44:26.785Z] > Sending transaction: Controller.setContractProxy
[2024-09-09T19:44:26.785Z]    = Sender: 0xACa94ef8bD5ffEE41947b4585a84BdA5a3d3DA6E
[2024-09-09T19:44:26.785Z]    = Contract: 0x81e2b9f4e408c2A0417CCE7eBecCB3aeDd4603E2
[2024-09-09T19:44:26.785Z]    = Params: [ 0xe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f,0xe2517eead1Bb7a34908336e6769a969C23535Ec7 ]
[2024-09-09T19:44:26.785Z]    = TxHash: 0x7431cd26284022f4eeb5bc5d048d27c7b13a628030080117aa5bed7e6d187224
[2024-09-09T19:44:26.786Z]    ✔ Transaction succeeded!

Search terms

journal, log

@kanej kanej moved this to Todo in Hardhat Ignition Sep 16, 2024
@kanej kanej added status:ready This issue is ready to be worked on type:feature Fetaure request and removed status:triaging labels Sep 16, 2024
@zoeyTM zoeyTM moved this from Todo to In Progress in Hardhat Ignition Sep 26, 2024
@zoeyTM zoeyTM moved this from In Progress to In Review in Hardhat Ignition Oct 8, 2024
@github-project-automation github-project-automation bot moved this from In Review to Done in Hardhat Ignition Oct 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status:ready This issue is ready to be worked on type:feature Fetaure request
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants