Your IP : 172.28.240.42


Current Path : /usr/lib/python2.7/dist-packages/landscape/monitor/
Upload File :
Current File : //usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pyc


Tc@snddlZddlZddlmZddlmZddlmZdZdZ	defdYZ
dS(	iN(tAccumulator(tCoverageMonitor(t
MonitorPluginslast-cpu-usage-measurescpu-usage-accumulatortCPUUsagecBsqeZdZdZdZdZdd
ejdZdZ	dZ
edZed	Z
d
ZdZRS(s5
    Plugin that captures CPU usage information.
    s	cpu-usagetcpuii<cCs1||_||_g|_||_d|_dS(Ns
/proc/stat(t	_intervalt_monitor_intervalt_cpu_usage_pointst_create_timet
_stat_file(tselftintervaltmonitor_intervaltcreate_time((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pyt__init__s
				cCstt|j|t|j|j|_|jjj	|j
|jt|j
ddd|j
|_|jjj	|j|jj|jjjd|jjdd|jd|jtdS(Ng?sCPU usage snapshotR
tstoptpriorityis	cpu-usage(tsuperRtregisterRt_persistt	step_sizet_accumulatetregistrytreactort
call_everyRtrunRRt_monitorRtlogtcall_ontcall_on_acceptedtsend_messagetTrue(R
R((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pyRs
"cCs$|j}g|_idd6|d6S(Ns	cpu-usagettypes
cpu-usages(R(R
t
cpu_points((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pytcreate_message+s		cCsB|j}t|dr>|jjj||jd|ndS(Ns
cpu-usagesturgent(R"tlenRtbrokerRt_session_id(R
R#tmessage((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pyR0scCs |jjjd|j|dS(Ns	cpu-usage(RR%tcall_if_acceptedR(R
R#((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pytexchange6scCs~|jjt|j}|j|j}d}|dk	r[|j||t}n|dk	rz|j	j
|ndS(N(RtpingtintRt_get_cpu_usageR	tNoneRtACCUMULATOR_KEYRtappend(R
t
new_timestampt
new_cpu_usaget	step_data((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pyR:s
c
Csd}y(t|d}|j}WdQXWn"tk
rRtjd|dSX|jd}t|d}td|D}|j	j
t}|dk	r||dkr||d}	|	dkr|	||dt|	}qn|j	j
t||f|S(sG
        This method computes the CPU usage from C{stat_file}.
        trNs<Could not open %s for reading, CPU usage cannot be computed.iicss|]}t|VqdS(N(R+(t.0ti((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pys	<genexpr>_si(R-topentreadlinetIOErrortloggingterrortsplitR+tsumRtgettLAST_MESURE_KEYtfloattset(
R
t	stat_filetresulttftstattfieldstidletvaluetprevioustdelta((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pyR,Fs$
	
"Ni(t__name__t
__module__t__doc__tpersist_nametscopeR-trun_intervalttimeRRR"tFalseRR)RR,(((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pyRs			(RPR9tlandscape.accumulateRtlandscape.lib.monitorRtlandscape.monitor.pluginRR>R.R(((s>/usr/lib/python2.7/dist-packages/landscape/monitor/cpuusage.pyt<module>s