christophebedard / tracecompass_ros_testcases

Test cases package for Trace Compass Incubator ROS plugin
GNU General Public License v3.0
0 stars 1 forks source link

Cannot find and install tracecompass ros incubator. #2

Closed ZhenshengLee closed 3 years ago

ZhenshengLee commented 3 years ago

Hi @christophebedard ,

I am trying to test your work about tracing with ros1, and find ros incubator for tracecompass only in source in https://git.eclipse.org/c/tracecompass.incubator/org.eclipse.tracecompass.incubator.git/tree/tracetypes/org.eclipse.tracecompass.incubator.ros.core

I cannot find a released jar in https://download.eclipse.org/tracecompass.incubator/stable-7.0/repository/plugins/

according to your blog, this incubator shall be installed easily through tracecompass GUI.

I found it hard to give a trace for callback duration without this incubator.

Could you give this a check?

Thanks.

Edit: mvn clean install -Dmaven.test.skip=true stuck following https://github.com/tracecompass/tracecompass-incubator

christophebedard commented 3 years ago

To install the Trace Compass Incubator, you need to download/install Trace Compass, e.g., from the main download link here: https://www.eclipse.org/tracecompass/

according to your blog, this incubator shall be installed easily through tracecompass GUI.

Yes, if you download Trace Compass as a standalone application (see above), you can install the elements/features from the Incubator that you want: https://archive.eclipse.org/tracecompass/doc/stable/org.eclipse.tracecompass.rcp.doc.user/Trace-Compass-Incubator.html

mvn clean install -Dmaven.test.skip=true stuck following tracecompass/tracecompass-incubator

You could build Trace Compass + the Incubator, but that's not the easiest option. You would need to properly set up a development environment: https://wiki.eclipse.org/Trace_Compass/Development_Environment_Setup. So I'd recommend downloading the standalone Trace Compass application and installing the ROS (1) feature from the Incubator through the GUI.

I found it hard to give a trace for callback duration without this incubator.

This work for ROS 1 doesn't show callback durations like ros2_tracing and tracetools_analysis do. It only does what's described here: https://christophebedard.com/ros-tracing-message-flow/. And it's mostly just a proof of concept. It makes a lot of assumptions and might not work correctly for traces of real use-cases (see the "future work" section of the blog post).

I'll start working on some Trace Compass analyses/visualizations for ROS 2 soon, but currently there's nothing.

ZhenshengLee commented 3 years ago

Thanks for your reply.

Incubator that you want: https://archive.eclipse.org/tracecompass/doc/stable/org.eclipse.tracecompass.rcp.doc.user/Trace-Compass-Incubator.html

I did use the tracecompass eclipse GUI, but there is no result when I search the feature with keywork "ros".

development environment: https://wiki.eclipse.org/Trace_Compass/Development_Environment_Setup. So I'd recommend downloading the standalone Trace Compass application and installing the ROS (1) feature from the Incubator through the GUI.

It is tough for me to handle such a java project, even cannot find the output directory of plugin.

This work for ROS 1 doesn't show callback durations like ros2_tracing and tracetools_analysis do. It only does what's described here: https://christophebedard.com/ros-tracing-message-flow/. And it's mostly just a proof of concep

With the lttng event of roscpp:subscriber_callback_start and roscpp:subscriber_callback_end of certain topic, I can calculate the callback duration

I think babeltrace and a shell script with regexp is enough to get callback duration. Would you agree with that?

christophebedard commented 3 years ago

I did use the tracecompass eclipse GUI, but there is no result when I search the feature with keywork "ros".

You're right, it's not there. Even when clicking on "Manage...", enabling "Trace Compass Incubator", and clicking "Apply and Close". Not sure why!

With the lttng event of roscpp:subscriber_callback_start and roscpp:subscriber_callback_end of certain topic, I can calculate the callback duration

I think babeltrace and a shell script with regexp is enough to get callback duration. Would you agree with that?

yes that would work! Especially if you only want to try it out.