RTI Connext Modern C++ API Version 7.7.0
rti::core::policy::Monitoring Class Reference

<<extension>> Configures the use of the RTI Monitoring Library 2.0 to collect and distribute RTI Connext telemetry data. More...

#include <rti/core/policy/CorePolicy.hpp>

Public Member Functions

 Monitoring ()
 Creates the default policy (monitoring is disabled). More...
 
Monitoringenable (bool the_enable)
 <<basic>> <<extension>> Enables the collection and distribution of telemetry data for an RTI Connext application using RTI Monitoring Library 2.0. More...
 
bool enable () const
 Getter (see setter with the same name). More...
 
Monitoringapplication_name (const rti::core::optional_value< std::string > &the_application_name)
 Sets the name of the resource that represents this RTI Connext application. More...
 
Monitoringapplication_name (const char *the_application_name)
 Sets the name of the resource that represents this RTI Connext application. More...
 
rti::core::optional_value< std::string > application_name () const
 Getter (see setter with the same name). More...
 
Monitoringdistribution_settings (const MonitoringDistributionSettings &the_distribution_settings)
 <<extension>> Configures the distribution of telemetry data. More...
 
const MonitoringDistributionSettingsdistribution_settings () const
 Gets the distribution settings by const-reference (see setter). More...
 
MonitoringDistributionSettingsdistribution_settings ()
 Gets the distribution settings by reference (see setter). More...
 
Monitoringtelemetry_data (const MonitoringTelemetryData &the_telemetry_data)
 <<extension>> Configures the telemetry data that will be distributed. More...
 
const MonitoringTelemetryDatatelemetry_data () const
 Gets the telemetry data by const-reference (see setter). More...
 
MonitoringTelemetryDatatelemetry_data ()
 Gets the telemetry data by reference (see setter). More...
 

Static Public Member Functions

static Monitoring Enabled ()
 Returns an instance that enables Monitoring with default settings. More...
 
static Monitoring Disabled ()
 Returns an instance that disables Monitoring. More...
 

Detailed Description

<<extension>> Configures the use of the RTI Monitoring Library 2.0 to collect and distribute RTI Connext telemetry data.

Constructor & Destructor Documentation

◆ Monitoring()

rti::core::policy::Monitoring::Monitoring ( )
inline

Creates the default policy (monitoring is disabled).

Member Function Documentation

◆ Enabled()

static Monitoring rti::core::policy::Monitoring::Enabled ( )
inlinestatic

Returns an instance that enables Monitoring with default settings.

◆ Disabled()

static Monitoring rti::core::policy::Monitoring::Disabled ( )
inlinestatic

Returns an instance that disables Monitoring.

◆ enable() [1/2]

Monitoring & rti::core::policy::Monitoring::enable ( bool  the_enable)

<<basic>> <<extension>> Enables the collection and distribution of telemetry data for an RTI Connext application using RTI Monitoring Library 2.0.

RTI Monitoring Library 2.0 is automatically enabled under the following conditions:

  • For RTI Connext applications that link with the RTI Connext shared libraries as long as the rtimonitoring2 shared library is in the library search path. There is no need to link with rtimonitoring2.
  • For RTI Connext applications that link with the RTI Connext static libraries, including rtimonitoring2, as long as the application calls the API RTI_Monitoring_initialize.

RTI Monitoring Library 2.0 is not automatically enabled for RTI Connext RTI DDS Ping, RTI DDS Spy, RTI Monitor, RTI Admin Console nor RTI Observability Collector Service.

You can override the default behavior and control whether RTI Monitoring Library 2.0 is enabled or disabled in two ways in order of precedence:

  • Environment variable: Set RTI_MONITORING2_ENABLE to true or false. This is the simplest way to enable or disable the library without modifying your application or its configuration.
  • QoS policy: Set this field to true or false programmatically or via XML.

The environment variable should not be changed at runtime. If you need to enable or disable RTI Monitoring Library 2.0 at runtime, use this field instead.

Note: Enabling and disabling RTI Monitoring Library 2.0 while DDS Entities are being created or deleted is not a safe operation. The entities created while RTI Monitoring Library 2.0 is being enabled may not be monitored.

Categories
Mutable, Debuggability

◆ enable() [2/2]

bool rti::core::policy::Monitoring::enable ( ) const

Getter (see setter with the same name).

◆ application_name() [1/3]

Monitoring & rti::core::policy::Monitoring::application_name ( const rti::core::optional_value< std::string > &  the_application_name)

Sets the name of the resource that represents this RTI Connext application.

Parameters
the_application_nameAn optional string. An unset value indicates that the application name will be automatically assigned. A set value will set an application name.

[default] Unset

When this member is set to a value, the resource identifier representing this application will be:

/applications/<application_name>

This is the resource identifier that will be used to send commands to this application from the RTI Observability Dashboards.

The application_name should be unique across the RTI Connext system; however, RTI Monitoring Library 2.0 does not currently enforce uniqueness.

When this member is not set, RTI Monitoring Library 2.0 will automatically assign a resource identifier with this format:

/applications/<host_name:process_id:uuid>

Categories
Mutable, Debuggability

◆ application_name() [2/3]

Monitoring & rti::core::policy::Monitoring::application_name ( const char *  the_application_name)

Sets the name of the resource that represents this RTI Connext application.

Parameters
the_application_nameThe application name. Cannot be NULL.

When this member is set to a value, the resource identifier representing this application will be:

/applications/<application_name>

This is the resource identifier that will be used to send commands to this application from the RTI Observability Dashboards.

The application_name should be unique across the RTI Connext system; however, RTI Monitoring Library 2.0 does not currently enforce uniqueness.

When this member is not set, RTI Monitoring Library 2.0 will automatically assign a resource identifier with this format:

/applications/<host_name:process_id:uuid>

Categories
Mutable, Debuggability

◆ application_name() [3/3]

rti::core::optional_value< std::string > rti::core::policy::Monitoring::application_name ( ) const

Getter (see setter with the same name).

◆ distribution_settings() [1/3]

Monitoring & rti::core::policy::Monitoring::distribution_settings ( const MonitoringDistributionSettings the_distribution_settings)

<<extension>> Configures the distribution of telemetry data.

Categories
Mutable, Debuggability

◆ distribution_settings() [2/3]

const MonitoringDistributionSettings & rti::core::policy::Monitoring::distribution_settings ( ) const

Gets the distribution settings by const-reference (see setter).

◆ distribution_settings() [3/3]

MonitoringDistributionSettings & rti::core::policy::Monitoring::distribution_settings ( )

Gets the distribution settings by reference (see setter).

◆ telemetry_data() [1/3]

Monitoring & rti::core::policy::Monitoring::telemetry_data ( const MonitoringTelemetryData the_telemetry_data)

<<extension>> Configures the telemetry data that will be distributed.

Categories
Mutable, Debuggability

◆ telemetry_data() [2/3]

const MonitoringTelemetryData & rti::core::policy::Monitoring::telemetry_data ( ) const

Gets the telemetry data by const-reference (see setter).

◆ telemetry_data() [3/3]

MonitoringTelemetryData & rti::core::policy::Monitoring::telemetry_data ( )

Gets the telemetry data by reference (see setter).