RTI Cloud Discovery Service Version 7.6.0
Logger.hpp
1
10#ifndef RTI_CDS_LOGGER_HPP_
11#define RTI_CDS_LOGGER_HPP_
12
13#include <dds/core/Reference.hpp>
14#include <rti/config/Logger.hpp>
15
16#include "clouddiscoveryservice/clouddiscoveryservice_service.h"
17#include "clouddiscoveryservice/clouddiscoveryservice_log.h"
18
19namespace rti { namespace cds {
20
33class Logger
34{
35public:
36
37 typedef rti::config::Verbosity Verbosity;
38 typedef rti::config::LogCategory LogCategory;
39 typedef rti::config::PrintFormat PrintFormat;
40
41 static Logger& instance()
42 {
43 static Logger singleton;
44 return singleton;
45 }
46
54 void service_verbosity(rti::config::Verbosity verbosity)
55 {
56 NDDS_Config_Logger_set_verbosity_by_service(
57 NDDS_Config_Logger_get_instance(),
58 NDDS_CONFIG_LOG_SERVICE_CLOUD_DISCOVERY,
59 static_cast<NDDS_Config_LogVerbosity>(verbosity.underlying()));
60 }
61
67 rti::config::Verbosity service_verbosity()
68 {
69 RTILogBitmap instrumentation_mask =
70 NDDS_Config_Logger_get_verbosity_by_service(
71 NDDS_Config_Logger_get_instance(),
72 NDDS_CONFIG_LOG_SERVICE_CLOUD_DISCOVERY);
73
74 return static_cast<rti::config::Verbosity::type>(instrumentation_mask);
75 }
76
89 void error(const std::string& msg)
90 {
91 this->error(msg.c_str());
92 }
93
97 void error(const char *msg)
98 {
99 this->message(rti::config::LogLevel::EXCEPTION, msg);
100 }
101
113 void warn(const std::string& msg)
114 {
115 this->warn(msg.c_str());
116 }
117
121 void warn(const char *msg)
122 {
123 this->message(rti::config::LogLevel::WARNING, msg);
124 }
125
137 void local(const std::string& msg)
138 {
139 this->local(msg.c_str());
140 }
141
145 void local(const char *msg)
146 {
147 this->message(rti::config::LogLevel::STATUS_LOCAL, msg);
148 }
149
161 void remote(const std::string& msg)
162 {
163 this->remote(msg.c_str());
164 }
165
169 void remote(const char *msg)
170 {
171 this->message(rti::config::LogLevel::STATUS_REMOTE, msg);
172 }
173
185 void debug(const std::string& msg)
186 {
187 this->debug(msg.c_str());
188 }
189
193 void debug(const char *msg)
194 {
195 this->message(rti::config::LogLevel::STATUS_ALL, msg);
196 }
197
198 virtual ~Logger()
199 {
200 }
201
202private:
203
204 void message(const rti::config::LogLevel& level, const char* msg)
205 {
206 RTI_CDS_Logger_log(
207 static_cast<NDDS_Config_LogLevel>(level.underlying()),
208 "%s",
209 msg);
210 }
211
212 Logger()
213 {
214 }
215
216 // Disable copy
217 Logger(const Logger&);
218 Logger& operator=(const Logger&);
219};
220
221}}
222
223#endif // RTI_CDS_LOGGER_HPP_
The singleton type used to configure RTI Cloud Discovery Service verbosity.
Definition: Logger.hpp:34
rti::config::Verbosity service_verbosity()
Getter for the same attribute.
Definition: Logger.hpp:67
void error(const char *msg)
Overload of error(const std::string& msg)
Definition: Logger.hpp:97
void remote(const char *msg)
Overload of remote(const std::string& msg)
Definition: Logger.hpp:169
void warn(const char *msg)
Overload of warn(const std::string& msg)
Definition: Logger.hpp:121
void warn(const std::string &msg)
Logs as message with WARNING level.
Definition: Logger.hpp:113
void local(const char *msg)
Overload of local(const std::string& msg)
Definition: Logger.hpp:145
void error(const std::string &msg)
Logs a message with EXCEPTION level.
Definition: Logger.hpp:89
void debug(const std::string &msg)
Logs as message with WARNING level.
Definition: Logger.hpp:185
void service_verbosity(rti::config::Verbosity verbosity)
Sets the verbosity for the log messages generated at the RTI Cloud Discovery Service level.
Definition: Logger.hpp:54
void local(const std::string &msg)
Logs as message with WARNING level.
Definition: Logger.hpp:137
void debug(const char *msg)
Overload of debug(const std::string& msg)
Definition: Logger.hpp:193
void remote(const std::string &msg)
Logs a message with WARNING level.
Definition: Logger.hpp:161
Definition: CloudDiscoveryServiceImpl.hpp:20