1#ifndef IPM_INCLUDE_IPM_ZMQCONTEXT_HPP_
2#define IPM_INCLUDE_IPM_ZMQCONTEXT_HPP_
53 "An exception occured while calling " << operation <<
" on the ZMQ " << direction <<
" socket: "
54 << what <<
" (connection_string: " << connection_string <<
")",
55 ((std::string)operation)((std::string)direction)((
const char*)what)(
56 (std::string)connection_string))
68 "An exception occurred while sending " << N <<
" bytes to " << topic <<
": " << what,
69 ((
const char*)what)((
int)N)((std::string)topic))
80 "An exception occured while receiving " << which <<
": " << what,
81 ((
const char*)what)((
const char*)which))
92 "An execption occured while subscribing to " << topic <<
": " << what,
93 ((
const char*)what)((std::string)topic))
104 "An execption occured while unsubscribing from " << topic <<
": " << what,
105 ((
const char*)what)((std::string)topic))
123 m_context.set(zmq::ctxopt::io_threads, nthreads);
128 m_context.set(zmq::ctxopt::max_sockets, max_sockets);
134 auto threads_c = getenv(
"IPM_ZMQ_IO_THREADS");
135 if (threads_c !=
nullptr) {
136 auto threads = std::atoi(threads_c);
142 bool sockets_set =
false;
143 auto sockets_c = getenv(
"IPM_ZMQ_MAX_SOCKETS");
144 if (sockets_c !=
nullptr) {
145 auto sockets = std::atoi(sockets_c);
#define ERS_DECLARE_ISSUE(namespace_name, class_name, message, attributes)
@ TLVL_ZMQSUBSCRIBER_RECV_DATA_2
@ TLVL_ZMQSUBSCRIBER_RECV_HDR
@ TLVL_ZMQSUBSCRIBER_RECV_END
@ TLVL_ZMQRECEIVER_RECV_HDR_2
@ TLVL_ZMQSUBSCRIBER_RECV_DATA
@ TLVL_ZMQSENDER_SEND_END
@ TLVL_ZMQRECEIVER_RECV_DATA
@ TLVL_ZMQSUBSCRIBER_RECV_HDR_2
@ TLVL_ZMQSENDER_DESTRUCTOR
@ TLVL_ZMQPUBLISHER_DESTRUCTOR
@ TLVL_ZMQPUBLISHER_SEND_START
@ TLVL_ZMQPUBLISHER_SEND_ERR
@ TLVL_ZMQRECEIVER_RECV_END
@ TLVL_ZMQRECEIVER_RECV_HDR
@ TLVL_ZMQRECEIVER_RECV_DATA_2
@ TLVL_ZMQSENDER_SEND_ERR
@ TLVL_ZMQPUBLISHER_SEND_END
@ TLVL_ZMQSENDER_SEND_START
void set_context_threads(int nthreads)
static ZmqContext & instance()
ZmqContext & operator=(ZmqContext &&)=delete
void set_context_maxsockets(int max_sockets)
ZmqContext(ZmqContext const &)=delete
static constexpr int s_minimum_sockets
ZmqContext(ZmqContext &&)=delete
zmq::context_t & GetContext()
ZmqContext & operator=(ZmqContext const &)=delete
#define TLOG_DEBUG(lvl,...)