Closed MCFurry closed 3 years ago
Thanks for the PR, also for providing the test launch file 👍
The changes look good to me. I'm on vacation for the next week, so it'll be a few days before I can properly test this.
Alright, enjoy your holiday!
One issue though we found in our pipelines, is that the extra rosmon-* node-arguments in a launch-file are not roslaunch 'compatible'.
I.e. when testing my test launchfile here using:
mon launch rosmon_core respawns.launch
No-one complains, but when doing the same with:
roslaunch rosmon_core respawns.launch
We get a:
WARNING: [~/ros/melodic/system/src/rosmon/rosmon_core/test/respawns.launch] unknown <node> attribute 'rosmon-restart-warn-threshold'
But the same holds of course for the already present rosmon-cpu-limit
and rosmon-memory-limit
arguments.
Of course, we are in fact creating mon-launch files here, not ROS-launch files and except for the warning the actual launching with roslaunch still succeeds. What doesn't, is the standard roslaunch check our pipelines execute:
rosrun roslaunch roslaunch-check launch
Would it make sense to create a rosmon specific monlaunch-check script, that knows about these arguments? So it would largely be identical to roslaunch-check but with some rosmon specific tweaks?
Just a quick comment: You can already use mon launch --benchmark my_launch_file.launch
(maybe it's not a good name) to check if a launch file is loadable by rosmon.
Regarding roslaunch issuing a warning: I cannot think of a way to prevent that. But at least it's only a warning ;)
Ahh that's good to know! We might switch our pipeline checker to use that instead when using rosmon in a project. Thx!
Merged in a8b25058027e6ee9ca47a3ddf6f3473c29a46237 with some minor additions. I also added the new attribute to the documentation at https://wiki.ros.org/rosmon/XML.
Thanks for your contribution :+1:
Thank you for the review and merge! Are you planning on a new release of rosmon as well? (We might even make the next sync?)
Since I just merged #148 which is a larger technical change with potential side effects, I'd like to leave things here in master for a while to ensure proper testing before doing a new release.
Ahh I see, then we'll go from source for the time being instead of the apt-package. Since we're using rosmon pretty much daily, anything we can help with to speed up testing the current master?
Resolves #145 by providing a number of restarts threshold per node via ROS-launch arguments
I also included a small test-launch-file for a manual test.