Skip to content

Infra

InfraBase #

infrastructure base class.

Lttng #

Bases: InfraBase

Lttng data container class.

This class is a singleton in order to retain information. The main processing is done by LttngInfo and RecordsSource.

compose_callback_records() #

Compose callback records of all communications in one records.

Returns:

Type Description
RecordsInterface

Columns

  • callback_start_timestamp
  • callback_end_timestamp
  • callback_object

compose_intra_proc_comm_records() #

Compose intra process communication records of all communications in one records.

Returns:

Type Description
RecordsInterface

Columns

  • tid
  • callback_object
  • callback_start_timestamp
  • publisher_handle
  • rclcpp_publish_timestamp
  • message_timestamp

compose_path_beginning_records() #

Compose callback records.

Used to evaluate the beginning node of a path.

Returns:

Type Description
RecordsInterface

Columns

  • callback_start_timestamp
  • rclcpp_publish_timestamp
  • callback_object
  • publisher_handle

get_callback_groups(node) #

Get callback group information.

Returns:

Type Description
Sequence[CallbackGroupValue]

get_executors() #

Get executors information.

Returns:

Type Description
Sequence[ExecutorValue]

get_node_names_and_cb_symbols(callback_group_id) #

Get node names and callback symbols from callback group id.

Returns:

Type Description
Sequence[tuple[str | None, str | None]]

node names and callback symbols. tuple structure: (node_name, callback_symbol)

get_nodes() #

Get nodes.

Returns:

Type Description
Sequence[NodeValueWithId]

nodes info.

get_publisher_qos(pub) #

Get publisher qos.

Parameters:

Name Type Description Default
pub PublisherValueLttng

target publisher

required

Returns:

Type Description
Qos

get_publishers(node) #

Get publishers information.

Parameters:

Name Type Description Default
node NodeValue

target node.

required

Returns:

Type Description
Sequence[PublisherInfoLttng]

get_rmw_impl() #

Get rmw implementation.

Returns:

Type Description
str

rmw_implementation

get_service_callbacks(node) #

Get service callbacks information.

Parameters:

Name Type Description Default
node NodeValue

target node name.

required

Returns:

Type Description
Sequence[ServiceCallbackValueLttng]

get_services(node) #

Get services information.

Parameters:

Name Type Description Default
node NodeValue

target node.

required

Returns:

Type Description
Sequence[ServiceValue]

get_subscription_callbacks(node) #

Get subscription callbacks information.

Parameters:

Name Type Description Default
node NodeValue

target node name.

required

Returns:

Type Description
Sequence[SubscriptionCallbackValueLttng]

get_subscription_qos(sub) #

Get subscription qos.

Parameters:

Name Type Description Default
sub SubscriptionCallbackValueLttng

target subscription

required

Returns:

Type Description
Qos

get_subscriptions(node) #

Get subscriptions information.

Parameters:

Name Type Description Default
node NodeValue

target node.

required

Returns:

Type Description
Sequence[SubscriptionValue]

get_timer_callbacks(node) #

Get timer callback values.

Parameters:

Name Type Description Default
node NodeValue

target node name.

required

Returns:

Type Description
Sequence[TimerCallbackValueLttng]

get_timers(node) #

Get timers information.

Parameters:

Name Type Description Default
node NodeValue

target node name.

required

Returns:

Type Description
Sequence[TimerValue]

get_trace_creation_datetime() #

Get trace creation datetime.

Returns:

Name Type Description
trace_creation_datetime datetime

Date and time the trace data was created.

get_trace_range() #

Get trace range.

Returns:

Name Type Description
trace_range tuple[datetime, datetime]

Trace begin time and trace end time.

RecordsProvider #

callback_records(callback_info) abstractmethod #

Compose callback records.

Parameters:

Name Type Description Default
callback_info CallbackStructValue

[description]

required

Returns:

Type Description
RecordsInterface

[description]

variable_passing_records(variable_passing_info) abstractmethod #

Compose variable passing records.

Parameters:

Name Type Description Default
variable_passing_info VariablePassingStructValue

variable passing information

required

Returns:

Type Description
RecordsInterface

RecordsProviderLttng #

Bases: RuntimeDataProvider

Records are processed and measurement results are calculated.

In addition to merging, filtering and other operations are performed here.

callback_records(callback) #

Return callback duration records.

Parameters:

Name Type Description Default
callback CallbackStructValue

target callback value.

required

Returns:

Type Description
RecordsInterface

Columns

  • [callback_name]/callback_start_timestamp
  • [callback_name]/callback_end_timestamp

communication_records(comm_val) #

Provide communication records.

Parameters:

Name Type Description Default
comm_val CommunicationStructValue

communication value.

required

Returns:

Type Description
RecordsInterface

Columns

If inter-proc communication

  • [topic_name]/rclcpp_publish_timestamp
  • [topic_name]/rcl_publish_timestamp (Optional)
  • [topic_name]/dds_publish_timestamp (Optional)
  • [topic_name]/source_timestamp
  • [callback_name]/callback_start_timestamp

If intra-proc communication

  • [topic_name]/rclcpp_publish_timestamp
  • [callback_name]/callback_start_timestamp

path_beginning_records(publisher) #

Return records from callback_start to publish.

Parameters:

Name Type Description Default
publisher PublisherStructValue

target publisher

required

Returns:

Type Description
RecordsInterface

Columns

  • [node_name]/callback_start_timestamp
  • [topic_name]/rclcpp_publish_timestamp

path_end_records(callback) #

Return records from callback_start to callback_end.

Parameters:

Name Type Description Default
callback CallbackStructValue

target callback

required

Returns:

Type Description
RecordsInterface

Columns

  • [callback_name]/callback_start_timestamp
  • [callback_name]/callback_end_timestamp

publish_records(publisher) #

Return publish records.

Parameters:

Name Type Description Default
publisher PublisherStructValue

target publisher

required

Returns:

Type Description
RecordsInterface

Columns

  • [topic_name]/rclcpp_publish_timestamp
  • [topic_name]/rclcpp_intra_publish_timestamp (Optional)
  • [topic_name]/rclcpp_inter_publish_timestamp (Optional)
  • [topic_name]/rcl_publish_timestamp (Optional)
  • [topic_name]/dds_write_timestamp (Optional)
  • [topic_name]/message_timestamp
  • [topic_name]/source_timestamp (Optional)

  • [topic_name]/tilde_publish_timestamp (Optional)
  • [topic_name]/tilde_message_id (Optional)

subscribe_records(subscription) #

Provide subscription records.

Parameters:

Name Type Description Default
subscription SubscriptionStructValue

Target subscription value.

required

Returns:

Type Description
RecordsInterface

Columns

  • [callback_name]/callback_start_timestamp
  • [topic_name]/source_timestamp

Raises:

Type Description
InvalidArgumentError

subscription_take_records(subscription) #

Provide subscription records.

This method is implemented for nodes which receive messages by 'take' method instead of subscription callbacks.

Parameters:

Name Type Description Default
subscription SubscriptionStructValue

Target subscription value.

required

Returns:

Type Description
RecordsInterface

Columns

  • [topic_name]/source_timestamp
  • rmw_take_timestamp

timer_records(timer) #

Return timer records.

Parameters:

Name Type Description Default
timer TimerStructValue

[description]

required

Returns:

Type Description
RecordsInterface

Columns

  • [callback_name]/timer_event
  • [callback_name]/callback_start
  • [callback_name]/callback_end

variable_passing_records(variable_passing_info) #

Return variable passing records.

Parameters:

Name Type Description Default
variable_passing_info VariablePassingStructValue

target variable passing info.

required

Returns:

Type Description
RecordsInterface

Columns

  • [callback_name]/callback_end_timestamp
  • [callback_name]/callback_start_timestamp