Fixed InfluxDB statistics on jf-buffer-writer

This commit is contained in:
2020-10-01 10:02:58 +02:00
parent d776e78ab0
commit 2399b8d59e
3 changed files with 26 additions and 9 deletions
+6 -2
View File
@@ -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();
};
+19 -6
View File
@@ -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<nanoseconds>(
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;
}
+1 -1
View File
@@ -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);