diff options
Diffstat (limited to 'web/attachments/351231-check_nwstat.diff')
-rw-r--r-- | web/attachments/351231-check_nwstat.diff | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/web/attachments/351231-check_nwstat.diff b/web/attachments/351231-check_nwstat.diff new file mode 100644 index 0000000..810eb9f --- /dev/null +++ b/web/attachments/351231-check_nwstat.diff | |||
@@ -0,0 +1,59 @@ | |||
1 | 48a49 | ||
2 | > VPU, /* check % used space on volume */ | ||
3 | 148a150,151 | ||
4 | > unsigned long used_disk_space=0L; | ||
5 | > unsigned long percent_used_disk_space=0L; | ||
6 | 454a458,484 | ||
7 | > /* check % used space on volume */ | ||
8 | > } else if (vars_to_check==VPU) { | ||
9 | > close(sd); | ||
10 | > my_tcp_connect (server_address, server_port, &sd); | ||
11 | > | ||
12 | > asprintf (&send_buffer,"VMU%s\r\n",volume_name); | ||
13 | > result=send_tcp_request(sd,send_buffer,recv_buffer,sizeof(recv_buffer)); | ||
14 | > if (result!=STATE_OK) | ||
15 | > return result; | ||
16 | > | ||
17 | > if (!strcmp(recv_buffer,"-1\n")) { | ||
18 | > | ||
19 | > asprintf (&output_message,_("CRITICAL - Volume '%s' does not exist!"),volume_name); | ||
20 | > result=STATE_CRITICAL; | ||
21 | > | ||
22 | > } else { | ||
23 | > used_disk_space=strtoul(recv_buffer,NULL,10); | ||
24 | > close(sd); | ||
25 | > my_tcp_connect (server_address, server_port, &sd); | ||
26 | > /* get total volume in MB */ | ||
27 | > asprintf (&send_buffer,"VMS%s\r\n",volume_name); | ||
28 | > result=send_tcp_request(sd,send_buffer,recv_buffer,sizeof(recv_buffer)); | ||
29 | > if (result!=STATE_OK) | ||
30 | > return result; | ||
31 | > total_disk_space=strtoul(recv_buffer,NULL,10); | ||
32 | > /* calculate percent used on volume */ | ||
33 | > percent_used_disk_space=(unsigned long)(((double)used_disk_space/(double)total_disk_space)*100.0); | ||
34 | 455a486,501 | ||
35 | > if (check_critical_value==TRUE && percent_used_disk_space >= critical_value) | ||
36 | > result=STATE_CRITICAL; | ||
37 | > else if (check_warning_value==TRUE && percent_used_disk_space >= warning_value) | ||
38 | > result=STATE_WARNING; | ||
39 | > | ||
40 | > asprintf (&output_message,_("%lu MB (%lu%%) used on volume %s - total %lu MB|Used space in percent on %s=%lu;%lu;%lu;0;100"), | ||
41 | > used_disk_space, | ||
42 | > percent_used_disk_space, | ||
43 | > volume_name, | ||
44 | > total_disk_space, | ||
45 | > volume_name, | ||
46 | > percent_used_disk_space, | ||
47 | > warning_value, | ||
48 | > critical_value | ||
49 | > ); | ||
50 | > } | ||
51 | 1452a1499,1504 | ||
52 | > else if (strncmp(optarg,"VPU",3)==0) { | ||
53 | > vars_to_check=VPU; | ||
54 | > volume_name = strdup (optarg+3); | ||
55 | > if (!strcmp(volume_name,"")) | ||
56 | > volume_name = strdup ("SYS"); | ||
57 | > } | ||
58 | 1628a1681 | ||
59 | > printf (" %s\n", _(" VPU<vol> = percent used space on Volume <vol>")); | ||