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 cli option `--showconfig` #2708

Closed
konradkonrad opened this Issue Oct 8, 2018 · 1 comment

Comments

Projects
None yet
3 participants
@konradkonrad
Collaborator

konradkonrad commented Oct 8, 2018

Abstract

We should add a cli flag raiden [OPTIONS...] [ARGS...] --showconfig. This will dump all configuration values in a standardized format.

Motivation

Raiden has several configuration items that change its behavior. These may come from different places, i.e.:

  • config.toml
  • settings.py
  • constants.py
  • commandline flags

When debugging a client it should be easy to query those values into a standardized format.

Since some values can depend on the client's runtime environment, I propose to use a flag to the main raiden command, instead of a raiden showconfig subcommand.

Specification

  • Add a cli option --showconfig (defaults to False)
  • Ensure --showconfig requests all potentially environment specific flags that may change behavior (i.e. if there are different confirmation block settings for different --network-id or --network-type values).
  • Since we don't have a --version flag, this could also include the client, raiden-contracts and python version. Also include raiden version output.
  • Format the output in reasonable subsections, so that it is easy to follow where a specific value comes from/belongs to, i.e.
# CONFIG
# SETTINGS
# CONSTANTS
# FLAGS
# VERSIONS

Related

#2707

@konradkonrad

This comment has been minimized.

Collaborator

konradkonrad commented Oct 8, 2018

Questions:

  • Should --showconfig output be included in DEBUG level logging by default?
  • How early in the start up process can this be generated? (i.e. do we need to wait for account selection/unlock?)
  • Are there any values that should be redacted by default (i.e. user account addresses)?
  • Is it possible to output to stdout without too much interference from other startup messages? Otherwise think about dumping to a certain file.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment