[Xymon] BBwin 0.13 and Mountpoints

Mario rower.master at gmail.com
Mon Jan 6 20:22:49 CET 2014


Hi All,

I´m trying to fix the issue with the graphs creation for windows
mountpoints and bbwin 0.13.

The issue is that we only have graphs for the single drive letters and not
for the mountpoints using the bbwin 0.13.
Another problem is even if the graphs were working we could not have
duplicated names for different drive letters.

Filesystem              1K-blocks     Used       Avail    Capacity
Total Size   Free Space   Type    Status   Mount Point
C                        62811132   49966236   12844896    79%
59.90 GB     12.25 GB   FIXED     green      N/A
D                       116043772    1100880  114942892     0%
110.67 GB    109.62 GB   FIXED     green      N/A
E                       943848444  533077788  410770656    56%
900.12 GB    391.74 GB   FIXED     green      N/A
F                       943848444  495800916  448047528    52%
900.12 GB    427.29 GB   FIXED     green      N/A
J                        20970492   14764648    6205844    70%
20.00 GB      5.92 GB   FIXED     green      N/A
DadosLocal_Diversos_A  1237451772  928809832  308641940    75%
 1.15 TB    294.34 GB   FIXED     green      J:\DadosLocal_Diversos_A\
DadosLocal_Diversos_B  1782825980 1216555488  566270492    68%
 1.66 TB    540.04 GB   FIXED     green      J:\DadosLocal_Diversos_B\
Tempdb                  104869884   54526796   50343088    51%
100.01 GB     48.01 GB   FIXED     green      J:\Tempdb\
Log_Local               199235580  135337320   63898260    67%
190.01 GB     60.94 GB   FIXED     green      J:\Log_Local\


I´ve already modified the winPSclient to consider the mountpoints and If I
use this client I have all the graphs created without any problem.
But I don´t want to continue changing or adding a server agent everytime a
server administrator configure a mountpoint in a server.

WinPSCLient output example where I have all graphs created:
Mon 06 Jan 16:44:55 2014 - Filesystems OK

Filesystem      1K-blocks      Used     Avail  Capacity    Mounted
Summary(Total\Avail GB)
C                52377596  39455096  12922500       75%   /FIXED/C
49.95gb\12.32gb
D                90254332  82510624   7743708       91%   /FIXED/D
86.07gb\7.38gb
F                10482684     91992  10390692        1%   /FIXED/F
10.00gb\9.91gb
F:\ORAARCHIVE    10482684     85608  10397076        1%
/FIXED/F:\ORAARCHIVE 10.00gb\9.92gb
F:\ORABACKUP01   10482684   1638116   8844568       16%
/FIXED/F:\ORABACKUP01 10.00gb\8.43gb
F:\ORADATA01     41939964  31552684  10387280       75%
/FIXED/F:\ORADATA01 40.00gb\9.91gb
I                10482684     84468  10398216        1%   /FIXED/I
10.00gb\9.92gb
I:\ORAARCHIVE     5239804     54772   5185032        1%
/FIXED/I:\ORAARCHIVE 5.00gb\4.94gb
I:\ORABACKUP01   52425724     93492  52332232        0%
/FIXED/I:\ORABACKUP01 50.00gb\49.91gb
I:\ORADATA01    209712124     98292 209613832        0%
/FIXED/I:\ORADATA01 200.00gb\199.90gb
J                10482684     96676  10386008        1%   /FIXED/J
10.00gb\9.90gb
J:\OraArchive     5239804    125628   5114176        2%
/FIXED/J:\OraArchive 5.00gb\4.88gb
J:\ORADATA01    207614972 136793092  70821880       66%
/FIXED/J:\ORADATA01 198.00gb\67.54gb
J:\ORATEMP       41939964  33645564   8294400       80%
/FIXED/J:\ORATEMP 40.00gb\7.91gb



I´ve tried some modifications on do_disk.c but without sucess.
I´ve created a new dsystype called DT_MOUNTPOINT:







*else if (strstr(msg, "Mount Point")) dsystype = DT_MOUNTPOINT;... if (
(dsystype == DT_MOUNTPOINT) && (*(columns[9])) && (strchr(columns[11],
'/')) )                dsystype = DT_MOUNTPOINT;if ( (dsystype ==
DT_MOUNTPOINT) && (*(columns[9])) && (strchr(columns[11], ':'))
)                dsystype = DT_MOUNTPOINT;*
And here at the "case DT_MOUNTPOINT" is where the things are not good.
I´ve tried to get the the column[11] but unfortunately we have backslashes.
I´ve tried several ways, but I´m not good in c as I would like to and after
many many tests I´m asking for a help or if you can put this on Xymon todo
list.
I´m using xymon 4.3.0-beta2 , sorry if this was already solved in the last
version. I´ve checked the do_disk.c file on the last stable but couldn´t
see this solution.














*case DT_MOUNTPOINT:                        diskname =
xstrdup(columns[11]);                        if (strstr(diskname, "N/A"))
{                        diskname =
xstrdup(columns[0]);                        }                        else
{                        diskname =
xstrdup(columns[11]);                        }
/*sprintf(diskname, "/%s", columns[11]);*/                        p =
strchr(columns[4], '%'); if (p) *p = ' ';                        pused =
atoi(columns[4]);                        aused = str2ll(columns[2],
NULL);                        break;*
I´ve tried to use the diskname as columns[0] but doesn´t work for the
mountpoints too.
The case DT_BBWin format that works for the winPSclient doesn´t work if I
use the diskname as columns[0] or columns[11].

case DT_BBWIN:

*diskname = xmalloc(strlen(columns[0])+2);            sprintf(diskname,
"/%s", columns[0]);*



Thanks in advance,
Mario
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.xymon.com/pipermail/xymon/attachments/20140106/43c741c6/attachment.html>


More information about the Xymon mailing list