TARAXA
packet_stats.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include <json/value.h>
4 #include <libp2p/Common.h>
5 
6 #include <chrono>
7 
8 namespace taraxa::network::tarcap {
9 
13 class PacketStats {
14  public:
15  uint64_t count_{0};
16  uint64_t size_{0};
17  std::chrono::microseconds processing_duration_{0};
18  std::chrono::microseconds tp_wait_duration_{0};
19 
20  std::string getStatsJsonStr(const std::string &packet_type, const dev::p2p::NodeID &node) const;
21  Json::Value getStatsJson() const;
22 };
23 
24 } // namespace taraxa::network::tarcap
Stats single packet type.
Definition: packet_stats.hpp:13
Json::Value getStatsJson() const
Definition: packet_stats.cpp:19
uint64_t size_
Definition: packet_stats.hpp:16
std::chrono::microseconds tp_wait_duration_
Definition: packet_stats.hpp:18
std::chrono::microseconds processing_duration_
Definition: packet_stats.hpp:17
std::string getStatsJsonStr(const std::string &packet_type, const dev::p2p::NodeID &node) const
Definition: packet_stats.cpp:5
uint64_t count_
Definition: packet_stats.hpp:15
Definition: vote_manager.hpp:23