xrootd
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
XrdCmsMeter Class Reference

#include <XrdCmsMeter.hh>

Inheritance diagram for XrdCmsMeter:
Inheritance graph
[legend]
Collaboration diagram for XrdCmsMeter:
Collaboration graph
[legend]

Public Types

enum  vType { manFS = 1 , peerFS = 2 }
 

Public Member Functions

int calcLoad (uint32_t pcpu, uint32_t pio, uint32_t pload, uint32_t pmem, uint32_t ppag)
 
int calcLoad (int xload, uint32_t pdsk)
 
int FreeSpace (int &tutil)
 
void Init ()
 
int isOn ()
 
int Monitor (char *pgm, int itv)
 
int Monitor (int itv)
 
void PutInfo (XrdCmsPerfMon::PerfInfo &perfInfo, bool alert=false)
 
void Record (int pcpu, int pnet, int pxeq, int pmem, int ppag, int pdsk)
 
int Report (int &pcpu, int &pnet, int &pxeq, int &pmem, int &ppag, int &pdsk)
 
void * Run ()
 
void * RunFS ()
 
void * RunPM ()
 
int numFS ()
 
unsigned int TotalSpace (unsigned int &minfree)
 
void setVirtual (vType vVal)
 
void setVirtUpdt ()
 
bool Update (char *line, bool alert=false)
 
 XrdCmsMeter ()
 
 ~XrdCmsMeter ()
 
- Public Member Functions inherited from XrdCmsPerfMon
virtual bool Configure (const char *cfn, char *Parms, XrdSysLogger &Logger, XrdCmsPerfMon &cmsMon, XrdOucEnv *EnvInfo, bool isCMS)
 
virtual void GetInfo (PerfInfo &info)
 
 XrdCmsPerfMon ()
 Constructor & Destructor.
 
virtual ~XrdCmsPerfMon ()
 

Private Member Functions

void calcSpace ()
 
char Scale (long long inval, long &outval)
 
void SpaceMsg (int why)
 
void UpdtSpace ()
 

Private Attributes

XrdOucStream myMeter
 
XrdSysMutex cfsMutex
 
XrdSysMutex repMutex
 
long long MinFree
 
long long HWMFree
 
long long dsk_lpn
 
long long dsk_tot
 
long long dsk_free
 
long long dsk_maxf
 
int dsk_util
 
int dsk_calc
 
int fs_nums
 
int lastFree
 
int lastUtil
 
int noSpace
 
int Running
 
long MinShow
 
long HWMShow
 
char MinStype
 
char HWMStype
 
char Virtual
 
char VirtUpdt
 
time_t rep_tod
 
char * monpgm
 
XrdCmsPerfMonmonPerf
 
int monint
 
pthread_t montid
 
uint32_t xeq_load
 
uint32_t cpu_load
 
uint32_t mem_load
 
uint32_t pag_load
 
uint32_t net_load
 
int myLoad
 
int prevLoad
 

Member Enumeration Documentation

◆ vType

Enumerator
manFS 
peerFS 

Constructor & Destructor Documentation

◆ XrdCmsMeter()

XrdCmsMeter::XrdCmsMeter ( )

◆ ~XrdCmsMeter()

XrdCmsMeter::~XrdCmsMeter ( )

Member Function Documentation

◆ calcLoad() [1/2]

int XrdCmsMeter::calcLoad ( int  xload,
uint32_t  pdsk 
)

◆ calcLoad() [2/2]

int XrdCmsMeter::calcLoad ( uint32_t  pcpu,
uint32_t  pio,
uint32_t  pload,
uint32_t  pmem,
uint32_t  ppag 
)

◆ calcSpace()

void XrdCmsMeter::calcSpace ( )
private

◆ FreeSpace()

int XrdCmsMeter::FreeSpace ( int &  tutil)

◆ Init()

void XrdCmsMeter::Init ( )

◆ isOn()

int XrdCmsMeter::isOn ( )
inline

References Running.

◆ Monitor() [1/2]

int XrdCmsMeter::Monitor ( char *  pgm,
int  itv 
)

◆ Monitor() [2/2]

int XrdCmsMeter::Monitor ( int  itv)

◆ numFS()

int XrdCmsMeter::numFS ( )
inline

References fs_nums.

◆ PutInfo()

void XrdCmsMeter::PutInfo ( XrdCmsPerfMon::PerfInfo info,
bool  alert = false 
)
virtual

Report performance statistics as load values from 0 to 100. The performance monitor plugin may call this method to asynchronously report performance via the passed XrdCmsPerfMon object during configuration.

Parameters
infoReference to the structure that should be filled out with load values. See the PerfInfo structure.
alertWhen true, load information is forcibly sent to the cluster's manager. Otherwise, it is only sent if it significantly changes. See the cms.sched directive fuzz parameter.

Reimplemented from XrdCmsPerfMon.

◆ Record()

void XrdCmsMeter::Record ( int  pcpu,
int  pnet,
int  pxeq,
int  pmem,
int  ppag,
int  pdsk 
)

◆ Report()

int XrdCmsMeter::Report ( int &  pcpu,
int &  pnet,
int &  pxeq,
int &  pmem,
int &  ppag,
int &  pdsk 
)

◆ Run()

void * XrdCmsMeter::Run ( )

◆ RunFS()

void * XrdCmsMeter::RunFS ( )

◆ RunPM()

void * XrdCmsMeter::RunPM ( )

◆ Scale()

char XrdCmsMeter::Scale ( long long  inval,
long &  outval 
)
private

◆ setVirtual()

void XrdCmsMeter::setVirtual ( vType  vVal)
inline

References Virtual.

◆ setVirtUpdt()

void XrdCmsMeter::setVirtUpdt ( )
inline

◆ SpaceMsg()

void XrdCmsMeter::SpaceMsg ( int  why)
private

◆ TotalSpace()

unsigned int XrdCmsMeter::TotalSpace ( unsigned int &  minfree)

◆ Update()

bool XrdCmsMeter::Update ( char *  line,
bool  alert = false 
)

◆ UpdtSpace()

void XrdCmsMeter::UpdtSpace ( )
private

Member Data Documentation

◆ cfsMutex

XrdSysMutex XrdCmsMeter::cfsMutex
private

Referenced by setVirtUpdt().

◆ cpu_load

uint32_t XrdCmsMeter::cpu_load
private

◆ dsk_calc

int XrdCmsMeter::dsk_calc
private

◆ dsk_free

long long XrdCmsMeter::dsk_free
private

◆ dsk_lpn

long long XrdCmsMeter::dsk_lpn
private

◆ dsk_maxf

long long XrdCmsMeter::dsk_maxf
private

◆ dsk_tot

long long XrdCmsMeter::dsk_tot
private

◆ dsk_util

int XrdCmsMeter::dsk_util
private

◆ fs_nums

int XrdCmsMeter::fs_nums
private

Referenced by numFS().

◆ HWMFree

long long XrdCmsMeter::HWMFree
private

◆ HWMShow

long XrdCmsMeter::HWMShow
private

◆ HWMStype

char XrdCmsMeter::HWMStype
private

◆ lastFree

int XrdCmsMeter::lastFree
private

◆ lastUtil

int XrdCmsMeter::lastUtil
private

◆ mem_load

uint32_t XrdCmsMeter::mem_load
private

◆ MinFree

long long XrdCmsMeter::MinFree
private

◆ MinShow

long XrdCmsMeter::MinShow
private

◆ MinStype

char XrdCmsMeter::MinStype
private

◆ monint

int XrdCmsMeter::monint
private

◆ monPerf

XrdCmsPerfMon* XrdCmsMeter::monPerf
private

◆ monpgm

char* XrdCmsMeter::monpgm
private

◆ montid

pthread_t XrdCmsMeter::montid
private

◆ myLoad

int XrdCmsMeter::myLoad
private

◆ myMeter

XrdOucStream XrdCmsMeter::myMeter
private

◆ net_load

uint32_t XrdCmsMeter::net_load
private

◆ noSpace

int XrdCmsMeter::noSpace
private

◆ pag_load

uint32_t XrdCmsMeter::pag_load
private

◆ prevLoad

int XrdCmsMeter::prevLoad
private

◆ rep_tod

time_t XrdCmsMeter::rep_tod
private

◆ repMutex

XrdSysMutex XrdCmsMeter::repMutex
private

◆ Running

int XrdCmsMeter::Running
private

Referenced by isOn().

◆ Virtual

char XrdCmsMeter::Virtual
private

Referenced by setVirtual().

◆ VirtUpdt

char XrdCmsMeter::VirtUpdt
private

Referenced by setVirtUpdt().

◆ xeq_load

uint32_t XrdCmsMeter::xeq_load
private

The documentation for this class was generated from the following file: