[PATCH] Basic Support for Trace Compass

Chris Johns chrisj at rtems.org
Fri Jun 7 03:40:50 UTC 2019


Thank you for switching to PlantUML.

On 7/6/19 2:45 am, Ravindra Meena wrote:
> ---
>  images/user/event-recording-trace.png  | Bin 0 -> 7784 bytes
>  images/user/event-recording-trace.puml |  12 ++++++++++
>  user/tracing/eventrecording.rst        |  39 ++++++++++++++++++++++++++++++++-
>  3 files changed, 50 insertions(+), 1 deletion(-)
>  create mode 100644 images/user/event-recording-trace.png
>  create mode 100644 images/user/event-recording-trace.puml
> 
> diff --git a/images/user/event-recording-trace.png b/images/user/event-recording-trace.png
> new file mode 100644
> index 0000000000000000000000000000000000000000..38dbece0247afad18419c8999289e6aad613e578
> GIT binary patch
> literal 7784
> zcmZvB1yodR*ES^}NJ~odNJ%3th{%9~bmvHSBOTJ+NJ)1i(lHDmjes<QbT<q&;4pj#
> jriYy~kc!;?9m;Q+1QTo8$~s`r7v()jQMy{{W8nV)j%Kwe
> 
> literal 0
> HcmV?d00001
> 
> diff --git a/images/user/event-recording-trace.puml b/images/user/event-recording-trace.puml
> new file mode 100644
> index 0000000..f41f344
> --- /dev/null
> +++ b/images/user/event-recording-trace.puml
> @@ -0,0 +1,12 @@
> + at startuml
> +
> +rectangle Host
> +rectangle "Target/QEMU Target" as target
> +rectangle "Trace Compass" as tracecompass
> +rectangle "Babeltrace" as babeltrace
> +Host --> target : 1
> +target --> Host : 2
> +Host --> tracecompass : 3
> +Host --> babeltrace : 3

I understand the numbers relate to the text and the steps but I think it would
be better to have a text label in the picture.

> +
> + at enduml
> diff --git a/user/tracing/eventrecording.rst b/user/tracing/eventrecording.rst
> index d799774..25d6706 100644
> --- a/user/tracing/eventrecording.rst
> +++ b/user/tracing/eventrecording.rst
> @@ -6,7 +6,7 @@
>  .. _EventRecording:
>  
>  Event Recording
> -===============
> +***************
>  
>  The `event recording` support focuses on the recording of high frequency
>  events such as
> @@ -56,3 +56,40 @@ started by :c:func:`rtems_record_start_server` via a TCP connection.
>  
>  On the host computer you may use the command line tool :file:`rtems-record` to
>  get recorded events from the record server running on the target system.
> +
> +.. _tracecompass:
> +
> +Basic Support for Trace Compass
> +===============================

I suggest using ...

Trace Compass
=============

We hope in time the support is not basic. :)

> +
> +`Trace Compass <https://www.eclipse.org/tracecompass/>`_ is a software developed by 

This line is too long. Please read ...

 https://git.rtems.org/rtems-docs/tree/README.txt#n393

> +Eclipse to analyse and display trace data graphically. Trace data can be gathered from 
> +RTEMS applications via various means, for example:
> +
> +- :ref:`RTEMS Trace Linker <TraceLinker>`
> +- :ref:`RTEMS Capture Engine <CaptureEngine>`
> +- :ref:`RTEMS Event Recording <EventRecording>`
> +
> +Event Recording infrastructure is used to analyse and display some basic information.
> +The basic information is defined by the Linux kernel trace support (lttng) and may 
> +include CPU Usage, IRQ Analysis(IRQ Statistics, IRQ Table etc.), Linux Kernel(Control Flow, 
> +Resources etc.)

Linux kernel?

> +
> +Advanced support for Trace Compass could include dynamic memory traces, stack usage, network packet flow, etc.

"Could include"? A user manual so it should reflect what we have and what user
can find.

> +
> +This scheme of tracing goes through the flow of events described in a subsequent flowchart. Please ser

?

> +this requires the environment setup of `rtems-libbsd <https://github.com/RTEMS/rtems-libbsd>`_  and `rtems-tools <https://github.com/RTEMS/rtems-tools>`_:
> +
> +Step 1: The Qemu simulator is used to run a LibBSD based application and connect it to a virtual network on host.
> +This requires to create a TAP virtual Ethernet interface for this.

Or VDE.

> The Qemu command line is used for board support package, e.g the arm/xilinx_zynq_a9_qemu BSP etc.

etc ?

> +The host can be connected to target via telnet.

MacOS does not ship with telnet any more.

> +
> +Step 2: On the host computer the command line tool rtems-record can be used to get recorded events from the record server running on the target system. 
> +Recorded events can be sent to a host computer with a very simple record server started by rtems_record_start_server() via a TCP connection.
> +
> +Step 3: The trace data received at host from QEMU target is converted into CTF. Since, Babeltrace and Trace Compass are two
> +compatible software which can read and write CTF. The converted CTF ca be passed to any of these softwares.
> +
> +.. figure:: ../../images/user/event-recording-trace.png
> +  :align: center
> +  :width: 75%
> 

Should we have something working before we make any additions to the user manual?

Chris



More information about the devel mailing list