added benchmark test suite
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
#ifndef MATADOR_METRICS_OBSERVER_HPP
|
||||
#define MATADOR_METRICS_OBSERVER_HPP
|
||||
|
||||
#include "matador/utils/message_bus.hpp"
|
||||
|
||||
#include "matador/sql/statement_cache.hpp"
|
||||
|
||||
namespace matador::test {
|
||||
class MetricsObserver {
|
||||
public:
|
||||
explicit MetricsObserver(utils::message_bus &bus);
|
||||
|
||||
std::chrono::milliseconds get_average_lock_wait_time() const;
|
||||
std::chrono::milliseconds get_average_execution_time() const;
|
||||
std::chrono::milliseconds get_total_lock_wait_time() const;
|
||||
std::chrono::milliseconds get_total_execution_time() const;
|
||||
size_t get_lock_failure_count() const;
|
||||
|
||||
private:
|
||||
std::vector<utils::subscription> subscriptions;
|
||||
mutable std::mutex mutex_;
|
||||
size_t lock_failure_count_{0};
|
||||
size_t execution_count_{0};
|
||||
std::chrono::nanoseconds total_lock_wait_time_{0};
|
||||
std::chrono::nanoseconds total_execution_time_{0};
|
||||
};
|
||||
}
|
||||
#endif //MATADOR_METRICS_OBSERVER_HPP
|
||||
Reference in New Issue
Block a user