roboskel / rostune

BSD 3-Clause "New" or "Revised" License
5 stars 6 forks source link

rostune install package doesn't include built binaries #1

Open PaulBouchier opened 7 years ago

PaulBouchier commented 7 years ago

Thanks for the talk at ROSCON on rostune - it looks like an interesting package. I tried to install it with sudo apt install ros-kinetic-rostune. It installed the package, but what got installed did not include an executable program - so I couldn't run rosrun rostune rostune.

When I cloned the source & built it with catkin_make, it built the binaries and I can run rostune and get some interesting output on the output topics.

Here is what is in the released package. Note - no binaries. Perhaps you forgot to build something when you were doing the release?

dpkg-query -L ros-kinetic-rostune /. /opt /opt/ros /opt/ros/kinetic /opt/ros/kinetic/include /opt/ros/kinetic/include/rostune /opt/ros/kinetic/include/rostune/SingleNodeStats.h /opt/ros/kinetic/include/rostune/MultipleNodeStats.h /opt/ros/kinetic/include/rostune/MultipleTopicStats.h /opt/ros/kinetic/include/rostune/SingleTopicStats.h /opt/ros/kinetic/lib /opt/ros/kinetic/lib/python2.7 /opt/ros/kinetic/lib/python2.7/dist-packages /opt/ros/kinetic/lib/python2.7/dist-packages/rostune /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/_SingleNodeStats.pyc /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/_MultipleNodeStats.pyc /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/_SingleTopicStats.pyc /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/_MultipleNodeStats.py /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/_MultipleTopicStats.py /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/init.py /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/_SingleNodeStats.py /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/init.pyc /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/_SingleTopicStats.py /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/msg/_MultipleTopicStats.pyc /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/init.py /opt/ros/kinetic/lib/python2.7/dist-packages/rostune/init.pyc /opt/ros/kinetic/lib/pkgconfig /opt/ros/kinetic/lib/pkgconfig/rostune.pc /opt/ros/kinetic/share /opt/ros/kinetic/share/gennodejs /opt/ros/kinetic/share/gennodejs/ros /opt/ros/kinetic/share/gennodejs/ros/rostune /opt/ros/kinetic/share/gennodejs/ros/rostune/_index.js /opt/ros/kinetic/share/gennodejs/ros/rostune/msg /opt/ros/kinetic/share/gennodejs/ros/rostune/msg/_index.js /opt/ros/kinetic/share/gennodejs/ros/rostune/msg/SingleNodeStats.js /opt/ros/kinetic/share/gennodejs/ros/rostune/msg/MultipleNodeStats.js /opt/ros/kinetic/share/gennodejs/ros/rostune/msg/MultipleTopicStats.js /opt/ros/kinetic/share/gennodejs/ros/rostune/msg/SingleTopicStats.js /opt/ros/kinetic/share/roseus /opt/ros/kinetic/share/roseus/ros /opt/ros/kinetic/share/roseus/ros/rostune /opt/ros/kinetic/share/roseus/ros/rostune/msg /opt/ros/kinetic/share/roseus/ros/rostune/msg/SingleNodeStats.l /opt/ros/kinetic/share/roseus/ros/rostune/msg/MultipleTopicStats.l /opt/ros/kinetic/share/roseus/ros/rostune/msg/SingleTopicStats.l /opt/ros/kinetic/share/roseus/ros/rostune/msg/MultipleNodeStats.l /opt/ros/kinetic/share/roseus/ros/rostune/manifest.l /opt/ros/kinetic/share/rostune /opt/ros/kinetic/share/rostune/msg /opt/ros/kinetic/share/rostune/msg/MultipleTopicStats.msg /opt/ros/kinetic/share/rostune/msg/MultipleNodeStats.msg /opt/ros/kinetic/share/rostune/msg/SingleNodeStats.msg /opt/ros/kinetic/share/rostune/msg/SingleTopicStats.msg /opt/ros/kinetic/share/rostune/cmake /opt/ros/kinetic/share/rostune/cmake/rostuneConfig.cmake /opt/ros/kinetic/share/rostune/cmake/rostune-msg-extras.cmake /opt/ros/kinetic/share/rostune/cmake/rostune-msg-paths.cmake /opt/ros/kinetic/share/rostune/cmake/rostuneConfig-version.cmake /opt/ros/kinetic/share/rostune/package.xml /opt/ros/kinetic/share/common-lisp /opt/ros/kinetic/share/common-lisp/ros /opt/ros/kinetic/share/common-lisp/ros/rostune /opt/ros/kinetic/share/common-lisp/ros/rostune/msg /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/_package_SingleTopicStats.lisp /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/SingleNodeStats.lisp /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/_package.lisp /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/_package_MultipleNodeStats.lisp /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/SingleTopicStats.lisp /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/_package_SingleNodeStats.lisp /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/_package_MultipleTopicStats.lisp /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/rostune-msg.asd /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/MultipleNodeStats.lisp /opt/ros/kinetic/share/common-lisp/ros/rostune/msg/MultipleTopicStats.lisp /usr /usr/share /usr/share/doc /usr/share/doc/ros-kinetic-rostune /usr/share/doc/ros-kinetic-rostune/changelog.Debian.gz

PaulBouchier commented 7 years ago

Note: Plotjuggler has the same problem.

gstavrinos commented 7 years ago

Hey Paul, thanks for your kind words and also for taking the time to file this issue.

I just tested installing rostune using the apt repo in a ROS Indigo machine, and everything is working fine. Same for PlotJuggler.

At that point, I was pretty sure that something was wrong with your machine, but took the time to try it on my other ROS Kinetic machine, and apparently you are right. Something is wrong with the kinetic release. I will look into it, and close the issue when this is fixed. (PlotJuggler is working fine from Kinetic too. Please note that in order to run it you have to type rosrun plotjuggler PlotJuggler)

Thanks again,

George

YacongWang commented 6 years ago

Hello George, I want to use the rostune to find the CPU load of ROS nodes, and what should I do to use the rostune? I have launched the rostune and streamed the node_stats, but I don't know which one under node_stats should be used? total_all-memory, taotal_cpu_time, or total_tesident_memory?Thanks for your help.

gstavrinos commented 6 years ago

Hello Yacong, thank you for your question. I think it would be better to open your own issue so that other people can easily find an answer to your question. Anyway, I think that it would be best to use the cputime_percentage for each node and total_cputime_percentage for all nodes. Keep in mind that in multicore systems this percentage will exceed 100%, since each node reports a percentage for a diferent core.

YacongWang commented 6 years ago

Thanks for your help. It works for me.