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

Filter reports by source #206

Open
djbpitt opened this issue Sep 6, 2022 · 2 comments
Open

Filter reports by source #206

djbpitt opened this issue Sep 6, 2022 · 2 comments

Comments

@djbpitt
Copy link

djbpitt commented Sep 6, 2022

This is a request for a new feature in Monex.

Is your feature request related to a problem? Please describe.

I'm always frustrated when I can't easily focus on my own code in Monex profiling reports because results that concern the code that I wrote are intermingled with results produced by Monex itself.

Describe the solution you'd like
A clear and concise description of what you want to happen.

When I look at any of the three reporting tabs in Monex (queries, functions, index usage) the leftmost column is always the source, and it usually contains a path to some resource within the database (or occasionally just a reference to string with an id number). Those sources, at least in the types of queries I run, seem to be primarily of three types:

  1. My own app, e.g., /db/apps/app-name/…
  2. Monex, e.g., /db/apps/monex/…
  3. Standard eXist-db library files, e.g. /Users/userid/Library/Application Support/…, or other resources (e.g., String)

If I’ve understood correctly, Monex knows about these sources because if it didn't it couldn’t list them. I care about # 1, I don’t care about # 2, and I understand how the ultimate source of the operations that show up in # 3 might be ambiguous, since either my own app or Monex might call on standard library resources.

If I could tell Monex to hide # 2 and show me the others, or to show me only # 1, that would be an improvement over having to read around a mixture of the three.

Describe alternatives you've considered

Disabling tracing, clearing, enabling tracing, running, disabling tracing again, and refreshing seems to produce the cleanest view, but it still intermingles results that I don't care about with results that I do care about (at the extremes, it intermingles results produced by Monex itself with results produced my my own code). Monex cannot know what I care about, of course, but since it knows about sources, if it supported dynamic filtering of sources during viewing I could configure what was shown and what was hidden. For example, it might let me enter "/db/apps/app-name" and show me only lines in the reports where the source value begins with that string.

Additional context

I discussed this issue briefly with @line-o in the eXist-db Slack workspace (#community channel) on 2022-09-06. @line-o alerted me that "I am not sure monex is able to determine the source of each running process". While I understand that the ultimate source may not be accessible (for example, whether it is Monex or my app that starts a process in the standard eXist-db library resources, which is my # 3, above), support for user control over filtering results according to the source as Monex already reports it would be a substantial improvement in usability over the current static reporting.

@line-o
Copy link
Member

line-o commented Sep 7, 2022

I removed the template placeholder text from the description

@duncdrum
Copy link
Contributor

duncdrum commented Sep 7, 2022

@djbpitt at least for index tare is already there to help #34

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants