XrdCmsMeter Class Reference

#include <XrdCmsMeter.hh>

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

List of all members.

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 ()

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

Enumerator:
manFS 
peerFS 

Constructor & Destructor Documentation

XrdCmsMeter::XrdCmsMeter (  ) 
XrdCmsMeter::~XrdCmsMeter (  ) 

Member Function Documentation

int XrdCmsMeter::calcLoad ( int  xload,
uint32_t  pdsk 
)
int XrdCmsMeter::calcLoad ( uint32_t  pcpu,
uint32_t  pio,
uint32_t  pload,
uint32_t  pmem,
uint32_t  ppag 
)
void XrdCmsMeter::calcSpace (  )  [private]
int XrdCmsMeter::FreeSpace ( int &  tutil  ) 
void XrdCmsMeter::Init (  ) 
int XrdCmsMeter::isOn (  )  [inline]

References Running.

int XrdCmsMeter::Monitor ( int  itv  ) 
int XrdCmsMeter::Monitor ( char *  pgm,
int  itv 
)
int XrdCmsMeter::numFS (  )  [inline]

References fs_nums.

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:
info Reference to the structure that should be filled out with load values. See the PerfInfo structure.
alert When 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.

void XrdCmsMeter::Record ( int  pcpu,
int  pnet,
int  pxeq,
int  pmem,
int  ppag,
int  pdsk 
)
int XrdCmsMeter::Report ( int &  pcpu,
int &  pnet,
int &  pxeq,
int &  pmem,
int &  ppag,
int &  pdsk 
)
void* XrdCmsMeter::Run (  ) 
void* XrdCmsMeter::RunFS (  ) 
void* XrdCmsMeter::RunPM (  ) 
char XrdCmsMeter::Scale ( long long  inval,
long &  outval 
) [private]
void XrdCmsMeter::setVirtual ( vType  vVal  )  [inline]

References Virtual.

void XrdCmsMeter::setVirtUpdt (  )  [inline]
void XrdCmsMeter::SpaceMsg ( int  why  )  [private]
unsigned int XrdCmsMeter::TotalSpace ( unsigned int &  minfree  ) 
bool XrdCmsMeter::Update ( char *  line,
bool  alert = false 
)
void XrdCmsMeter::UpdtSpace (  )  [private]

Member Data Documentation

Referenced by setVirtUpdt().

uint32_t XrdCmsMeter::cpu_load [private]
int XrdCmsMeter::dsk_calc [private]
long long XrdCmsMeter::dsk_free [private]
long long XrdCmsMeter::dsk_lpn [private]
long long XrdCmsMeter::dsk_maxf [private]
long long XrdCmsMeter::dsk_tot [private]
int XrdCmsMeter::dsk_util [private]
int XrdCmsMeter::fs_nums [private]

Referenced by numFS().

long long XrdCmsMeter::HWMFree [private]
long XrdCmsMeter::HWMShow [private]
char XrdCmsMeter::HWMStype [private]
int XrdCmsMeter::lastFree [private]
int XrdCmsMeter::lastUtil [private]
uint32_t XrdCmsMeter::mem_load [private]
long long XrdCmsMeter::MinFree [private]
long XrdCmsMeter::MinShow [private]
char XrdCmsMeter::MinStype [private]
int XrdCmsMeter::monint [private]
char* XrdCmsMeter::monpgm [private]
pthread_t XrdCmsMeter::montid [private]
int XrdCmsMeter::myLoad [private]
uint32_t XrdCmsMeter::net_load [private]
int XrdCmsMeter::noSpace [private]
uint32_t XrdCmsMeter::pag_load [private]
int XrdCmsMeter::prevLoad [private]
time_t XrdCmsMeter::rep_tod [private]
int XrdCmsMeter::Running [private]

Referenced by isOn().

char XrdCmsMeter::Virtual [private]

Referenced by setVirtual().

char XrdCmsMeter::VirtUpdt [private]

Referenced by setVirtUpdt().

uint32_t XrdCmsMeter::xeq_load [private]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 7 Jul 2020 for xrootd by  doxygen 1.6.1