ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/reports/php/graphs/graphs_config.inc.php
Revision: 1.5
Committed: Thu Feb 10 17:35:58 2005 UTC (19 years, 9 months ago) by tdb
Branch: MAIN
Changes since 1.4: +31 -2 lines
Log Message:
Commit various fixes from skel (Daniel Piddock):

CMS Server:
 - DiskMonitor was overflowing due to using an int variable for the
   inode count. Upped to a long.
 - Updated URL to iscream cms javadoc

RRD graphing:
 - added uptime logging and graph creation
 - diskio - Cope with modern linux device paths
   (eg "ide/host0/bus0/target0/lun0/disc") by replacing / with hex
 - diskio - Cope with windows device paths (eg "0 C: D:") by
   replacing : and space with hex
 - disk - Cope with windows mount points (eg C:\) by
   replacing : and \ with hex
 - net - Cope with windows network "device names". Basically
   the whole network card as it appears in Device Manager,
   not "Local Area Connection"
 - Include total processes (for winhost)

Also modified the PHP code to catch up. Patch slightly modified from that
submitted, but only minor alterations.

Thanks skel!

File Contents

# User Rev Content
1 tdb 1.1 <?
2    
3     # The rrd directory containing the images
4     $imgdir = "/home/pkg/iscream/public_html/graphs";
5 tdb 1.3 $imgwebdir = "/graphs";
6 tdb 1.1
7     # Page appearance
8     $lineColor = "#9999ff";
9    
10     # tidy up the visual names
11     function tidyName($machine_name, $string) {
12     # The name CPU information should be displayed as
13     if($string == "cpu") {
14     return "Processor usage";
15     }
16    
17     # The name Load information should be displayed as
18     if($string == "load") {
19     return "System loads";
20     }
21    
22     # The name Memory information should be displayed as
23     if($string == "mem") {
24     return "Memory usage";
25     }
26    
27     # The name Process information should be displayed as
28     if($string == "proc") {
29     return "Processes";
30     }
31    
32     # The name Swap information should be displayed as
33     if($string == "swap") {
34     return "Swap usage";
35     }
36    
37     # The name User information should be displayed as
38     if($string == "users") {
39     return "User counts";
40     }
41 tdb 1.3
42     # The name Paging information should be displayed as
43     if($string == "paging") {
44     return "Paging";
45     }
46    
47 tdb 1.5 # The name Uptime information should be displayed as
48     if($string == "uptime") {
49     return "Uptime";
50     }
51    
52 tdb 1.1 # Values use for escaping (need to match the perl scripts!)
53     # / converted to a decimal then hex'd
54     $hex_slash = "_2f";
55     # _ converted to a decimal then hex'd
56     $hex_underscore = "_5f";
57 tdb 1.5 # (space) converted to a decimal then hex'd
58     $hex_space = "_20";
59     # : converted to a decimal then hex'd
60     $hex_colon = "_3A";
61     # \ converted to a decimal then hex'd
62     $hex_bslash = "_5C";
63 tdb 1.1
64     # The name Disk information should be displayed as
65     if(preg_match("/^disk-(\S+)$/", $string, $matches)) {
66     $string = preg_replace("/$hex_slash/", "/", $matches[1]);
67 tdb 1.2 $string = preg_replace("/$hex_underscore/", "_", $string);
68 tdb 1.5 $string = preg_replace("/$hex_bslash/", "\\", $string);
69     $string = preg_replace("/$hex_space/", " ", $string);
70     $string = preg_replace("/$hex_colon/", ":", $string);
71 tdb 1.1 return "Disk usage: $string";
72     }
73 tdb 1.4
74     # The name DiskIO information should be displayed as
75     if(preg_match("/^diskio-(\S+)$/", $string, $matches)) {
76 tdb 1.5 $string = preg_replace("/$hex_slash/", "/", $matches[1]);
77     $string = preg_replace("/$hex_underscore/", "_", $string);
78     $string = preg_replace("/$hex_bslash/", "\\", $string);
79     $string = preg_replace("/$hex_space/", " ", $string);
80     $string = preg_replace("/$hex_colon/", ":", $string);
81     return "Disk IO: $string";
82 tdb 1.4 }
83    
84     # The name Network information should be displayed as
85     if(preg_match("/^net-(\S+)$/", $string, $matches)) {
86 tdb 1.5 $string = preg_replace("/$hex_slash/", "/", $matches[1]);
87     $string = preg_replace("/$hex_underscore/", "_", $string);
88     $string = preg_replace("/$hex_bslash/", "\\", $string);
89     $string = preg_replace("/$hex_space/", " ", $string);
90     $string = preg_replace("/$hex_colon/", ":", $string);
91     return "Network usage: $string";
92     }
93    
94     # The name Mail Queue information should be displayed as
95     if(preg_match("/^mailq-(\S+)$/", $string, $matches)) {
96     return "Mail Queue Size: $matches[1]";
97 tdb 1.4 }
98 tdb 1.1
99     # The name Queue information should be displayed as
100     if($machine_name == "i-scream-server" && preg_match("/^\d+$/", $string)) {
101     $readfile = file("/u1/i-scream/databases/$machine_name/$string.def");
102     return "Queue: $readfile[0]";
103     }
104    
105     # Catch all... don't change it
106     return "$string";
107     }
108    
109     # Files to include
110     $titleHTML = "title.inc.php";
111     $bottomHTML = "bottom.inc";
112    
113     # Submission details.
114     $formMethod = "GET";
115     $thisPage = "graphs.php";
116    
117     ?>