|
XRootD
|
#include <XrdThrottleManager.hh>
Collaboration diagram for XrdThrottleManager:Public Member Functions | |
| XrdThrottleManager (XrdSysError *lP, XrdOucTrace *tP) | |
| ~XrdThrottleManager () | |
| void | Apply (int reqsize, int reqops, int uid) |
| bool | CheckLoadShed (const std::string &opaque) |
| bool | CloseFile (const std::string &entity) |
| void | FromConfig (XrdThrottle::Configuration &config) |
| std::tuple< std::string, uint16_t > | GetUserInfo (const XrdSecEntity *client) |
| void | Init () |
| bool | IsThrottling () |
| bool | OpenFile (const std::string &entity, std::string &open_error_message) |
| void | PerformLoadShed (const std::string &opaque, std::string &host, unsigned &port) |
| void | PrepLoadShed (const char *opaque, std::string &lsOpaque) |
| void | SetLoadShed (std::string &hostname, unsigned port, unsigned frequency) |
| void | SetMaxConns (unsigned long max_conns) |
| void | SetMaxOpen (unsigned long max_open) |
| void | SetMaxWait (unsigned long max_wait) |
| void | SetMonitor (XrdXrootdGStream *gstream) |
| void | SetThrottles (float reqbyterate, float reqoprate, int concurrency, float interval_length) |
| XrdThrottleTimer | StartIOTimer (uint16_t uid, bool &ok) |
Protected Member Functions | |
| void | StopIOTimer (std::chrono::steady_clock::duration &event_duration, uint16_t uid) |
Friends | |
| class | XrdThrottleTimer |
Definition at line 53 of file XrdThrottleManager.hh.
| XrdThrottleManager::XrdThrottleManager | ( | XrdSysError * | lP, |
| XrdOucTrace * | tP | ||
| ) |
Definition at line 44 of file XrdThrottleManager.cc.
|
inline |
Definition at line 107 of file XrdThrottleManager.hh.
| void XrdThrottleManager::Apply | ( | int | reqsize, |
| int | reqops, | ||
| int | uid | ||
| ) |
Definition at line 322 of file XrdThrottleManager.cc.
References AtomicBeg, AtomicEnd, TRACE, and XrdSysCondVar::Wait().
Here is the call graph for this function:| bool XrdThrottleManager::CheckLoadShed | ( | const std::string & | opaque | ) |
Definition at line 774 of file XrdThrottleManager.cc.
| bool XrdThrottleManager::CloseFile | ( | const std::string & | entity | ) |
Definition at line 256 of file XrdThrottleManager.cc.
References XrdSysThread::Num(), and TRACE.
Referenced by XrdThrottle::File::close(), and XrdThrottle::File::open().
Here is the call graph for this function:
Here is the caller graph for this function:| void XrdThrottleManager::FromConfig | ( | XrdThrottle::Configuration & | config | ) |
Definition at line 59 of file XrdThrottleManager.cc.
References XrdThrottle::Configuration::GetLoadshedFreq(), XrdThrottle::Configuration::GetLoadshedHost(), XrdThrottle::Configuration::GetLoadshedPort(), XrdThrottle::Configuration::GetMaxConn(), XrdThrottle::Configuration::GetMaxOpen(), XrdThrottle::Configuration::GetMaxWait(), XrdThrottle::Configuration::GetThrottleConcurrency(), XrdThrottle::Configuration::GetThrottleDataRate(), XrdThrottle::Configuration::GetThrottleIOPSRate(), XrdThrottle::Configuration::GetThrottleRecomputeIntervalMS(), XrdThrottle::Configuration::GetTraceLevels(), SetLoadShed(), SetMaxConns(), SetMaxOpen(), SetMaxWait(), SetThrottles(), and XrdOucTrace::What.
Here is the call graph for this function:| std::tuple< std::string, uint16_t > XrdThrottleManager::GetUserInfo | ( | const XrdSecEntity * | client | ) |
Definition at line 116 of file XrdThrottleManager.cc.
References XrdSecEntity::eaAPI, XrdSecEntityAttr::Get(), XrdSecEntity::name, and XrdSecEntity::vorg.
Referenced by XrdThrottle::File::open().
Here is the call graph for this function:
Here is the caller graph for this function:| void XrdThrottleManager::Init | ( | ) |
Definition at line 87 of file XrdThrottleManager.cc.
References DEBUG, XrdSysError::Emsg(), XrdSysThread::Run(), and TRACE.
Here is the call graph for this function:
|
inline |
Definition at line 69 of file XrdThrottleManager.hh.
| bool XrdThrottleManager::OpenFile | ( | const std::string & | entity, |
| std::string & | open_error_message | ||
| ) |
Definition at line 179 of file XrdThrottleManager.cc.
References XrdSysThread::Num(), and TRACE.
Referenced by XrdThrottle::File::open().
Here is the call graph for this function:
Here is the caller graph for this function:| void XrdThrottleManager::PerformLoadShed | ( | const std::string & | opaque, |
| std::string & | host, | ||
| unsigned & | port | ||
| ) |
Definition at line 820 of file XrdThrottleManager.cc.
| void XrdThrottleManager::PrepLoadShed | ( | const char * | opaque, |
| std::string & | lsOpaque | ||
| ) |
Definition at line 796 of file XrdThrottleManager.cc.
References XrdOucEnv::Get().
Referenced by XrdThrottle::File::open().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 80 of file XrdThrottleManager.hh.
Referenced by FromConfig().
Here is the caller graph for this function:
|
inline |
Definition at line 85 of file XrdThrottleManager.hh.
Referenced by FromConfig().
Here is the caller graph for this function:
|
inline |
Definition at line 83 of file XrdThrottleManager.hh.
Referenced by FromConfig().
Here is the caller graph for this function:
|
inline |
Definition at line 87 of file XrdThrottleManager.hh.
Referenced by FromConfig().
Here is the caller graph for this function:
|
inline |
Definition at line 89 of file XrdThrottleManager.hh.
|
inline |
Definition at line 76 of file XrdThrottleManager.hh.
Referenced by FromConfig().
Here is the caller graph for this function:| XrdThrottleTimer XrdThrottleManager::StartIOTimer | ( | uint16_t | uid, |
| bool & | ok | ||
| ) |
Definition at line 708 of file XrdThrottleManager.cc.
References DEBUG, TRACE, and XrdThrottleTimer.
|
protected |
Definition at line 741 of file XrdThrottleManager.cc.
|
friend |
Definition at line 56 of file XrdThrottleManager.hh.
Referenced by StartIOTimer().