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

Make the Hermes CLI output less verbose #2179

Open
adizere opened this issue May 4, 2022 · 0 comments
Open

Make the Hermes CLI output less verbose #2179

adizere opened this issue May 4, 2022 · 0 comments
Labels
I: CLI Internal: related to the relayer's CLI O: usability Objective: cause to improve the user experience (UX) and ease using the product
Milestone

Comments

@adizere
Copy link
Member

adizere commented May 4, 2022

Problem

Currently all Hermes interactive CLIs (i.e., everything except for the start CLI) relies on the Conclude module to intermediate the output. This module has two modes:

  1. if --json is specified, then the module will ensure all CLI output is serialized in JSON
  2. if --json is not specified (the default), then the module will serialize everything via its Debug implemenetation.

We already noticed that the Debug impl are too verbose (eg #1559) and in PR #2167 we made additional modifications to override the Debug impl and make it less verbose for some packet events.

Potential solution

We should continue that work described above and refactor Conclude so that by default it no longer works with Debug but instead with Display implementations, making the output more compact and easier to understand for developers. As a side note, most operators do not use JSON output, so this request is not only for developers but also relayer operators.

Original discussion

Not sure we need the Debug impl here. I removed the derive since it was not being used for anything.

We can re-add the derive(Debug) later on if needed. But I would actually prefer to make Output work with Display instead of Debug. The reason is that with Debug the output is too verbose and it's difficult to parse the logs, so we're forced to override of impl Debug for X to make output more concise (like we do in this PR and in here #1944). Going with Display instead of Debug will be better, but that would require some bigger refactoring (which we can do with #594 if we see the need).

Originally posted by @adizere in #2167 (comment)

@adizere adizere added this to the v1.0.0 milestone May 4, 2022
@adizere adizere moved this to Backlog in IBC-rs: the road to v1 May 4, 2022
@adizere adizere added I: CLI Internal: related to the relayer's CLI O: usability Objective: cause to improve the user experience (UX) and ease using the product P-medium labels May 4, 2022
@adizere adizere moved this from Backlog to Needs PR in IBC-rs: the road to v1 May 9, 2022
@adizere adizere moved this from Needs PR to Backlog in IBC-rs: the road to v1 May 24, 2022
@adizere adizere modified the milestones: v1.0.0, v2 Jun 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I: CLI Internal: related to the relayer's CLI O: usability Objective: cause to improve the user experience (UX) and ease using the product
Projects
None yet
Development

No branches or pull requests

2 participants