[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [tracecompass-dev] UI for external analyses
|
On 02/19/2016 02:59 PM, Alexandre Montplaisir wrote:
On 2016-02-18 11:01 AM, Bernd Hufmann wrote:
Hi Alex
Glad to see that this is being productified for Trace Compass. See
below for some comments.
On 02/15/2016 05:37 PM, Alexandre Montplaisir wrote:
[...]
In my current prototype, I just display all available external
analyses under the trace, just like standard analyses are (see
attached screenshot). They can then be invoked by right-click on
them and choosing "Run External Analysis" from the contextual menu.
The results are displayed in non-singleton views, one per table of
output of the analysis.
I think it's not ideal to show them on the same level as "standard"
analysis. One reason is that they are different (as you already
described). Another reason is that the list might get very long.
Would it be a valid option to add a separate node under the trace for
external analysis and have the list there. By doing that users could
select one and right-click on one and run it. The advantage of doing
this is that you can provide properties for the properties view that
gives some details about the analysis.
Alternatively, you could have single entry in the tree under the
trace. When user right-click on this element a context sensitive menu
could open and the user can select the analysis to run. However, this
approach won't give you the possibility to show the details of the
analysis in the properties view. You would have an alternative way
for the displaying description/details of external analysis.
Thinking a bit more about it, one thing I like about the current
prototype, and just having the analyses listed under the trace in
general, is that it helps in discoverability. If it's not immediately
visible, the user might never find out the option exists.
But as you say, it should be separated from "normal" analyses. I kinda
like the idea of a separate sub-tree. It could be something like:
mytrace
+- Automatic analyses
| +- Kernel analysis
| +- CPU Usage analysis
| +- etc.
+- On-demand analyses
+- LTTng-Analyses CPU Top
+- LTTng-Analyses IO Top
+- Critical Path analysis (eventually!)
+- etc.
something like that?
Not clear yet how you will distinguish between Automatic and On-demand.
Are automatic analyses analyses that are marked as automatic in the
analysis plug-in extension and are run when opening a trace? And the
On-demad analyses are all analyses that are either external (e.g. LTTng
Analysis) or are "normal" analyses that are not run automatically when
opening a trace?
If yes (to both questions) then your picture on top is incorrect. The
CPU Usage analysis is On-Demand. It is only executed when the CPU Usage
view is opened or if the CPU usage is already open when a trace is opened.
And of course, the Properties view would be a nice place to put extra
information about each analysis.
Yes, would be very nice. It's about user experience.
This is not ideal, because it's confusing which analysis are
supposed to be run manually, and which are just there for listing
their outputs. A potential alternative would be to have a new "Run
External Analysis" option, from the context menu of the *trace*,
which would open a dialog to handle all available external analyses.
Also, we'd probably need a new name instead of "External Analysis".
These may not even be external eventually, they could be defined in
Java, shipped with Trace Compass, and be able to be called on demand
by the user.
Good point. External doesn't fit.
Yes, I'm warning up to the idea to "Automatic analysis" vs. "On-demand
analysis". Other ideas?
Even in the current prototype, the analysis are defined in Java. Since
there is no auto-discovery yet, each available analysis has to be
defined manually.
Thoughts?
One thing is needed a way to manage the external analysis (I mean the
ones that actually external). I'm thinking of a dialog like the
"Manage Custom Parsers" or "Manage XML analyses" where users can
import/export/delete/edit external analysis.
Indeed, it would be great to have "Data-driven on-demand analyses" no? :)
Yes, I think that's the big plus to allow the integration between
command-line analyses and Trace Compass.
But for now, as mentioned above, there needs to be a Java shim for
each available analysis, with a corresponding extension point entry. I
would see data-driven-ness as a future step.
I think, it's quite essential to have the data-driven aspect right from
the beginning and not having it as a future step. The integration
between command-line analyses and Trace Compass is meant for users to
easily use their custom scripts together with Trace Compass without
having to write Java. Having to write a Java shim for each available
analysis, the user would not do that. They would rather write the
analysis in Java to begin with or stick to the command-line.
Best Regards
Bernd
Cheers,
Alex
Thanks,
Alex
[1] https://github.com/lttng/lttng-analyses
_______________________________________________
tracecompass-dev mailing list
tracecompass-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tracecompass-dev