mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 06:38:20 +00:00
cluster/zeromq: Metric for msg errors
This commit is contained in:
parent
073de9f5fd
commit
d2bb86f8b4
2 changed files with 9 additions and 1 deletions
|
@ -91,7 +91,10 @@ ZeroMQBackend::ZeroMQBackend(std::unique_ptr<EventSerializer> es, std::unique_pt
|
||||||
"Number of published events dropped due to XPUB socket HWM.")),
|
"Number of published events dropped due to XPUB socket HWM.")),
|
||||||
total_onloop_drops(
|
total_onloop_drops(
|
||||||
zeek::telemetry_mgr->CounterInstance("zeek", "cluster_zeromq_onloop_drops", {},
|
zeek::telemetry_mgr->CounterInstance("zeek", "cluster_zeromq_onloop_drops", {},
|
||||||
"Number of received events dropped due to OnLoop queue full.")) {}
|
"Number of received events dropped due to OnLoop queue full.")),
|
||||||
|
total_msg_errors(
|
||||||
|
zeek::telemetry_mgr->CounterInstance("zeek", "cluster_zeromq_msg_errors", {},
|
||||||
|
"Number of events with the wrong number of message parts.")) {}
|
||||||
|
|
||||||
ZeroMQBackend::~ZeroMQBackend() {
|
ZeroMQBackend::~ZeroMQBackend() {
|
||||||
try {
|
try {
|
||||||
|
@ -513,6 +516,7 @@ void ZeroMQBackend::HandleInprocMessages(std::vector<MultipartMessage>& msgs) {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
ZEROMQ_THREAD_PRINTF("inproc: error: expected 2 or 4 parts, have %zu!\n", msg.size());
|
ZEROMQ_THREAD_PRINTF("inproc: error: expected 2 or 4 parts, have %zu!\n", msg.size());
|
||||||
|
total_msg_errors->Inc();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -522,6 +526,7 @@ void ZeroMQBackend::HandleLogMessages(const std::vector<MultipartMessage>& msgs)
|
||||||
// sender, format, type, payload
|
// sender, format, type, payload
|
||||||
if ( msg.size() != 4 ) {
|
if ( msg.size() != 4 ) {
|
||||||
ZEROMQ_THREAD_PRINTF("log: error: expected 4 parts, have %zu!\n", msg.size());
|
ZEROMQ_THREAD_PRINTF("log: error: expected 4 parts, have %zu!\n", msg.size());
|
||||||
|
total_msg_errors->Inc();
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -540,6 +545,7 @@ void ZeroMQBackend::HandleXPubMessages(const std::vector<MultipartMessage>& msgs
|
||||||
for ( const auto& msg : msgs ) {
|
for ( const auto& msg : msgs ) {
|
||||||
if ( msg.size() != 1 ) {
|
if ( msg.size() != 1 ) {
|
||||||
ZEROMQ_THREAD_PRINTF("xpub: error: expected 1 part, have %zu!\n", msg.size());
|
ZEROMQ_THREAD_PRINTF("xpub: error: expected 1 part, have %zu!\n", msg.size());
|
||||||
|
total_msg_errors->Inc();
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -576,6 +582,7 @@ void ZeroMQBackend::HandleXSubMessages(const std::vector<MultipartMessage>& msgs
|
||||||
for ( const auto& msg : msgs ) {
|
for ( const auto& msg : msgs ) {
|
||||||
if ( msg.size() != 4 ) {
|
if ( msg.size() != 4 ) {
|
||||||
ZEROMQ_THREAD_PRINTF("xsub: error: expected 4 parts, have %zu!\n", msg.size());
|
ZEROMQ_THREAD_PRINTF("xsub: error: expected 4 parts, have %zu!\n", msg.size());
|
||||||
|
total_msg_errors->Inc();
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -140,6 +140,7 @@ private:
|
||||||
|
|
||||||
zeek::telemetry::CounterPtr total_xpub_drops; // events dropped due to XPUB socket hwm reached
|
zeek::telemetry::CounterPtr total_xpub_drops; // events dropped due to XPUB socket hwm reached
|
||||||
zeek::telemetry::CounterPtr total_onloop_drops; // events dropped due to onloop queue full
|
zeek::telemetry::CounterPtr total_onloop_drops; // events dropped due to onloop queue full
|
||||||
|
zeek::telemetry::CounterPtr total_msg_errors; // messages with the wrong number of parts
|
||||||
|
|
||||||
// Could rework to log-once-every X seconds if needed.
|
// Could rework to log-once-every X seconds if needed.
|
||||||
double xpub_drop_last_warn_at = 0.0;
|
double xpub_drop_last_warn_at = 0.0;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue