ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/host/java/SystemMonitor.java
(Generate patch)

Comparing projects/cms/source/host/java/SystemMonitor.java (file contents):
Revision 1.6 by tdb, Thu Dec 7 23:21:13 2000 UTC vs.
Revision 1.11 by tdb, Tue May 21 16:47:12 2002 UTC

# Line 1 | Line 1
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   //---PACKAGE DECLARATION---
22  
23   //---IMPORTS---
# Line 8 | Line 28 | import java.util.*;
28  
29   /**
30   * Gathers system information then outputs it as XML
31 < * Collects data based on properties gained from the configurator
32 < * then packages these up using XMLFormatter and outputs them if
33 < * the timeout has passed.
31 > * Collects data based on properties gained from the
32 > * configurator then packages these up using XMLFormatter
33 > * and outputs them if the timeout has passed.
34   *
35   * @author  $Author$
36   * @version $Id$
# Line 24 | Line 44 | class SystemMonitor {
44   //---CONSTRUCTORS---
45  
46   /**
47 < * Public constructor for the class. Takes in a Config object to gain its
48 < * properties from.
47 > * Public constructor for the class. Takes in a Config
48 > * object to gain its properties from.
49   *
50   */  
51   public SystemMonitor( Config config ){
# Line 34 | Line 54 | class SystemMonitor {
54          
55          lastCheck = System.currentTimeMillis();
56          sequence = 1;
37
38
39        // why oh why wont ultra edit let me put Long in the next line? oh its trying to
40        // correct keywords =|
41        try {
42                udpcheckInterval = Long.parseLong(config.getProperty("UDPUpdateTime")) * 1000;
43        }
44        catch ( NumberFormatException e ){
45                System.out.println("The value for UDPUpdateTime is invalid, using a default");
46                // 5 mins
47                udpcheckInterval = 5000 * 60;
48        }
49        // make the check interval into seconds
57          
58      }
59  
# Line 63 | Line 70 | class SystemMonitor {
70          String ip = new String();
71          try {
72              host = InetAddress.getLocalHost().getHostName();
73 <                    ip = InetAddress.getLocalHost().getHostAddress();
73 >            ip = InetAddress.getLocalHost().getHostAddress();
74          } catch(UnknownHostException e) {
75              System.out.println(e);
76          }
77 <                String date = Long.toString(System.currentTimeMillis());
78 <        XMLFormatter xml = new XMLFormatter("packet", "machine_name=\""+host+"\" ip=\""+ip+"\" date=\""+date+"\" seq_no=\""+sequence+"\"");
77 >        String date = Long.toString(System.currentTimeMillis());
78 >        XMLFormatter xml = new XMLFormatter("packet", "machine_name=\""+host+"\" ip=\""+ip+"\" date=\""+date+"\" seq_no=\""+sequence+"\" type=\"data\"");
79  
80 <            // get and decode the data
81 <            DecodeCPU_TXT details = new DecodeCPU_TXT();
80 >        // get and decode the data
81 >        DecodeCPU_TXT details = new DecodeCPU_TXT();
82  
83          // add the decoded info
84          xml.addString(details.getItems());
85          
79        
80        // MUST FIX THIS..!!!!
81        try {
82                long updateIn = ( lastCheck + udpcheckInterval )-System.currentTimeMillis();
83                if ( updateIn > 0 ){
84                        Thread.sleep(updateIn);
85                }
86                else
87                {
88                        Thread.sleep(defaultUpdateTime);
89                }
90        }
91        catch( InterruptedException e ){
92                System.out.println("Sleep interrupted");
93        }
94        
86          // increment sequence.
87          sequence++;
88 <        lastCheck = System.currentTimeMillis();
88 >        // lastCheck = System.currentTimeMillis();
89                  
90          // finally return a string
91          return xml.returnXML();
# Line 108 | Line 99 | class SystemMonitor {
99  
100      private long lastCheck;
101      private int sequence;
111    private long udpcheckInterval;
112    private final long defaultUpdateTime = 60000;
102  
103   //---STATIC ATTRIBUTES---
104  
105 < } // class
105 > } // class

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines