diff --git a/NEWS b/NEWS index d9311cc4..7b81cb59 100644 --- a/NEWS +++ b/NEWS @@ -31,6 +31,9 @@ See doc/zmq_socket_monitor.txt for more details and error codes. - zmq_stopwatch_intermediate which returns the time elapsed without stopping the stopwatch. + - zmq_proxy_steerable command 'STATISTICS' to retrieve stats about the amount + of messages and bytes sent and received by the proxy. + See doc/zmq_proxy_steerable.txt for more information. * The build-time configuration option to select the poller has been split, and new API_POLLER (CMake) and --with-api-poller (autoconf) options will now diff --git a/src/proxy.cpp b/src/proxy.cpp index e36e4650..bac93b65 100644 --- a/src/proxy.cpp +++ b/src/proxy.cpp @@ -425,20 +425,16 @@ int zmq::proxy (class socket_base_t *frontend_, && memcmp (msg.data (), "TERMINATE", 9) == 0) state = terminated; else { -#ifdef ZMQ_BUILD_DRAFT_API if (msg.size () == 10 && memcmp (msg.data (), "STATISTICS", 10) == 0) { rc = reply_stats (control_, &frontend_stats, &backend_stats); CHECK_RC_EXIT_ON_FAILURE (); } else { -#endif // This is an API error, we assert puts ("E: invalid command sent to proxy"); zmq_assert (false); -#ifdef ZMQ_BUILD_DRAFT_API } -#endif } } control_in = false; @@ -604,7 +600,6 @@ int zmq::proxy (class socket_base_t *frontend_, && memcmp (msg.data (), "TERMINATE", 9) == 0) state = terminated; else { -#ifdef ZMQ_BUILD_DRAFT_API if (msg.size () == 10 && memcmp (msg.data (), "STATISTICS", 10) == 0) { rc = @@ -612,13 +607,10 @@ int zmq::proxy (class socket_base_t *frontend_, if (unlikely (rc < 0)) return close_and_return (&msg, -1); } else { -#endif // This is an API error, we assert puts ("E: invalid command sent to proxy"); zmq_assert (false); -#ifdef ZMQ_BUILD_DRAFT_API } -#endif } } // Process a request diff --git a/tests/test_proxy.cpp b/tests/test_proxy.cpp index 6fc5c48c..6498cdb0 100644 --- a/tests/test_proxy.cpp +++ b/tests/test_proxy.cpp @@ -472,11 +472,9 @@ int main (void) msleep (500); // Wait for all clients and workers to STOP -#ifdef ZMQ_BUILD_DRAFT_API if (is_verbose) printf ("retrieving stats from the proxy\n"); check_proxy_stats (control_proxy); -#endif if (is_verbose) printf ("shutting down all clients and server workers\n"); diff --git a/tests/test_proxy_hwm.cpp b/tests/test_proxy_hwm.cpp index ad56aa16..38a1343c 100644 --- a/tests/test_proxy_hwm.cpp +++ b/tests/test_proxy_hwm.cpp @@ -300,9 +300,7 @@ static void proxy_stats_asker_thread_main (void *pvoid) // Start! while (!zmq_atomic_counter_value (cfg->subscriber_received_all)) { -#ifdef ZMQ_BUILD_DRAFT_API check_proxy_stats (control_req); -#endif usleep (1000); // 1ms -> in best case we will get 1000updates/second }