CrontabCheck.java
1.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
package com.sitech.ismp.coll.busi;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.log4j.Logger;
import com.sitech.ismp.coll.CollBase;
import com.sitech.util.Formater;
import com.sitech.util.upload.RomoteController;
import com.sitech.util.upload.SSHThread;
public class CrontabCheck {
private static Logger logger = Logger.getLogger(CrontabCheck.class);
public static void main(String[] args) {
String ip = args[0];
String username = args[1];
String password = args[2];
String guid = args[3];
String crontabUser = args[4];
String crontabLog = args[5];
// String cmd = (String) map.get("crontabCmd");
logger.info("Excute job=" + guid + ", log=" + crontabLog);
if(crontabLog == null || crontabLog.trim().equals("")){
return;
}
CollBase collResult = new CollBase();
String unitId = "11-98:" + Formater.neatenunitid(ip) + "-"
+ Formater.neatenunitid(crontabUser) + "-"
+ Formater.neatenunitid(guid);
// IP地址
collResult.addKPI(unitId, "CM-98-11-001-01", ip, "0");
// 所属用户
collResult.addKPI(unitId, "CM-98-11-001-02", crontabUser, "0");
// crontab日志
collResult.addKPI(unitId, "CM-98-11-001-03", crontabLog, "0");
RomoteController tt = null;
try{
tt = new SSHThread(ip, 22, username, password);
tt.initial();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd HH:mm");
String str = formatter.format(new Date());
tt.doCommand("cat "+crontabLog+" | grep \"" + str + "\" | grep \"begin\" | wc -l");
logger.info("cat "+crontabLog+" | grep \"" + str + "\" | grep \"begin\" | wc -l");
String result = tt.getResult().trim();
if (Integer.parseInt(result) > 0) {
collResult.addKPI(unitId, "FM-98-11-001-04", "1", "0");
}else{
collResult.addKPI(unitId, "FM-98-11-001-04", "0", "0");
}
}catch (Exception e) {
e.printStackTrace();
}finally{
if(tt != null){
tt.close();
}
}
collResult.saveKPI2File();
collResult.displayKPI();
}
}