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

[5pt] Improve thamos output usability #1118

Closed
2 tasks
Tracked by #417
codificat opened this issue Jun 2, 2022 · 6 comments · Fixed by #1143
Closed
2 tasks
Tracked by #417

[5pt] Improve thamos output usability #1118

codificat opened this issue Jun 2, 2022 · 6 comments · Fixed by #1143
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/user-experience Issues or PRs related to the User Experience of our Services, Tools, and Libraries. triage/accepted Indicates an issue or PR is ready to be actively worked on.

Comments

@codificat
Copy link
Member

codificat commented Jun 2, 2022

Problem statement

The current output of thamos advise can be quite scary, with a lot of information.

For example, running an advice on the ps-nlp-pytorch stack produces almost 7000 lines of output in the standard output (!), plus 6 lines on stderr:

$ thamos advise --no-user-stack --force --no-static-analysis -r ps-nlp-pytorch > /tmp/advise.out 
2022-06-02 13:39:16,254 [39340] WARNING  thamos: Development dependencies will not be considered during the resolution process - see https://thoth-station.ninja/j/no_dev
2022-06-02 13:39:16,254 [39340] INFO     thamos.lib: Using Pipenv files to manage dependencies located in '/home/pep/github/thoth/ps-nlp/overlays/ps-nlp-pytorch'
2022-06-02 13:39:16,254 [39340] INFO     thamos.lib: Submitting Pipfile.lock as a base for user's stack scoring - see https://thoth-station.ninja/j/user_stack
2022-06-02 13:39:16,840 [39340] INFO     thamos.lib: Using 'latest' recommendation type - see https://thoth-station.ninja/recommendation-types/
2022-06-02 13:39:16,840 [39340] WARNING  thamos.lib: The user stack found in the lock file will not be supplied as requested
2022-06-02 13:39:17,907 [39340] INFO     thamos.lib: Successfully submitted advise analysis 'adviser-220602113917-78f5020cd764a885' to 'https://khemenu.thoth-station.ninja/api/v1'

$ grep -v 'Waiting for response from Thoth' /tmp/advise.out | wc -l
6971

This amount of output is very hard to consume and digest.

Can we make it better? Simpler? Easier to consume?

High-level Goals

The output of thamos advise is comparable, in complexity, to e.g. pipenv lock.

Then, there are ways to obtain all the details behind the received advice, in an easy to consume way.

Proposal description

  • To have thamos advise provide just the essential amount of output to let the user know the main outcome.
    • One of the output lines mentions how to get more information
  • An option to obtain more details of the advice. For example, a new thamos explain command.
  • Results are clustered / categorized for easy understanding and/or filtering. This is, beyond the severity level (INFO/WARNING/ERROR), there is the possibility of getting details about specific types of justifications or recommendations. For example, thamos explain --security

The output should more or less match the capabilities of the search UI.

Additional context

Acceptance Criteria

  • The output of thamos advise can be made to contain only a few essential lines (new option to hide full details)
  • Additional thamos command/option to enable easy ways to obtain all the advice details
@codificat
Copy link
Member Author

Related work here includes "integration" with the search UI, and/or references to documentation, e.g.

/sig user-experience
/kind feature

@sesheta sesheta added sig/user-experience Issues or PRs related to the User Experience of our Services, Tools, and Libraries. kind/feature Categorizes issue or PR as related to a new feature. labels Jun 2, 2022
@goern
Copy link
Member

goern commented Jun 23, 2022

/priority important-soon

@sesheta sesheta added the priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. label Jun 23, 2022
@codificat codificat changed the title Improve thamos output usability [5pt] Improve thamos output usability Jun 27, 2022
@codificat
Copy link
Member Author

/triage accepted

@sesheta sesheta added the triage/accepted Indicates an issue or PR is ready to be actively worked on. label Jun 27, 2022
@Gkrumbach07
Copy link
Member

/lifecycle active

@codificat
Copy link
Member Author

/assign @Gkrumbach07

@sesheta
Copy link
Member

sesheta commented Jul 12, 2022

@Gkrumbach07: Closing this issue.

In response to this:

/close
confirmed working in latest release

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/user-experience Issues or PRs related to the User Experience of our Services, Tools, and Libraries. triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants