1 #ifndef __XRD_STATISTICS_SERVICE_H_
2 #define __XRD_STATISTICS_SERVICE_H_
25 class XrdReadStatistics;
26 class XrdSiteStatistics;
60 static std::atomic<XrdSiteStatisticsInformation*>
m_instance;
62 std::vector<edm::propagate_const<std::shared_ptr<XrdSiteStatistics>>>
m_sites;
80 static std::shared_ptr<XrdReadStatistics>
startRead(std::shared_ptr<XrdSiteStatistics>
parent, std::shared_ptr<ClientRequest> req);
115 std::chrono::time_point<std::chrono::high_resolution_clock>
m_start;
void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
XrdReadStatistics(const XrdReadStatistics &)=delete
std::string const & site() const
std::atomic< unsigned > m_readCount
static boost::mutex mutex
XrdReadStatistics & operator=(const XrdReadStatistics &)=delete
void finishRead(XrdReadStatistics const &)
std::atomic< uint64_t > m_readvSize
XrdSiteStatistics(std::string const &site)
void recomputeProperties(std::map< std::string, std::string > &props)
static std::shared_ptr< XrdReadStatistics > startRead(std::shared_ptr< XrdSiteStatistics > parent, std::shared_ptr< ClientRequest > req)
std::atomic< unsigned > m_readvCount
XrdStatisticsService(const edm::ParameterSet &iPS, edm::ActivityRegistry &iRegistry)
edm::propagate_const< std::shared_ptr< XrdSiteStatistics > > m_parent
XrdSiteStatistics & operator=(const XrdSiteStatistics &)=delete
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