From 2399b8d59e624df57d41533a5e4713c8ba65072d Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Thu, 1 Oct 2020 10:02:58 +0200 Subject: [PATCH] Fixed InfluxDB statistics on jf-buffer-writer --- jf-buffer-writer/include/BufferStats.hpp | 8 ++++++-- jf-buffer-writer/src/BufferStats.cpp | 25 ++++++++++++++++++------ jf-buffer-writer/src/main.cpp | 2 +- 3 files changed, 26 insertions(+), 9 deletions(-) diff --git a/jf-buffer-writer/include/BufferStats.hpp b/jf-buffer-writer/include/BufferStats.hpp index 62f238e..3aff6cb 100644 --- a/jf-buffer-writer/include/BufferStats.hpp +++ b/jf-buffer-writer/include/BufferStats.hpp @@ -7,7 +7,8 @@ class BufferStats { - const std::string source_name_; + const std::string detector_name_; + const int module_id_; size_t stats_modulo_; int frames_counter_; @@ -19,7 +20,10 @@ class BufferStats { void print_stats(); public: - BufferStats(const std::string &source_name, const size_t stats_modulo); + BufferStats( + const std::string &detector_name, + const int module_id, + const size_t stats_modulo); void start_frame_write(); void end_frame_write(); }; diff --git a/jf-buffer-writer/src/BufferStats.cpp b/jf-buffer-writer/src/BufferStats.cpp index 5e297e2..325e930 100644 --- a/jf-buffer-writer/src/BufferStats.cpp +++ b/jf-buffer-writer/src/BufferStats.cpp @@ -4,9 +4,13 @@ using namespace std; using namespace chrono; -BufferStats::BufferStats(const string& source_name, const size_t stats_modulo) : - source_name_(source_name), - stats_modulo_(stats_modulo) +BufferStats::BufferStats( + const string& detector_name, + const int module_id, + const size_t stats_modulo) : + detector_name_(detector_name), + module_id_(module_id), + stats_modulo_(stats_modulo) { reset_counters(); } @@ -43,8 +47,17 @@ void BufferStats::print_stats() { float avg_buffer_write_us = total_buffer_write_us_ / frames_counter_; - cout << "sf_buffer:device_name " << source_name_; - cout << " sf_buffer:avg_buffer_write_us " << avg_buffer_write_us; - cout << " sf_buffer:max_buffer_write_us " << max_buffer_write_us_; + uint64_t timestamp = time_point_cast( + system_clock::now()).time_since_epoch().count(); + + // Output in InfluxDB line protocol + cout << "jf-buffer-writer"; + cout << ",detector_name=" << detector_name_; + cout << ",module_name=M" << module_id_; + cout << " "; + cout << "avg_buffer_write_us=" << avg_buffer_write_us; + cout << ",max_buffer_write_us=" << max_buffer_write_us_ << "i"; + cout << " "; + cout << timestamp; cout << endl; } diff --git a/jf-buffer-writer/src/main.cpp b/jf-buffer-writer/src/main.cpp index 83eba59..81c7705 100644 --- a/jf-buffer-writer/src/main.cpp +++ b/jf-buffer-writer/src/main.cpp @@ -33,7 +33,7 @@ int main (int argc, char *argv[]) { const auto module_name = "M" + to_string(module_id); BufferBinaryWriter writer(config.buffer_folder, module_name); RamBuffer ram_buff(config.detector_name, config.n_modules); - BufferStats stats(module_name, STATS_MODULO); + BufferStats stats(config.detector_name, module_id, STATS_MODULO); auto ctx = zmq_ctx_new(); auto socket = connect_socket(ctx, config.detector_name, module_id);