[ZBX-4635] keys vfs.dev.* for Solaris agent should be checked and probably fixed Created: 2012 Feb 09  Updated: 2017 May 30  Resolved: 2012 Apr 04

Status: Closed
Project: ZABBIX BUGS AND ISSUES
Component/s: Agent (G), Documentation (D)
Affects Version/s: None
Fix Version/s: 1.8.12rc1, 2.0.0rc3

Type: Incident report Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Fixed Votes: 0
Labels: solaris
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Observed that keys vfs.dev.* are not supported in Solaris agent.
Btw, support of "bps" and "ops" types could be added too. Why they missing?

Note: take a look to the "bps" and "ops" types for Open BSD too, seem it's easy add support and totally unify supported types.
And see documentation - a mark "i" (only for Open BSD) looks ... hmm ... non unified.
Quote: If a parameter is marked with "i", it means that it is ignored.

More details will be added in comments.



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Mar 21 ]

Results of some experiment with agent versions 1.8.10 and 1.8.3
Note: the disc name "sd0" was noticed in the output of the "zabbix_agentd -p" (only in the latest agent)
They will be described in next comment.

  1. zabbix_agentd -V
    Zabbix Agent (daemon) v1.8.10 (revision 24303) (28 December 2011)
    Compilation time: Feb 26 2012 00:44:57
  1. zabbix_agentd -p
    agent.ping [u|1]
    agent.version [s|1.8.10]
    system.localtime [u|1330210124]
    system.run[echo test] [m|ZBX_NOTSUPPORTED]
    web.page.get[localhost,,80] [t|EOF]
    web.page.perf[localhost,,80] [d|0.000000]
    web.page.regexp[localhost,,80,OK] [s|EOF]
    vfs.file.exists[/etc/passwd] [u|1]
    vfs.file.time[/etc/passwd,modify] [u|1330192152]
    vfs.file.size[/etc/passwd] [u|1044]
    vfs.file.regexp[/etc/passwd,root] [s|root:x:0:0:Super-User:/root:/usr/bin/bash]
    vfs.file.regmatch[/etc/passwd,root] [u|1]
    vfs.file.cksum[/etc/passwd] [u|2234160828]
    vfs.file.md5sum[/etc/passwd] [s|db821a53f6c8e9a7f760320766fdff41]
    net.tcp.dns[,zabbix.com] [u|1]
    net.tcp.dns.query[,zabbix.com] [t|zabbix.com SOA ns1.nameresolve.com hostmaster.zabbix.com 2012022512 16384 2048 1048576 2560]
    net.tcp.port[,80] [u|0]
    system.hostname[] [t|openindiana]
    system.uname [t|SunOS openindiana 5.11 oi_151a2 i86pc i386 i86pc Solaris]
    system.users.num [u|2]
    log[logfile] [m|Accessible only as active check!]
    logrt[logfile] [m|Accessible only as active check!]
    eventlog[system] [m|Accessible only as active check!]
    kernel.maxproc [u|9706]
    vfs.fs.size[/,free] [u|10697522688]
    vfs.fs.inode[/,free] [u|20893599]
    vfs.dev.read[sd0,bytes] [u|4860797565]
    vfs.dev.write[sd0,bytes] [u|506519552]
    net.tcp.listen[80] [u|0]
    net.if.in[hme0,bytes] [m|ZBX_NOTSUPPORTED]
    net.if.out[hme0,bytes] [m|ZBX_NOTSUPPORTED]
    net.if.total[hme0,bytes] [m|ZBX_NOTSUPPORTED]
    net.if.collisions[hme0] [m|ZBX_NOTSUPPORTED]
    vm.memory.size[free] [u|36921344]
    proc.num[inetd,,] [u|1]
    proc.mem[inetd,,] [u|4710400]
    system.cpu.switches [u|1164792]
    system.cpu.intr [u|471357]
    system.cpu.util[all,idle] [m|Collector is not started!]
    system.cpu.load[all,avg1] [d|0.144531]
    system.cpu.num[online] [u|1]
    system.swap.size[all,free] [u|1047973888]
    system.swap.in[all] [u|0]
    system.swap.out[all,count] [u|0]
    system.uptime [u|1622]
    system.boottime [u|1330208503]
    net.tcp.service[ssh,127.0.0.1,22] [u|1]
    net.tcp.service.perf[ssh,127.0.0.1,22] [d|0.100118]
  1. zabbix_get -s localhost -k vfs.dev.read
    ZBX_NOTSUPPORTED
  2. zabbix_get -s localhost -k vfs.dev.read[sd0]
    7416595085
  3. zabbix_get -s localhost -k vfs.dev.read[,bytes]
    ZBX_NOTSUPPORTED
  4. zabbix_get -s localhost -k vfs.dev.read[sd0,bytes]
    7416508557
  1. zabbix_get -s localhost -k vfs.dev.read[sd0,bytes]
    7404213389
  2. zabbix_get -s localhost -k vfs.dev.read[sd0,bps]
    ZBX_NOTSUPPORTED
  3. zabbix_get -s localhost -k vfs.dev.read[sd0,operations]
    51591
  4. zabbix_get -s localhost -k vfs.dev.read[sd0,ops]
    ZBX_NOTSUPPORTED
    r# zabbix_get -s localhost -k system.uname
    SunOS openindiana 5.11 oi_151a2 i86pc i386 i86pc Solaris
      • binary downloaded from our download page (for Solaris) ***
  1. ./zabbix_agentd -V
    Zabbix Agent (daemon) v1.8.3 (revision 13936) (16 August 2010)
    Compilation time: Aug 17 2010 12:16:39
  1. ./zabbix_agentd -p
    agent.ping [u|1]
    agent.version [s|1.8.3]
    system.localtime [u|1330214918]
    system.run[] [m|ZBX_NOTSUPPORTED]
    web.page.get[] [t|EOF]
    web.page.perf[] [d|0.000000]
    web.page.regexp[] [s|EOF]
    vfs.file.exists[] [u|1]
    vfs.file.time[] [u|1330212446]
    vfs.file.size[] [u|1081]
    vfs.file.regexp[] [s|root:x:0:0:Super-User:/root:/usr/bin/bash]
    vfs.file.regmatch[] [u|1]
    vfs.file.cksum[] [u|568648398]
    vfs.file.md5sum[] [s|088069045c31d19b529bb951fe0df0ac]
    net.tcp.dns[] [u|1]
    net.tcp.dns.query[] [t|localhost SOA localhost nobody.localhost 42 86400 43200 604800 10800]
    net.tcp.port[] [u|0]
    system.hostname [t|openindiana]
    system.uname [t|SunOS openindiana 5.11 oi_151a2 i86pc i386 i86pc Solaris]
    system.users.num [d|2.000000]
    log[] [m|Accessible only as active check!]
    logrt[] [m|Accessible only as active check!]
    eventlog[] [m|Accessible only as active check!]
    kernel.maxfiles [m|ZBX_NOTSUPPORTED]
    kernel.maxproc [u|9706]
    vfs.fs.size[] [u|10796641792]
    vfs.fs.inode[] [u|21087191]
    vfs.dev.read[] [u|8011907213]
    vfs.dev.write[] [u|1132386816]
    net.tcp.listen[] [d|0.000000]
    net.if.in[] [m|ZBX_NOTSUPPORTED]
    net.if.out[] [m|ZBX_NOTSUPPORTED]
    net.if.total[] [m|ZBX_NOTSUPPORTED]
    net.if.collisions[] [m|ZBX_NOTSUPPORTED]
    vm.memory.size[] [u|14794752]
    proc.num[] [u|1]
    proc.mem[] [u|4710400]
    system.cpu.switches [u|9032398]
    system.cpu.intr [u|1890041]
    system.cpu.util[] [m|Collector is not started!]
    system.cpu.load[] [d|1.265625]
    system.cpu.num[] [u|1]
    system.swap.size[] [u|998797312]
    system.swap.in[] [u|0]
    system.swap.out[] [u|0]
    system.uptime [u|6417]
    system.boottime [u|1330208503]
    net.tcp.service[] [u|1]
    net.tcp.service.perf[] [d|0.153869]
  1. zabbix_get -s localhost -k agent.version
    1.8.3
  2. zabbix_get -s localhost -k vfs.dev.write
    ZBX_NOTSUPPORTED
  3. zabbix_get -s localhost -k vfs.dev.write[sd0]
    1201522176
  4. zabbix_get -s localhost -k vfs.dev.write[sd0,bytes]
    1208312320
  5. zabbix_get -s localhost -k vfs.dev.write[sd0,operations]
    38967
Comment by Oleksii Zagorskyi [ 2012 Mar 21 ]

[1] Would be nice to add support of of "bps" and "ops" types. Then all options will be unified.

Comment by Oleksii Zagorskyi [ 2012 Mar 21 ]

[2] As we see for the keys vfs.dev.* the first parameter (disk device) actually is required at the moment for Solaris OS.

But according our documentation http://www.zabbix.com/documentation/1.8/manual/config/items#zabbix_agent it should be optional!
See additionally ZBX-4556
If it missing, then defaults "all" should be used (as it is working under Linux at the moment)

That's a bug, which should be fixed. I believe it would be easy to include [1] in this fix.

Comment by Andrew Howell [ 2012 Mar 22 ]

Would be really nice if you could use controller/target/disk type devices instead of sd

Comment by Oleksii Zagorskyi [ 2012 Mar 29 ]

Additional note (should be reported as separate ZBX) - observed difference between trunk and 1.8 branch agents executed with "-p" option
Dontneft figured out that it's related to ZBXNEXT-485 (I've not checked)

Namely - we do not see default parameters for supported keys in trunk, but they visible in the 1.8 branch.
It's not related to Solaris, it's general issue, but observed because of this issue.

Comment by dimir [ 2012 Apr 02 ]

Fixed in development branch svn://svn.zabbix.com/branches/dev/ZBX-4635

First parameter is not required anymore, without it it will count "operations" and "bytes" for all available disks. No support for other operations added for now.

<zalex> dev branch successfully tested under the same Openidiana OS:

  1. RES=0; for i in sd0 sd1 sd2; do let RES+=$(./zabbix_get -s 127.0.0.1 -k "vfs.dev.write[$i]"); done; echo $RES; ./zabbix_get -s 127.0.0.1 -k "vfs.dev.write"
    268357120
    268357120
  2. RES=0; for i in sd0 sd1 sd2; do let RES+=$(./zabbix_get -s 127.0.0.1 -k "vfs.dev.write[$i,bytes]"); done; echo $RES; ./zabbix_get -s 127.0.0.1 -k "vfs.dev.write[,bytes]"
    268831744
    268831744
  3. RES=0; for i in sd0 sd1 sd2; do let RES+=$(./zabbix_get -s 127.0.0.1 -k "vfs.dev.write[$i,operations]"); done; echo $RES; ./zabbix_get -s 127.0.0.1 -k "vfs.dev.write[,operations]"
    19261
    19261
  1. RES=0; for i in sd0 sd1 sd2; do ./zabbix_get -s 127.0.0.1 -k "vfs.dev.write[$i,operations]"; done;
    15058
    13
    5308
Comment by Alexander Vladishev [ 2012 Apr 04 ]

(1) The first argument should accept "all"

<dmir> RESOLVED in r26649
<Sasha> CLOSED

Comment by Alexander Vladishev [ 2012 Apr 05 ]

Excellent! Please review my changes in r26670.

Comment by dimir [ 2012 Apr 05 ]

Fixed in pre-1.8.12 r26674, pre-2.0.0 r26681.

Comment by dimir [ 2012 Apr 05 ]

zalex, thanks for testing it!

Comment by Oleksii Zagorskyi [ 2012 Dec 04 ]

My comment dated 2012 Mar 21 23:11 finally reported as separate issue - ZBX-5940

Generated at Fri Mar 29 11:56:27 EET 2024 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.