Closed h-suzuki-isp closed 3 months ago
@h-suzuki-isp thanks for the PRs. should we also add TRACETOOLS_TRACEPOINT
to https://github.com/ros2/rmw_connextdds accordingly?
@fujitatomoya Thank you for your review. I'm not fluent in English, so I apologize if my message wasn't clear.
thanks for the PRs. should we also add TRACETOOLS_TRACEPOINT to https://github.com/ros2/rmw_connextdds accordingly?
If Connext DDS is the DDS officially supported by ROS 2, I believe it's appropriate to add tracepoints to rmw_connextdds as well. Therefore, I've created a pull request for rmw_connextdds as follows. https://github.com/ros2/rmw_connextdds/pull/145 Since rmw_publish already seemed to be added, I only added rmw_take. I haven't delved into rmw_connextdds in detail. so I'm not confident about the implementation, but it would probably be like this.
If Connext DDS is the DDS officially supported by ROS 2
yes it is, https://github.com/ros2/ros2/blob/30e9231f04d6e971de4d9bcc3cc98733f8a89d23/ros2.repos#L302-L305
Thank you for the PR, this is really useful! It would be really great if you could add some tests to test_tracetools
to cover this new instrumentation:
test_subscription.py
but for a generic subscription
test_pub_sub.py
but for a generic publisher and a generic subscription
*_publish
and *_take
instrumentation is valid for serialized messages (i.e., we can track messages from end to end)You would probably need to create copies of the test_ping
& test_pong
nodes that use generic subscriptions/publishers instead of normal subscriptions/publishers.
@christophebedard Thank you for your review and explanation about test_tracetools
.
Based on this, I have created following PR.
https://github.com/ros2/ros2_tracing/pull/97
However, the CI is still failing, so I am investigating the cause.
@christophebedard I'd like you to review this. The reason CI is failing is because it's not using the fixed branch, but local tests are passing.
This pull request has been mentioned on ROS Discourse. There might be relevant details there:
https://discourse.ros.org/t/ros-2-jazzy-jalisco-released/37862/9
Hi, I'm developed member of CARET for real-time analysis using ros2tracing.
In communication through GenericPublisher/Subscription, message tracking was not possible due to a lack of trace data. In this PR, added trace points to the GenericPublisher and GenericSubscription.
GenericPublisher I have added the following trace points.
GenericSubscription There was a recent PR that made
create_generic_subscription
go through AnySubscriptionCallback. This change causedcallback
to be captured by the lambda, resulting in it being copied andcallback
address was changed. In this case, the addresses of trace points outputed at initialization and runtime were different. Therefore, I modified to ensure that they have the samecallback
address . And, I have added the following trace points.Additionally, with these changes, I submitted a PR to the following repository.