1 #ifndef __XRD_STATISTICS_SERVICE_H_ 2 #define __XRD_STATISTICS_SERVICE_H_ 25 class XrdReadStatistics;
26 class XrdSiteStatistics;
55 std::shared_ptr<XrdSiteStatistics> getStatisticsForSite(
std::string const &site);
58 static void createInstance();
60 static std::atomic<XrdSiteStatisticsInformation*>
m_instance;
62 std::vector<edm::propagate_const<std::shared_ptr<XrdSiteStatistics>>>
m_sites;
78 void recomputeProperties(std::map<std::string, std::string> &props);
80 static std::shared_ptr<XrdReadStatistics> startRead(std::shared_ptr<XrdSiteStatistics>
parent, std::shared_ptr<ClientRequest> req);
108 float elapsedNS()
const;
110 int size()
const {
return m_size;}
115 std::chrono::time_point<std::chrono::high_resolution_clock>
m_start;
std::string const & site() const
std::atomic< unsigned > m_readCount
static boost::mutex mutex
std::atomic< uint64_t > m_readvSize
std::atomic< unsigned > m_readvCount
edm::propagate_const< std::shared_ptr< XrdSiteStatistics > > m_parent
std::atomic< uint64_t > m_readvNS
std::atomic< uint64_t > m_readNS
std::chrono::time_point< std::chrono::high_resolution_clock > m_start
std::atomic< uint64_t > m_readSize
std::atomic< unsigned > m_chunkCount