Git Product home page Git Product logo

Comments (7)

christophebedard avatar christophebedard commented on June 23, 2024

Hi! Unfortunately, rclpy is not instrumented; you can only trace rclcpp.

Lttng tools is too weak for python.

What do you mean?

from ros2_tracing.

christophebedard avatar christophebedard commented on June 23, 2024

Since this has been requested many times, I've opened an issue as a feature request: #15.

from ros2_tracing.

Binohow avatar Binohow commented on June 23, 2024

Hi! Unfortunately, rclpy is not instrumented; you can only trace rclcpp.

Lttng tools is too weak for python.

What do you mean?

Thanks for your answer! Can we use Lttng tracer to implement this feature? I am very interested in how to implement this function. I want to participate in this meaning work, but I don't where to start. Which tracer should I choose first?

Hello, I want to know if ros2_tracing support to trace rclpy? Lttng tools is too weak for python.

from ros2_tracing.

christophebedard avatar christophebedard commented on June 23, 2024

LTTng can trace Python applications: https://lttng.org/docs/v2.13/#doc-python-application

from ros2_tracing.

vtran5 avatar vtran5 commented on June 23, 2024

Hello, maybe a related question, can ros2_tracing support rclc? If not, is there any guide on how to implement it myself? From the design document, I understand that I would need to manually add the tracepoint in rclc following the 6-step guide in the Adding instrumentation. Is there anything else that I need to do or considered? Do I need to add all the equivalent TRACEPOINT in rclcpp to rclc in order for it to work properly?

from ros2_tracing.

christophebedard avatar christophebedard commented on June 23, 2024

It could, but it would require a bit of work. The proper way would be to design a new set of instrumentation points for rclc, since the rclcpp instrumentation might not necessarily all apply to rclc (and vice versa). Once the instrumentation is defined, you can indeed go through the Adding instrumentation section of the ros2_tracing design document to actually create the tracepoints.

Like I said, that would be the "proper" way. Also, I'm not sure if those tracepoints should be here in ros2_tracing/tracetools, since rclc is more of a separate client library.

However, you could try to just re-use the existing rclcpp tracepoints by adding them to rclc as if it was rclcpp. I did it a couple years ago with the main rclcpp tracepoints, so it might need to be updated, but it can be a good starting point: christophebedard/rclc@090a0cb. Someone also did that for rclpy: #15 (comment). This is more of a hack, though, as you can see from my comments in that rclc commit. You would probably need to process trace data coming from rclc differently compared to trace data coming from rclcpp.

from ros2_tracing.

christophebedard avatar christophebedard commented on June 23, 2024

Since this issue was mostly just a question, and since I've opened a standalone issue for the actual feature request (#15), I'll close this.

from ros2_tracing.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.