ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/host/java/DecodeCPU_TXT.java
Revision: 1.14
Committed: Mon Jun 10 14:10:46 2002 UTC (22 years, 3 months ago) by tdb
Branch: MAIN
CVS Tags: HEAD
Changes since 1.13: +0 -0 lines
State: FILE REMOVED
Error occurred while calculating annotation data.
Log Message:
Tidy up of files. These are all old things that are not only no longer used
but are also probably useless to anyone other than us. This saves checking
them out all the time, and makes the "cms/source" tree contain only current
stuff. They'll still exist in the attic's though :)

File Contents

# Content
1 /*
2 * i-scream central monitoring system
3 * http://www.i-scream.org.uk
4 * Copyright (C) 2000-2002 i-scream
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2
9 * of the License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 import java.io.*;
22 import java.util.*;
23
24 class DecodeCPU_TXT {
25
26 XMLFormatter packet;
27
28 public DecodeCPU_TXT(){
29 HashMap data;
30 try {
31 String[] cmd = {"statgrab.pl"};
32 Process proc = Runtime.getRuntime().exec(cmd);
33 BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream()));
34
35 data = new HashMap();
36
37 // Messy, but it'll keep going until no more data :/
38 try {
39 String line = new String();
40 while(true) {
41 line = in.readLine();
42 int split = line.indexOf(' ');
43 data.put(line.substring(0, split), line.substring(split+1));
44 }
45 }
46 catch (Exception e) {}
47
48 String load1 = (String) data.get("packet.load.load1");
49 String load5 = (String) data.get("packet.load.load5");
50 String load15 = (String) data.get("packet.load.load15");
51
52 String totalProcesses = (String) data.get("packet.processes.total");
53 String sleeping = (String) data.get("packet.processes.sleeping");
54 String zombie = (String) data.get("packet.processes.zombie");
55 String stopped = (String) data.get("packet.processes.stopped");
56 String onCPU = (String) data.get("packet.processes.cpu");
57
58 String idle = (String) data.get("packet.cpu.idle");
59 String user = (String) data.get("packet.cpu.user");
60 String kernel = (String) data.get("packet.cpu.kernel");
61 String iowait = (String) data.get("packet.cpu.iowait");
62 String swap = (String) data.get("packet.cpu.swap");
63
64 String real = (String) data.get("packet.memory.real");
65 String free = (String) data.get("packet.memory.free");
66 String swapTotal = (String) data.get("packet.memory.swap_total");
67 String swapFree = (String) data.get("packet.memory.swap_free");
68
69 String osname = (String) data.get("packet.os.name");
70 String osrelease = (String) data.get("packet.os.release");
71 String osplatform = (String) data.get("packet.os.platform");
72 String ossysname = (String) data.get("packet.os.sysname");
73 String osversion = (String) data.get("packet.os.version");
74
75 String usercount = (String) data.get("packet.users.count");
76 String userlist = (String) data.get("packet.users.list");
77
78 packet = new XMLFormatter();
79 packet.addNest("os");
80 packet.addElement("name",osname);
81 packet.addElement("release",osrelease);
82 packet.addElement("platform",osplatform);
83 packet.addElement("sysname",ossysname);
84 packet.addElement("version",osversion);
85 packet.closeNest();
86 packet.addNest("load");
87 packet.addElement("load1",load1);
88 packet.addElement("load5",load5);
89 packet.addElement("load15",load15);
90 packet.closeNest();
91 packet.addNest("processes");
92 packet.addElement("total",totalProcesses);
93 packet.addElement("sleeping",sleeping);
94 packet.addElement("zombie",zombie);
95 packet.addElement("stopped",stopped);
96 packet.addElement("cpu",onCPU);
97 packet.closeNest();
98 packet.addNest("cpu");
99 packet.addElement("idle",idle);
100 packet.addElement("user",user);
101 packet.addElement("kernel",kernel);
102 packet.addElement("iowait",iowait);
103 packet.addElement("swap",swap);
104 packet.closeNest();
105 packet.addNest("memory");
106 packet.addElement("total",real);
107 packet.addElement("free",free);
108 packet.closeNest();
109 packet.addNest("swap");
110 packet.addElement("total",swapTotal);
111 packet.addElement("free",swapFree);
112 packet.closeNest();
113 packet.addNest("users");
114 packet.addElement("count",usercount);
115 packet.addElement("list",userlist);
116 packet.closeNest();
117 packet.addNest("disk");
118 int i=0;
119 while(true) {
120 String check = (String) data.get("packet.disk.p"+i+".attributes.name");
121 if(check == null) {
122 break;
123 }
124 packet.addNest("p"+i);
125 packet.addElement("name",check);
126 packet.addElement("kbytes",(String) data.get("packet.disk.p"+i+".attributes.kbytes"));
127 packet.addElement("used",(String) data.get("packet.disk.p"+i+".attributes.used"));
128 packet.addElement("avail",(String) data.get("packet.disk.p"+i+".attributes.avail"));
129 packet.addElement("mount",(String) data.get("packet.disk.p"+i+".attributes.mount"));
130 packet.closeNest();
131 i++;
132 }
133 packet.closeNest();
134 in.close();
135
136 }
137 catch(Exception e) {
138 System.out.println("ERROR IN DECODE: "+e);
139 e.printStackTrace();
140 }
141
142 }
143
144 public String getItems(){
145 // return the xml
146 return packet.returnXML();
147 }
148
149
150 } // class