1 #ifndef __XRD_STATISTICS_SERVICE_H_ 2 #define __XRD_STATISTICS_SERVICE_H_ 22 class CondorStatusService;
30 class XrdReadStatistics;
31 class XrdSiteStatistics;
58 std::vector<std::pair<std::string, CondorIOStats>> condorUpdate();
68 std::shared_ptr<XrdSiteStatistics> getStatisticsForSite(
std::string const &site);
71 static void createInstance();
73 static std::atomic<XrdSiteStatisticsInformation*>
m_instance;
75 std::vector<edm::propagate_const<std::shared_ptr<XrdSiteStatistics>>>
m_sites;
91 void recomputeProperties(std::map<std::string, std::string> &props);
93 static std::shared_ptr<XrdReadStatistics> startRead(std::shared_ptr<XrdSiteStatistics>
parent, std::shared_ptr<ClientRequest> req);
126 int size()
const {
return m_size;}
131 std::chrono::time_point<std::chrono::high_resolution_clock>
m_start;
std::chrono::nanoseconds getTotalReadTime()
static boost::mutex mutex
std::string const & site() const
std::atomic< unsigned > m_readCount
std::atomic< uint64_t > m_readvSize
uint64_t getTotalBytes() const
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
unsigned long long uint64_t
std::atomic< uint64_t > m_readSize
boost::date_time::subsecond_duration< boost::posix_time::time_duration, 1000000000 > nanoseconds
std::atomic< unsigned > m_chunkCount