RTI Connext Modern C++ API Version 7.1.0
|
<<extension>> Configures the distribution of log messages. More...
#include <rti/core/PolicySettings.hpp>
Public Member Functions | |
MonitoringLoggingDistributionSettings () | |
Creates an instance with the default settings. More... | |
MonitoringLoggingDistributionSettings & | concurrency_level (uint32_t the_concurrency_level) |
Defines how concurrent the push of log messages to the RTI Observability Library is. More... | |
uint32_t | concurrency_level () const |
Getter (see setter with the same name). More... | |
MonitoringLoggingDistributionSettings & | max_historical_logs (uint32_t the_max_historical_logs) |
The number of log messages that the RTI Observability Library will keep as history. More... | |
uint32_t | max_historical_logs () const |
Getter (see setter with the same name). More... | |
MonitoringLoggingDistributionSettings & | datawriter_qos_profile_name (const rti::core::optional_value< std::string > &the_datawriter_qos_profile_name) |
Sets The fully qualified name of the profile used to configure the dds::pub::DataWriter that distributes log messages. More... | |
MonitoringLoggingDistributionSettings & | datawriter_qos_profile_name (const char *the_datawriter_qos_profile_name) |
Sets The fully qualified name of the profile used to configure the dds::pub::DataWriter that distributes log messages. More... | |
rti::core::optional_value< std::string > | datawriter_qos_profile_name () const |
Getter (see setter with the same name). More... | |
MonitoringLoggingDistributionSettings & | thread (const rti::core::ThreadSettings &the_thread) |
The settings of the logging thread. More... | |
const rti::core::ThreadSettings & | thread () const |
Getter (see setter with the same name). More... | |
rti::core::ThreadSettings & | thread () |
Getter (see setter with the same name). More... | |
MonitoringLoggingDistributionSettings & | publication_period (const dds::core::Duration &the_publication_period) |
Period at which the logging thread publishes log messages. More... | |
dds::core::Duration | publication_period () const |
Getter (see setter with the same name) More... | |
<<extension>> Configures the distribution of log messages.
Log messages are pushed into the RTI Observability Library and published by the logging thread.
The logging thread only publishes a log message with a Syslog level smaller than or equal to the forwarding level of the LogFacility associated with the log message.
The default value of the forwarding level for all facilities is rti::config::SyslogVerbosity::warning. This value can be changed by sending a command to the RTI Observability Library monitoring the RTI Connext application.
In this release, commands can only be sent from the RTI Observability Dashboards.
The RTI Observability Library can be configured to keep a history of log messages for later distribution when a log snapshot is requested by a RTI Observability Collector Service.
The log messages maintained in the history are all of the log messages generated by the RTI Connext application regardless of the forwarding levels configured in the RTI Observability Library.
|
inline |
Creates an instance with the default settings.
MonitoringLoggingDistributionSettings & rti::core::MonitoringLoggingDistributionSettings::concurrency_level | ( | uint32_t | the_concurrency_level | ) |
Defines how concurrent the push of log messages to the RTI Observability Library is.
With a concurrency_level of one, all the log messages pushed to the RTI Observability Library will be stored into a single queue protected by a single mutex.
With a concurrency_level of 'n', the RTI Observability Library will create 'n' queues for log messages, each queue protected by its own mutex.
The log messages generated by a single thread will always be pushed to the same queue. The log messages for two threads associated with different event queues can be pushed in parallel. This is why a higher concurrency_level provides more concurrency.
The log messages added to the log queues are processed and published by a single thread configured using rti::core::MonitoringLoggingDistributionSettings::thread.
[default] 5
[range] [1, 100]
uint32_t rti::core::MonitoringLoggingDistributionSettings::concurrency_level | ( | ) | const |
Getter (see setter with the same name).
MonitoringLoggingDistributionSettings & rti::core::MonitoringLoggingDistributionSettings::max_historical_logs | ( | uint32_t | the_max_historical_logs | ) |
The number of log messages that the RTI Observability Library will keep as history.
The RTI Observability Library will keep as history the last max_historical_logs
generated by the RTI Connext application.
A value of 0 means that the RTI Observability Library should not keep any history.
[default] 128
uint32_t rti::core::MonitoringLoggingDistributionSettings::max_historical_logs | ( | ) | const |
Getter (see setter with the same name).
MonitoringLoggingDistributionSettings & rti::core::MonitoringLoggingDistributionSettings::datawriter_qos_profile_name | ( | const rti::core::optional_value< std::string > & | the_datawriter_qos_profile_name | ) |
Sets The fully qualified name of the profile used to configure the dds::pub::DataWriter that distributes log messages.
the_datawriter_qos_profile_name | An optional string. An unset value indicates that the RTI Observability Library uses rti::core::builtin_profiles::qos_lib::generic_observability(). |
[default] Unset
The dds::pub::DataWriter Topic is MONITORING_LOGGING_TOPIC_NAME.
If null (the default value), then the RTI Observability Library uses rti::core::builtin_profiles::qos_lib::generic_observability().
[default] null
MonitoringLoggingDistributionSettings & rti::core::MonitoringLoggingDistributionSettings::datawriter_qos_profile_name | ( | const char * | the_datawriter_qos_profile_name | ) |
Sets The fully qualified name of the profile used to configure the dds::pub::DataWriter that distributes log messages.
the_datawriter_qos_profile_name | The profile name. Cannot be NULL. |
The dds::pub::DataWriter Topic is MONITORING_LOGGING_TOPIC_NAME.
If null (the default value), then the RTI Observability Library uses rti::core::builtin_profiles::qos_lib::generic_observability().
[default] null
rti::core::optional_value< std::string > rti::core::MonitoringLoggingDistributionSettings::datawriter_qos_profile_name | ( | ) | const |
Getter (see setter with the same name).
MonitoringLoggingDistributionSettings & rti::core::MonitoringLoggingDistributionSettings::thread | ( | const rti::core::ThreadSettings & | the_thread | ) |
The settings of the logging thread.
The logging thread periodically publishes the log messages pushed into the RTI Observability Library log message queues after they are generated.
The thread runs at the period configured using rti::core::MonitoringLoggingDistributionSettings::publication_period.
[default] DDS_THREAD_SETTINGS_DEFAULT
const rti::core::ThreadSettings & rti::core::MonitoringLoggingDistributionSettings::thread | ( | ) | const |
Getter (see setter with the same name).
rti::core::ThreadSettings & rti::core::MonitoringLoggingDistributionSettings::thread | ( | ) |
Getter (see setter with the same name).
MonitoringLoggingDistributionSettings & rti::core::MonitoringLoggingDistributionSettings::publication_period | ( | const dds::core::Duration & | the_publication_period | ) |
Period at which the logging thread publishes log messages.
With a period of 0 seconds, log messages will be published immediately after they are pushed into the RTI Observability Library.
[default] 1 second
dds::core::Duration rti::core::MonitoringLoggingDistributionSettings::publication_period | ( | ) | const |
Getter (see setter with the same name)