This commit is contained in:
fanfuxiaoran 2013-08-28 15:39:49 +08:00
parent 5b26ec4d25
commit 06ca9f7cab
4 changed files with 85 additions and 63 deletions

View File

@ -14,9 +14,9 @@ import org.bench4q.monitor.performance.windows.UDPv4Monitor;
import org.bench4q.monitor.performance.windows.UDPv6Monitor;
public class Main {
/* static {
static {
loadLibraries();
}*/
}
private static void loadLibraries() {
String osName = System.getProperty("os.name").toLowerCase();

View File

@ -1,5 +1,29 @@
package org.bench4q.monitor.files;
public class ReadFile {
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.stereotype.Component;
import org.springframework.util.FileCopyUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Component
@RequestMapping("/Mon")
public class ReadFile {
private String fileNameFile="E:/wxr.xml";
@RequestMapping("/File")
@ResponseBody
public void getFile(OutputStream os) throws IOException{
FileInputStream fileInputStream=new FileInputStream(new File(fileNameFile));
File file=new File(fileNameFile);
// Resource resource=new ClassPathResource(fileNameFile);//;
FileCopyUtils.copy(fileInputStream, os);//
}
}

View File

@ -25,23 +25,23 @@ public class LogicalDiskMonitor extends LinuxFileRead {
freeSpacePercent = new HashMap<String, Double>();
freeMegabytes = new HashMap<String, Double>();
// 閿熸枻鎷烽敓鏁欐椿鍔ㄩ敓鍔垎鎲嬫嫹
// 闁跨喐鏋婚幏鐑芥晸閺佹瑦妞块崝銊晸閸旑偄鍨庨幉瀣
diskTimePercent = new HashMap<String, Double>();
diskReadTimePercent = new HashMap<String, Double>();
diskWriteTimePercent = new HashMap<String, Double>();
// 閿熸枻鎷烽敓鏂ゆ嫹骞抽敓鏂ゆ嫹鐤冾嚳鎲嬫嫹閿燂拷
// 闁跨喐鏋婚幏鐑芥晸閺傘倖瀚归獮鎶芥晸閺傘倖瀚归悿鍐惧毘閹插瀚归柨鐕傛嫹
averageDiskTransferTimeInSecond = new HashMap<String, Double>();
averageDiskReadTimeInSecond = new HashMap<String, Double>();
averageDiskWriteTimeInSecond = new HashMap<String, Double>();
// 閿熸枻鎷烽敓鏂ゆ嫹骞抽敓鏂ゆ嫹閿熸枻鎷烽敓鏂ゆ嫹绾搁敓锟<EFBFBD>
// 闁跨喐鏋婚幏鐑芥晸閺傘倖瀚归獮鎶芥晸閺傘倖瀚归柨鐔告灮閹风兘鏁撻弬銈嗗缁炬悂鏁撻敓锟<EFBFBD>
diskBytesPerSecond = new HashMap<String, Double>();
diskReadBytesPerSecond = new HashMap<String, Double>();
diskWriteBytesPerSecond = new HashMap<String, Double>();
idleTimePercent = new HashMap<String, Double>();
// 骞抽敓鏂ゆ嫹閿熸枻鎷疯皭閿熸枻鎷烽敓锟<EFBFBD>
// 楠炴娊鏁撻弬銈嗗闁跨喐鏋婚幏鐤毉闁跨喐鏋婚幏鐑芥晸閿燂拷
averageDiskQueueLength = new HashMap<String, Double>();
// 閿熸枻鎷峰墠閿熸枻鎷烽敓鍙鎷烽敓鏂ゆ嫹
// 闁跨喐鏋婚幏宄板闁跨喐鏋婚幏鐑芥晸閸欘偆顒查幏鐑芥晸閺傘倖瀚<EFBFBD>
currentDiskQueueLength = new HashMap<String, Double>();
}
@ -142,27 +142,26 @@ public class LogicalDiskMonitor extends LinuxFileRead {
private Map<String, Double> freeSpacePercent;
private Map<String, Double> freeMegabytes;
// 閿熸枻鎷烽敓鏁欐椿鍔ㄩ敓鍔垎鎲嬫嫹
// 闁跨喐鏋婚幏鐑芥晸閺佹瑦妞块崝銊晸閸旑偄鍨庨幉瀣
private Map<String, Double> diskTimePercent;
private Map<String, Double> diskReadTimePercent;
private Map<String, Double> diskWriteTimePercent;
// 閿熸枻鎷烽敓鏂ゆ嫹骞抽敓鏂ゆ嫹鐤冾嚳鎲嬫嫹閿燂拷
// 闁跨喐鏋婚幏鐑芥晸閺傘倖瀚归獮鎶芥晸閺傘倖瀚归悿鍐惧毘閹插瀚归柨鐕傛嫹
private Map<String, Double> averageDiskTransferTimeInSecond;
private Map<String, Double> averageDiskReadTimeInSecond;
private Map<String, Double> averageDiskWriteTimeInSecond;
// 閿熸枻鎷烽敓鏂ゆ嫹骞抽敓鏂ゆ嫹閿熸枻鎷烽敓鏂ゆ嫹绾搁敓锟<EFBFBD> private
// 闁跨喐鏋婚幏鐑芥晸閺傘倖瀚归獮鎶芥晸閺傘倖瀚归柨鐔告灮閹风兘鏁撻弬銈嗗缁炬悂鏁撻敓锟<EFBFBD>private
Map<String, Double> diskBytesPerSecond;
private Map<String, Double> diskReadBytesPerSecond;;
private Map<String, Double> diskWriteBytesPerSecond;
// 閿熸枻鎷烽敓鍙櫨鍒嗘唻鎷<EFBFBD>
// 闁跨喐鏋婚幏鐑芥晸閸欘偆娅ㄩ崚鍡樺敾閹凤拷
private Map<String, Double> idleTimePercent;
// 骞抽敓鏂ゆ嫹閿熸枻鎷疯皭閿熸枻鎷烽敓锟<EFBFBD>
// 楠炴娊鏁撻弬銈嗗闁跨喐鏋婚幏鐤毉闁跨喐鏋婚幏鐑芥晸閿燂拷
private Map<String, Double> averageDiskQueueLength;
// 閿熸枻鎷峰墠閿熸枻鎷烽敓鍙鎷烽敓鏂ゆ嫹
// 闁跨喐鏋婚幏宄板闁跨喐鏋婚幏鐑芥晸閸欘偆顒查幏鐑芥晸閺傘倖瀚<EFBFBD>
private Map<String, Double> currentDiskQueueLength;
public LogicalDiskModel getLogicalDiskInfo(int idleTime)
@ -191,31 +190,30 @@ public class LogicalDiskMonitor extends LinuxFileRead {
str = token.nextToken();
String elem = str;
instances_temp.add(elem);// 閸掑棗灏崥宥呯摟
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘愁嚢绾句胶娲忛惃鍕偧閺佸府绱濋幋鎰鐎瑰本鍨氱拠鑽ゆ畱閹粯顐奸弫鑸
instances_temp.add(elem);// 闁告帒妫楃亸顖炲触瀹ュ懐鎽<EFBFBD>
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅鎰佸殺缁惧彞鑳跺ú蹇涙儍閸曨剦鍋ч柡浣稿簻缁辨繈骞嬮幇顒<EFBFBD>灇閻庣懓鏈崹姘辨嫚閼姐倖鐣遍柟顒傜帛椤愬ジ寮懜顒婃嫹
readTimes.put(elem, (double) Integer.parseInt(str));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘値楠炴儼顕板鈩冩殶閿涳拷field 6 閳ワ拷 //
// 閸氬牆鑻熼崘娆愵偧閺佽埇锟芥稉杞扮啊閺佸牏宸奸崣顖濆厴娴兼艾鎮庨獮鍓佹祲闁崵娈戠拠璇叉嫲閸愭瑣锟芥禒搴わ拷娑撱倖顐<EFBFBD>K閻ㄥ嫯顕伴崷銊ョ暊閺堬拷绮撶悮顐樀閻炲棗鍩岀壕浣烘磸娑撳绠i崜宥呭讲閼虫垝绱伴崣妯诲灇娑擄拷顐<EFBFBD>K閻ㄥ嫯顕伴敍灞惧鐞氼偉顓搁弫甯礄閸滃本甯撻梼鐕傜礆閿涘苯娲滃銈呭涧閺堝绔村<EFBFBD>O閹垮秳缍旈妴鍌濈箹娑擃亜鐓欐担澶哥稑閻儵浜炬潻娆愮壉閻ㄥ嫭鎼锋担婊勬箒婢舵岸顣剁换浣碉拷
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘愁嚢閹靛洤灏惃鍕偧閺佸府绱濋幋鎰鐠囨槒绻冮惃鍕閸栫儤锟藉鈩冩殶閵嗭拷
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅顒佸<EFBFBD>妤犵偞鍎奸鏉库枎閳啯娈堕柨娑虫嫹field 6 闁炽儻鎷<EFBFBD>//
// 闁告艾鐗嗛懟鐔煎礃濞嗘劦鍋ч柡浣藉焽閿熻姤绋夋潪鎵晩闁轰礁鐗忓濂稿矗椤栨繂鍘村ù鍏艰壘閹酣鐛崜浣圭ゲ闂侇叀宕靛鎴犳嫚鐠囧弶瀚查柛鎰懀閿熻姤绂掓惔銈忔嫹濞戞挶鍊栭锟終闁汇劌瀚浼村捶閵娿儳鏆婇柡鍫嫹缁挾鎮闁荤偛妫楅崺宀<EFBFBD>娴g儤纾稿鎾筹梗缁狅綁宕滃闁艰櫕鍨濈槐浼村矗濡鐏囧鎿勬嫹椤愶拷K闁汇劌瀚浼存晬鐏炴儳顤呴悶姘煎亯椤撴悂寮敮顔剧闁告粌鏈敮鎾绘閻曞倻绀嗛柨娑樿嫰濞叉粌顬滈妶鍛锭闁哄牆顦虹粩鏉戔枎椤拷O闁瑰灝绉崇紞鏃堝Υ閸屾繄绠瑰鎿冧簻閻撴瑦鎷呮径鍝ョ闁活厹鍎垫禍鐐交濞嗘劗澹夐柣銊ュ閹奸攱鎷呭畳濠埖宀搁鍓佹崲娴g<EFBFBD>
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅鎰佸殺闁归潧娲ょ亸顖炴儍閸曨剦鍋ч柡浣稿簻缁辨繈骞嬮幇顒<EFBFBD>灇閻犲洦妲掔换鍐儍閸曨剙顣婚柛鏍劋閿熻棄鈻庨埄鍐闁靛棴鎷<EFBFBD>
secRead.put(elem,(double)Integer.parseInt(str));
// secRead.put(elem, (double) Integer.parseInt(str));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘愁嚢閼鸿精鍨傞惃鍕嚑缁夋帗鏆熼敍宀冪箹閺勵垱澧嶉張澶庮嚢閹垮秳缍旈幍锟藉С鐠愬湱娈戝В顐ゎ瀾閺佸府绱欓悽鈺沖make_request()閸掔櫝nd_that_request_last()濞村鍣洪敍澶堬拷
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅鎰佸殺闁奸缚绮鹃崹鍌炴儍閸曨剦鍤戠紒澶嬪笚閺嗙喖鏁嶅畝鍐闁哄嫷鍨辨晶宥夊嫉婢跺寒鍤柟鍨С缂嶆棃骞嶉敓钘壭悹鎰贡濞堟垵袙椤愩値鐎鹃柡浣稿簻缁辨瑩鎮介埡娌杕ake_request()闁告帞娅漬d_that_request_last()婵炴潙顑夐崳娲晬婢跺牞鎷<EFBFBD>
readTmie.put(elem, (double) Integer.parseInt(str));// ms
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘晸鐎瑰本鍨氶惃鍕偧閺佸府绱濋幋鎰閸愭瑥鐣幋鎰畱閹粯顐奸弫鑸
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅<EFBFBD>櫢閻庣懓鏈崹姘舵儍閸曨剦鍋ч柡浣稿簻缁辨繈骞嬮幇顒<EFBFBD>灇闁告劖鐟ラ悾顒勫箣閹邦喗鐣遍柟顒傜帛椤愬ジ寮懜顒婃嫹
str = token.nextToken();
writeTimes.put(elem, (double) Integer.parseInt(str));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘晸閹靛洤灏惃鍕偧閺佸府绱濋幋鎰閸愭瑦澧栭崠鐑橈拷濞嗏剝鏆熼妴锟<EFBFBD> secWrite.put(elem,(double)Integer.parseInt(str));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘晸閼鸿精鍨傞惃鍕嚑缁夋帗鏆熼敍宀冪箹閺勵垱澧嶉張澶婂晸閹垮秳缍旈幍锟藉С鐠愬湱娈戝В顐ゎ瀾閺佸府绱欓悽鈺沖make_request()閸掔櫝nd_that_request_last()濞村鍣洪敍澶堬拷
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅<EFBFBD>櫢闁归潧娲ょ亸顖炴儍閸曨剦鍋ч柡浣稿簻缁辨繈骞嬮幇顒<EFBFBD>灇闁告劖鐟晶鏍礌閻戞鎷锋繛鍡忓墲閺嗙喖濡撮敓锟<EFBFBD>
secWrite.put(elem,(double)Integer.parseInt(str));
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅<EFBFBD>櫢闁奸缚绮鹃崹鍌炴儍閸曨剦鍤戠紒澶嬪笚閺嗙喖鏁嶅畝鍐闁哄嫷鍨辨晶宥夊嫉婢跺鏅搁柟鍨С缂嶆棃骞嶉敓钘壭悹鎰贡濞堟垵袙椤愩値鐎鹃柡浣稿簻缁辨瑩鎮介埡娌杕ake_request()闁告帞娅漬d_that_request_last()婵炴潙顑夐崳娲晬婢跺牞鎷<EFBFBD>
writeTime.put(elem, (double) Integer.parseInt(str));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍娆<EFBFBD>O閻ㄥ嫬缍嬮崜宥堢箻鎼达讣绱濋崣顏呮箒鏉瑤閲滈崺鐔风安鐠囥儲妲<EFBFBD>閵嗗倸缍嬬拠閿嬬湴鐞氼偂姘紒娆擄拷瑜版挾娈憆equest_queue_t閺冭泛顤冮崝鐘叉嫲鐠囬攱鐪扮<EFBFBD>灞惧灇閺冭泛鍣虹亸蹇嬶拷
currentDiskQueueLength_p.put(elem,
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅锟絆闁汇劌瀚紞瀣礈瀹ュ牏绠婚幖杈捐缁辨繈宕i畳閺夆晜鐟ら柌婊堝春閻旈瀹夐悹鍥ュ劜濡诧拷闁靛棗鍊哥紞瀣嫚闁垮婀撮悶姘煎亗濮橈妇绱掑鎿勬嫹鐟滅増鎸惧鎲唀quest_queue_t闁哄啳娉涢·礉閻樺弶瀚查悹鍥敱閻壆锟界仦鎯х亣闁哄啳娉涢崳铏逛焊韫囧<EFBFBD>
currentDiskQueueLength_p.put(elem,
(double) Integer.parseInt(str));
str = token.nextToken();// 缁楋拷0娑擃亜鐓欓敍姘冲С/O閹垮秳缍旀稉濠勬畱濮偆顬戦弫甯礉鏉瑤閲滈崺鐔剁窗婢х偤鏆遍崣顏囶渽field
// 9娑撳秳璐<EFBFBD>閵嗭拷
str = token.nextToken();// 缁楋拷1娑擃亜鐓欓敍姘閺夊喛绱濋懞鍗炴躬I/O閹垮秳缍旀稉濠勬畱濮偆顬戦弫甯礉閸劍鐦<EFBFBD>O瀵拷顬婇敍瀛<EFBFBD>O缂佹挻娼敍瀛<EFBFBD>O閸氬牆鑻熼弮鎯扮箹娑擃亜鐓欓柈鎴掔窗婢х偛濮為妴鍌濈箹閸欘垯浜掔紒姗<EFBFBD>O鐎瑰本鍨氶弮鍫曟閸滃苯鐡ㄩ崒銊亝娴滄稑褰叉禒銉х柈缁夘垳娈戦幓鎰返娑擄拷閲滄笟鍨焺閻ㄥ嫭绁撮柌蹇旂垼閸戯拷
str = token.nextToken();// 缂佹<EFBFBD>濞戞搩浜滈悡娆撴晬濮樺啿小闁革腹鍟<EFBFBD>O闁瑰灝绉崇紞鏃<EFBFBD>婵犲嫭鐣辨慨锝庡亞椤垿寮敮顔剧閺夆晜鐟ら柌婊堝春閻斿墎绐楀褏鍋ら弳閬嶅矗椤忓浂娓絝ield
// 9濞戞挸绉崇拹锟介柕鍡
str = token.nextToken();// 缂佹<EFBFBD>濞戞搩浜滈悡娆撴晬濮橆剙顬濋柡澶婂枦缁辨繈鎳為崡鐐磋含I/O闁瑰灝绉崇紞鏃<EFBFBD>婵犲嫭鐣辨慨锝庡亞椤垿寮敮顔剧闁革负鍔嶉惁鈥斥枎椤拷O鐎殿噯鎷烽濠囨晬鐎涳拷O缂備焦鎸诲晬鐎涳拷O闁告艾鐗嗛懟鐔煎籍閹壆绠瑰鎿冧簻閻撴瑩鏌堥幋鎺旂獥濠呭仜婵偤濡撮崒婵堢闁告瑯鍨禍鎺旂磼濮楋拷O閻庣懓鏈崹姘跺籍閸洘锛熼柛婊冭嫰閻°劑宕掗妸鈺佷簼濞存粍绋戣ぐ鍙夌閵壯呮焾缂佸鍨冲箵閹邦亞杩斿鎿勬嫹闁叉粍绗熼崹顔肩労闁汇劌瀚粊鎾煂韫囨梻鍨奸柛鎴
}
}
@ -232,37 +230,35 @@ public class LogicalDiskMonitor extends LinuxFileRead {
if (!(str.equals("0"))) {
str = token.nextToken();
String elem = str;
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘愁嚢绾句胶娲忛惃鍕偧閺佸府绱濋幋鎰鐎瑰本鍨氱拠鑽ゆ畱閹粯顐奸弫鑸
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅鎰佸殺缁惧彞鑳跺ú蹇涙儍閸曨剦鍋ч柡浣稿簻缁辨繈骞嬮幇顒<EFBFBD>灇閻庣懓鏈崹姘辨嫚閼姐倖鐣遍柟顒傜帛椤愬ジ寮懜顒婃嫹
readTimes.put(elem,
(double) (Integer.parseInt(str) - readTimes
.get(elem)));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘値楠炴儼顕板鈩冩殶閿涳拷field 6 閳ワ拷 //
// 閸氬牆鑻熼崘娆愵偧閺佽埇锟芥稉杞扮啊閺佸牏宸奸崣顖濆厴娴兼艾鎮庨獮鍓佹祲闁崵娈戠拠璇叉嫲閸愭瑣锟芥禒搴わ拷娑撱倖顐<EFBFBD>K閻ㄥ嫯顕伴崷銊ョ暊閺堬拷绮撶悮顐樀閻炲棗鍩岀壕浣烘磸娑撳绠i崜宥呭讲閼虫垝绱伴崣妯诲灇娑擄拷顐<EFBFBD>K閻ㄥ嫯顕伴敍灞惧鐞氼偉顓搁弫甯礄閸滃本甯撻梼鐕傜礆閿涘苯娲滃銈呭涧閺堝绔村<EFBFBD>O閹垮秳缍旈妴鍌濈箹娑擃亜鐓欐担澶哥稑閻儵浜炬潻娆愮壉閻ㄥ嫭鎼锋担婊勬箒婢舵岸顣剁换浣碉拷
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘愁嚢閹靛洤灏惃鍕偧閺佸府绱濋幋鎰鐠囨槒绻冮惃鍕閸栫儤锟藉鈩冩殶閵嗭拷
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅顒佸<EFBFBD>妤犵偞鍎奸鏉库枎閳啯娈堕柨娑虫嫹field 6 闁炽儻鎷<EFBFBD>//
// 闁告艾鐗嗛懟鐔煎礃濞嗘劦鍋ч柡浣藉焽閿熻姤绋夋潪鎵晩闁轰礁鐗忓濂稿矗椤栨繂鍘村ù鍏艰壘閹酣鐛崜浣圭ゲ闂侇叀宕靛鎴犳嫚鐠囧弶瀚查柛鎰懀閿熻姤绂掓惔銈忔嫹濞戞挶鍊栭锟終闁汇劌瀚浼村捶閵娿儳鏆婇柡鍫嫹缁挾鎮闁荤偛妫楅崺宀<EFBFBD>娴g儤纾稿鎾筹梗缁狅綁宕滃闁艰櫕鍨濈槐浼村矗濡鐏囧鎿勬嫹椤愶拷K闁汇劌瀚浼存晬鐏炴儳顤呴悶姘煎亯椤撴悂寮敮顔剧闁告粌鏈敮鎾绘閻曞倻绀嗛柨娑樿嫰濞叉粌顬滈妶鍛锭闁哄牆顦虹粩鏉戔枎椤拷O闁瑰灝绉崇紞鏃堝Υ閸屾繄绠瑰鎿冧簻閻撴瑦鎷呮径鍝ョ闁活厹鍎垫禍鐐交濞嗘劗澹夐柣銊ュ閹奸攱鎷呭畳濠埖宀搁鍓佹崲娴g<EFBFBD>
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅鎰佸殺闁归潧娲ょ亸顖炴儍閸曨剦鍋ч柡浣稿簻缁辨繈骞嬮幇顒<EFBFBD>灇閻犲洦妲掔换鍐儍閸曨剙顣婚柛鏍劋閿熻棄鈻庨埄鍐闁靛棴鎷<EFBFBD>
secRead.put(elem, Integer.parseInt(str) - secRead.get(elem));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘愁嚢閼鸿精鍨傞惃鍕嚑缁夋帗鏆熼敍宀冪箹閺勵垱澧嶉張澶庮嚢閹垮秳缍旈幍锟藉С鐠愬湱娈戝В顐ゎ瀾閺佸府绱欓悽鈺沖make_request()閸掔櫝nd_that_request_last()濞村鍣洪敍澶堬拷
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅鎰佸殺闁奸缚绮鹃崹鍌炴儍閸曨剦鍤戠紒澶嬪笚閺嗙喖鏁嶅畝鍐闁哄嫷鍨辨晶宥夊嫉婢跺寒鍤柟鍨С缂嶆棃骞嶉敓钘壭悹鎰贡濞堟垵袙椤愩値鐎鹃柡浣稿簻缁辨瑩鎮介埡娌杕ake_request()闁告帞娅漬d_that_request_last()婵炴潙顑夐崳娲晬婢跺牞鎷<EFBFBD>
readTmie.put(elem,
Integer.parseInt(str) - readTmie.get(elem));// ms
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘晸鐎瑰本鍨氶惃鍕偧閺佸府绱濋幋鎰閸愭瑥鐣幋鎰畱閹粯顐奸弫鑸
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅<EFBFBD>櫢閻庣懓鏈崹姘舵儍閸曨剦鍋ч柡浣稿簻缁辨繈骞嬮幇顒<EFBFBD>灇闁告劖鐟ラ悾顒勫箣閹邦喗鐣遍柟顒傜帛椤愬ジ寮懜顒婃嫹
writeTimes.put(elem,
Integer.parseInt(str) - writeTimes.get(elem));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘値楠炶泛鍟撶<EFBFBD>灞惧灇濞嗏剝鏆<EFBFBD>-----閸氬牆鑻熼崘娆愵偧閺佽埇锟<EFBFBD>
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘晸閹靛洤灏惃鍕偧閺佸府绱濋幋鎰閸愭瑦澧栭崠鐑橈拷濞嗏剝鏆熼妴锟<EFBFBD>
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅顒佸<EFBFBD>妤犵偠娉涢崯鎾讹拷鐏炴儳鐏囨繛鍡忓墲閺嗭拷-----闁告艾鐗嗛懟鐔煎礃濞嗘劦鍋ч柡浣藉焽閿燂拷
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅<EFBFBD>櫢闁归潧娲ょ亸顖炴儍閸曨剦鍋ч柡浣稿簻缁辨繈骞嬮幇顒<EFBFBD>灇闁告劖鐟晶鏍礌閻戞鎷锋繛鍡忓墲閺嗙喖濡撮敓锟<EFBFBD>
secWrite.put(elem,
Integer.parseInt(str) - secWrite.get(elem));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍姘晸閼鸿精鍨傞惃鍕嚑缁夋帗鏆熼敍宀冪箹閺勵垱澧嶉張澶婂晸閹垮秳缍旈幍锟藉С鐠愬湱娈戝В顐ゎ瀾閺佸府绱欓悽鈺沖make_request()閸掔櫝nd_that_request_last()濞村鍣洪敍澶堬拷
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅<EFBFBD>櫢闁奸缚绮鹃崹鍌炴儍閸曨剦鍤戠紒澶嬪笚閺嗙喖鏁嶅畝鍐闁哄嫷鍨辨晶宥夊嫉婢跺鏅搁柟鍨С缂嶆棃骞嶉敓钘壭悹鎰贡濞堟垵袙椤愩値鐎鹃柡浣稿簻缁辨瑩鎮介埡娌杕ake_request()闁告帞娅漬d_that_request_last()婵炴潙顑夐崳娲晬婢跺牞鎷<EFBFBD>
writeTime.put(elem,
Integer.parseInt(str) - writeTime.get(elem));
str = token.nextToken();// 缁楋拷娑擃亜鐓欓敍娆<EFBFBD>O閻ㄥ嫬缍嬮崜宥堢箻鎼达讣绱濋崣顏呮箒鏉瑤閲滈崺鐔风安鐠囥儲妲<EFBFBD>閵嗗倸缍嬬拠閿嬬湴鐞氼偂姘紒娆擄拷瑜版挾娈憆equest_queue_t閺冭泛顤冮崝鐘叉嫲鐠囬攱鐪扮<EFBFBD>灞惧灇閺冭泛鍣虹亸蹇嬶拷
str = token.nextToken();// 缂佹鎷峰鎿冧簻閻撴瑩鏁嶅锟絆闁汇劌瀚紞瀣礈瀹ュ牏绠婚幖杈捐缁辨繈宕i畳閺夆晜鐟ら柌婊堝春閻旈瀹夐悹鍥ュ劜濡诧拷闁靛棗鍊哥紞瀣嫚闁垮婀撮悶姘煎亗濮橈妇绱掑鎿勬嫹鐟滅増鎸惧鎲唀quest_queue_t闁哄啳娉涢·礉閻樺弶瀚查悹鍥敱閻壆锟界仦鎯х亣闁哄啳娉涢崳铏逛焊韫囧<EFBFBD>
currentDiskQueueLength_temp.put(elem,
(double) Integer.parseInt(str));
str = token.nextToken();// 缁楋拷0娑擃亜鐓欓敍姘冲С/O閹垮秳缍旀稉濠勬畱濮偆顬戦弫甯礉鏉瑤閲滈崺鐔剁窗婢х偤鏆遍崣顏囶渽field
// 9娑撳秳璐<EFBFBD>閵嗭拷
str = token.nextToken();// 缁楋拷1娑擃亜鐓欓敍姘閺夊喛绱濋懞鍗炴躬I/O閹垮秳缍旀稉濠勬畱濮偆顬戦弫甯礉閸劍鐦<EFBFBD>O瀵拷顬婇敍瀛<EFBFBD>O缂佹挻娼敍瀛<EFBFBD>O閸氬牆鑻熼弮鎯扮箹娑擃亜鐓欓柈鎴掔窗婢х偛濮為妴鍌濈箹閸欘垯浜掔紒姗<EFBFBD>O鐎瑰本鍨氶弮鍫曟閸滃苯鐡ㄩ崒銊亝娴滄稑褰叉禒銉х柈缁夘垳娈戦幓鎰返娑擄拷閲滄笟鍨焺閻ㄥ嫭绁撮柌蹇旂垼閸戯拷
str = token.nextToken();// 缂佹<EFBFBD>濞戞搩浜滈悡娆撴晬濮樺啿小闁革腹鍟<EFBFBD>O闁瑰灝绉崇紞鏃<EFBFBD>婵犲嫭鐣辨慨锝庡亞椤垿寮敮顔剧閺夆晜鐟ら柌婊堝春閻斿墎绐楀褏鍋ら弳閬嶅矗椤忓浂娓絝ield
// 9濞戞挸绉崇拹锟介柕鍡
str = token.nextToken();// 缂佹<EFBFBD>濞戞搩浜滈悡娆撴晬濮橆剙顬濋柡澶婂枦缁辨繈鎳為崡鐐磋含I/O闁瑰灝绉崇紞鏃<EFBFBD>婵犲嫭鐣辨慨锝庡亞椤垿寮敮顔剧闁革负鍔嶉惁鈥斥枎椤拷O鐎殿噯鎷烽濠囨晬鐎涳拷O缂備焦鎸诲晬鐎涳拷O闁告艾鐗嗛懟鐔煎籍閹壆绠瑰鎿冧簻閻撴瑩鏌堥幋鎺旂獥濠呭仜婵偤濡撮崒婵堢闁告瑯鍨禍鎺旂磼濮楋拷O閻庣懓鏈崹姘跺籍閸洘锛熼柛婊冭嫰閻°劑宕掗妸鈺佷簼濞存粍绋戣ぐ鍙夌閵壯呮焾缂佸鍨冲箵閹邦亞杩斿鎿勬嫹闁叉粍绗熼崹顔肩労闁汇劌瀚粊鎾煂韫囨梻鍨奸柛鎴
}
}
@ -270,7 +266,7 @@ public class LogicalDiskMonitor extends LinuxFileRead {
Runtime rt = Runtime.getRuntime();
Integer time = new Integer(idleTime);
Process p = rt.exec("df -hl ");// df -hl 閺屻儳婀呯涵顒傛磸缁屾椽妫<EFBFBD>
Process p = rt.exec("df -hl ");// df -hl 闁哄被鍎冲兜椤掑倹纾哥紒灞炬そ濡
BufferedReader in = new BufferedReader(new InputStreamReader(
p.getInputStream()));
while ((str = in.readLine()) != null) {

View File

@ -30,12 +30,25 @@ public class MemoryTest {
public static void main(String[] args) {
String urlString = "http://localhost:5555/Monitor/Memory";
String urlString = "http://localhost:5556/Mon/File";
atx = new ClassPathXmlApplicationContext("org/Bench4Q/Monitor/Config/application-context.xml");
MemoryTest memoryTest =(MemoryTest)atx.getBean("memoryTest");
try {
MemoryTest memoryTest =new MemoryTest();
memoryTest.httpRequester=new HttpRequester();
try{
HttpResponse httpResponse = memoryTest.getHttpRequester()
.sendGet(urlString, null, null);
System.out.println(httpResponse.getContent());
System.out.println("ok");
}
catch(Exception e){
System.out.println(e);
}
}
/*try {
HttpResponse httpResponse = memoryTest.getHttpRequester()
.sendGet(urlString, null, null);
@ -52,19 +65,8 @@ public class MemoryTest {
}
}
public void result(MemoryModel memoryModel) {
System.out.println("availableKliloBytes="+memoryModel.getAvailableKiloBytes());
System.out.println("cacheBytes="+memoryModel.getCacheBytes());
System.out.println("committedBytes="+memoryModel.getCommittedBytes());
System.out.println("pageFaultsPerSecond="+memoryModel.getPageFaultsPerSecond());
System.out.println("PageReadsPerSecond="+memoryModel.getPageReadsPerSecond());
System.out.println("pagesInputPerSecond="+memoryModel.getPagesInputPerSecond());
System.out.println("pagesPerSecond="+memoryModel.getPagesPerSecond());
}
*/
public MemoryModel extractLogicalDiskModel(String content)
throws JAXBException {