SNMP table with related values in several rows

Post general support questions here that do not specifically fall into the Linux or Windows categories.

Moderators: Developers, Moderators

Post Reply
IlPini
Posts: 33
Joined: Thu Jun 05, 2008 11:52 am
Location: Rome, Italy

SNMP table with related values in several rows

Post by IlPini »

*Not urgent*. :-) I do this for learning first, production work later.

I'm trying to build a template for Xerox SNMP printers.

I'd like to use pure SNMP queries.

The problem I'm facing right now is in XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailTable (.1.3.6.1.4.1.253.8.53.13.2)

Can I extract related values from the same column in several rows (as opposed to the usual different columns in the same row)?

For example, can I pull out data in a way suitable for a graph template sporting max & current document handler feed roll? The OIDs in question are .1.3.6.1.4.1.253.8.53.13.2.1.6.16.20.1 and .1.3.6.1.4.1.253.8.53.13.2.1.6.16.24.1

I've already managed to succesfully query the whole table by a three-dimensional index using OID/REGEX, but I cannot see a pure-SNMP-query way to pull data from two or more rows.

I may resort to script queries in the end, but I need to study more for that.

Thanks.


Typical table for a Xerox Workcentre Pro 55:

Code: Select all

SNMP table: XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailTable

                       Type Index RowStatus                   UnitClass Unit ValueInteger                            ValueOID                                                                                               ValueString Description
        deviceLifetimeUsage     1    active       classHrDevTrafficUnit   27       463436 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                              "C13 - Total Printed Images"           ?
        deviceLifetimeUsage     2    active       classHrDevTrafficUnit   27         9056 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                           "C13(po) - Total Printed Images Since Power On"           ?
        deviceLifetimeUsage     7    active       classHrDevTrafficUnit   27       184891 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                          "C2 - Total Marked Print Images"           ?
        deviceLifetimeUsage     8    active       classHrDevTrafficUnit   28       145668 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                 "C5 - Total Print Sheets"           ?
        deviceLifetimeUsage     9    active       classHrDevTrafficUnit   28        39243 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                          "C8 - Total Duplex Print Sheets"           ?
        deviceLifetimeUsage    10    active       classHrDevTrafficUnit   28         1120 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                          "C11 - Total Large Print Sheets"           ?
        deviceLifetimeUsage    20    active       classHrDevTrafficUnit   27            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                  "C56 - Total Successful Images Received From Server FAX"           ?
        deviceLifetimeUsage    11    active       classHrDevTrafficUnit   27            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                 "C43 - Total Successful Network Scanning Image Transfers"           ?
        deviceLifetimeUsage    12    active       classHrDevTrafficUnit   27         3199 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                         "C45 - Total Successful Image Transfers to Email"           ?
        deviceLifetimeUsage    18    active       classHrDevTrafficUnit   27            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                          "C44 - Total Successful Internet Fax Image Transfers to Network"           ?
        deviceLifetimeUsage     3    active       classHrDevTrafficUnit   27       275049 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                           "C1 - Total Marked Copy Images"           ?
        deviceLifetimeUsage     4    active       classHrDevTrafficUnit   28       248951 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                  "C4 - Total Copy Sheets"           ?
        deviceLifetimeUsage     5    active       classHrDevTrafficUnit   28        26098 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                          "C7 - Total 2 Sided Copy Sheets"           ?
        deviceLifetimeUsage     6    active       classHrDevTrafficUnit   28         2726 XEROX-GENERAL-TC::xcmGenZeroDotZero      "C10 - Total Large Copy Sheets (i.e. sheets greater than 15 inches or 380 mm in the feed direction)"           ?
                 deviceName     1    active   classGenOptionValueSyntax   12            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                              "0640696285"           ?
        deviceLifetimeUsage    13    active       classHrDevTrafficUnit   27         6276 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                              "C78 - Total Successful Fax Image Transfers"           ?
        deviceLifetimeUsage    14    active       classHrDevTrafficUnit   27           98 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                           "C74 - Total Marked Fax Images"           ?
        deviceLifetimeUsage    15    active       classHrDevTrafficUnit   28           98 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                          "C71 - Total Fax Sheets Printed"           ?
        deviceLifetimeUsage    16    active       classHrDevTrafficUnit   28            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                  "C72 - Total 2 Sided Fax Sheets Printed"           ?
        deviceLifetimeUsage    17    active       classHrDevTrafficUnit   28            0 XEROX-GENERAL-TC::xcmGenZeroDotZero "C73 - All Large Paper Fax Sheets Printed (i.e. sheets greater than 15\" or 380mm in the feed direction)"           ?
        deviceLifetimeUsage     1    active       classHrDevTrafficUnit   27        19387 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                           "Xerographic Module CRU - Lifetime Impressions"           ?
 deviceMaximumLifetimeLimit     1    active       classHrDevTrafficUnit   27       222000 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                           "Xerographic Module CRU - Maximum Supply Level"           ?
  deviceDaysUntilReplaceMsg     1    active   classGenOptionValueSyntax    3          346 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                       "Xerographic Module CRU - Estimated Days Until EOL"           ?
          deviceReplaceDate     1    active classHrDevCalendarTimeOfDay    0            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                   "2008-04-28,01:00:00.0"           ?
   deviceReplaceWithGeneric     1    active   classGenOptionValueSyntax    8            2 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                             "NULL; blank"           ?
        deviceLifetimeUsage     1    active       classHrDevTrafficUnit   27       154462 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                 "Fuser Module CRU - Lifetime Impressions"           ?
 deviceMaximumLifetimeLimit     1    active       classHrDevTrafficUnit   27       360000 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                 "Fuser Module CRU - Maximum Supply Level"           ?
  deviceDaysUntilReplaceMsg     1    active   classGenOptionValueSyntax    3          347 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                             "Fuser Module CRU - Estimated Days Until EOL"           ?
          deviceReplaceDate     1    active classHrDevCalendarTimeOfDay    0            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                   "2007-06-11,01:00:00.0"           ?
   deviceReplaceWithGeneric     1    active   classGenOptionValueSyntax    8            2 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                             "NULL; blank"           ?
        deviceLifetimeUsage     1    active       classHrDevTrafficUnit   44         7841 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                       "Toner Bottle CRU - Lifetime Usage"           ?
 deviceMaximumLifetimeLimit     1    active       classHrDevTrafficUnit   44        11880 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                 "Toner Bottle CRU - Maximum Supply Level"           ?
  deviceDaysUntilReplaceMsg     1    active   classGenOptionValueSyntax    3           26 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                             "NULL; blank"           ?
          deviceReplaceDate     1    active classHrDevCalendarTimeOfDay    0            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                   "2008-04-24,13:07:51.0"           ?
        deviceLifetimeUsage     1    active       classHrDevTrafficUnit   27       143707 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                   "Document Handler Feed Roll: Lifetime Sheets Sides Fed"           ?
 deviceMaximumLifetimeLimit     1    active       classHrDevTrafficUnit   27       150000 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                             "NULL; blank"           ?
  deviceDaysUntilReplaceMsg     1    active   classGenOptionValueSyntax    3           45 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                             "NULL; blank"           ?
          deviceReplaceDate     1    active classHrDevCalendarTimeOfDay    0            0 XEROX-GENERAL-TC::xcmGenZeroDotZero                                                                                   "1978-01-11,06:09:54.0"           ?
Typical corresponding walk:

Code: Select all

.1.3.6.1.4.1.253.8.53.13.2.1.1.1.20.1 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.1.20.2 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.1.20.7 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.1.20.8 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.1.20.9 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.1.20.10 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.1.20.20 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.8.20.11 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.8.20.12 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.8.20.18 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.9.20.3 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.9.20.4 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.9.20.5 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.9.20.6 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.10.3.1 = INTEGER: deviceName(3)
.1.3.6.1.4.1.253.8.53.13.2.1.1.10.20.13 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.10.20.14 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.10.20.15 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.10.20.16 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.10.20.17 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.12.20.1 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.12.24.1 = INTEGER: deviceMaximumLifetimeLimit(24)
.1.3.6.1.4.1.253.8.53.13.2.1.1.12.27.1 = INTEGER: deviceDaysUntilReplaceMsg(27)
.1.3.6.1.4.1.253.8.53.13.2.1.1.12.57.1 = INTEGER: deviceReplaceDate(57)
.1.3.6.1.4.1.253.8.53.13.2.1.1.12.59.1 = INTEGER: deviceReplaceWithGeneric(59)
.1.3.6.1.4.1.253.8.53.13.2.1.1.13.20.1 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.13.24.1 = INTEGER: deviceMaximumLifetimeLimit(24)
.1.3.6.1.4.1.253.8.53.13.2.1.1.13.27.1 = INTEGER: deviceDaysUntilReplaceMsg(27)
.1.3.6.1.4.1.253.8.53.13.2.1.1.13.57.1 = INTEGER: deviceReplaceDate(57)
.1.3.6.1.4.1.253.8.53.13.2.1.1.13.59.1 = INTEGER: deviceReplaceWithGeneric(59)
.1.3.6.1.4.1.253.8.53.13.2.1.1.14.20.1 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.14.24.1 = INTEGER: deviceMaximumLifetimeLimit(24)
.1.3.6.1.4.1.253.8.53.13.2.1.1.14.27.1 = INTEGER: deviceDaysUntilReplaceMsg(27)
.1.3.6.1.4.1.253.8.53.13.2.1.1.14.57.1 = INTEGER: deviceReplaceDate(57)
.1.3.6.1.4.1.253.8.53.13.2.1.1.16.20.1 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.16.24.1 = INTEGER: deviceMaximumLifetimeLimit(24)
.1.3.6.1.4.1.253.8.53.13.2.1.1.16.27.1 = INTEGER: deviceDaysUntilReplaceMsg(27)
.1.3.6.1.4.1.253.8.53.13.2.1.1.16.57.1 = INTEGER: deviceReplaceDate(57)
.1.3.6.1.4.1.253.8.53.13.2.1.2.1.20.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.1.20.2 = INTEGER: 2
.1.3.6.1.4.1.253.8.53.13.2.1.2.1.20.7 = INTEGER: 7
.1.3.6.1.4.1.253.8.53.13.2.1.2.1.20.8 = INTEGER: 8
.1.3.6.1.4.1.253.8.53.13.2.1.2.1.20.9 = INTEGER: 9
.1.3.6.1.4.1.253.8.53.13.2.1.2.1.20.10 = INTEGER: 10
.1.3.6.1.4.1.253.8.53.13.2.1.2.1.20.20 = INTEGER: 20
.1.3.6.1.4.1.253.8.53.13.2.1.2.8.20.11 = INTEGER: 11
.1.3.6.1.4.1.253.8.53.13.2.1.2.8.20.12 = INTEGER: 12
.1.3.6.1.4.1.253.8.53.13.2.1.2.8.20.18 = INTEGER: 18
.1.3.6.1.4.1.253.8.53.13.2.1.2.9.20.3 = INTEGER: 3
.1.3.6.1.4.1.253.8.53.13.2.1.2.9.20.4 = INTEGER: 4
.1.3.6.1.4.1.253.8.53.13.2.1.2.9.20.5 = INTEGER: 5
.1.3.6.1.4.1.253.8.53.13.2.1.2.9.20.6 = INTEGER: 6
.1.3.6.1.4.1.253.8.53.13.2.1.2.10.3.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.10.20.13 = INTEGER: 13
.1.3.6.1.4.1.253.8.53.13.2.1.2.10.20.14 = INTEGER: 14
.1.3.6.1.4.1.253.8.53.13.2.1.2.10.20.15 = INTEGER: 15
.1.3.6.1.4.1.253.8.53.13.2.1.2.10.20.16 = INTEGER: 16
.1.3.6.1.4.1.253.8.53.13.2.1.2.10.20.17 = INTEGER: 17
.1.3.6.1.4.1.253.8.53.13.2.1.2.12.20.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.12.24.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.12.27.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.12.57.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.12.59.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.13.20.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.13.24.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.13.27.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.13.57.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.13.59.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.14.20.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.14.24.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.14.27.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.14.57.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.16.20.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.16.24.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.16.27.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.2.16.57.1 = INTEGER: 1
.1.3.6.1.4.1.253.8.53.13.2.1.3.1.20.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.1.20.2 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.1.20.7 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.1.20.8 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.1.20.9 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.1.20.10 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.1.20.20 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.8.20.11 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.8.20.12 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.8.20.18 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.9.20.3 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.9.20.4 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.9.20.5 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.9.20.6 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.10.3.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.10.20.13 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.10.20.14 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.10.20.15 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.10.20.16 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.10.20.17 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.12.20.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.12.24.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.12.27.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.12.57.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.12.59.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.13.20.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.13.24.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.13.27.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.13.57.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.13.59.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.14.20.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.14.24.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.14.27.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.14.57.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.16.20.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.16.24.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.16.27.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.3.16.57.1 = INTEGER: active(1)
.1.3.6.1.4.1.253.8.53.13.2.1.4.1.20.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.1.20.2 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.1.20.7 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.1.20.8 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.1.20.9 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.1.20.10 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.1.20.20 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.8.20.11 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.8.20.12 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.8.20.18 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.9.20.3 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.9.20.4 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.9.20.5 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.9.20.6 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.10.3.1 = INTEGER: classGenOptionValueSyntax(3)
.1.3.6.1.4.1.253.8.53.13.2.1.4.10.20.13 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.10.20.14 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.10.20.15 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.10.20.16 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.10.20.17 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.12.20.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.12.24.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.12.27.1 = INTEGER: classGenOptionValueSyntax(3)
.1.3.6.1.4.1.253.8.53.13.2.1.4.12.57.1 = INTEGER: classHrDevCalendarTimeOfDay(6)
.1.3.6.1.4.1.253.8.53.13.2.1.4.12.59.1 = INTEGER: classGenOptionValueSyntax(3)
.1.3.6.1.4.1.253.8.53.13.2.1.4.13.20.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.13.24.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.13.27.1 = INTEGER: classGenOptionValueSyntax(3)
.1.3.6.1.4.1.253.8.53.13.2.1.4.13.57.1 = INTEGER: classHrDevCalendarTimeOfDay(6)
.1.3.6.1.4.1.253.8.53.13.2.1.4.13.59.1 = INTEGER: classGenOptionValueSyntax(3)
.1.3.6.1.4.1.253.8.53.13.2.1.4.14.20.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.14.24.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.14.27.1 = INTEGER: classGenOptionValueSyntax(3)
.1.3.6.1.4.1.253.8.53.13.2.1.4.14.57.1 = INTEGER: classHrDevCalendarTimeOfDay(6)
.1.3.6.1.4.1.253.8.53.13.2.1.4.16.20.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.16.24.1 = INTEGER: classHrDevTrafficUnit(9)
.1.3.6.1.4.1.253.8.53.13.2.1.4.16.27.1 = INTEGER: classGenOptionValueSyntax(3)
.1.3.6.1.4.1.253.8.53.13.2.1.4.16.57.1 = INTEGER: classHrDevCalendarTimeOfDay(6)
.1.3.6.1.4.1.253.8.53.13.2.1.5.1.20.1 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.1.20.2 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.1.20.7 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.1.20.8 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.1.20.9 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.1.20.10 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.1.20.20 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.8.20.11 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.8.20.12 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.8.20.18 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.9.20.3 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.9.20.4 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.9.20.5 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.9.20.6 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.10.3.1 = INTEGER: 12
.1.3.6.1.4.1.253.8.53.13.2.1.5.10.20.13 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.10.20.14 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.10.20.15 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.10.20.16 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.10.20.17 = INTEGER: 28
.1.3.6.1.4.1.253.8.53.13.2.1.5.12.20.1 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.12.24.1 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.12.27.1 = INTEGER: 3
.1.3.6.1.4.1.253.8.53.13.2.1.5.12.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.5.12.59.1 = INTEGER: 8
.1.3.6.1.4.1.253.8.53.13.2.1.5.13.20.1 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.13.24.1 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.13.27.1 = INTEGER: 3
.1.3.6.1.4.1.253.8.53.13.2.1.5.13.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.5.13.59.1 = INTEGER: 8
.1.3.6.1.4.1.253.8.53.13.2.1.5.14.20.1 = INTEGER: 44
.1.3.6.1.4.1.253.8.53.13.2.1.5.14.24.1 = INTEGER: 44
.1.3.6.1.4.1.253.8.53.13.2.1.5.14.27.1 = INTEGER: 3
.1.3.6.1.4.1.253.8.53.13.2.1.5.14.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.5.16.20.1 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.16.24.1 = INTEGER: 27
.1.3.6.1.4.1.253.8.53.13.2.1.5.16.27.1 = INTEGER: 3
.1.3.6.1.4.1.253.8.53.13.2.1.5.16.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.1.20.1 = INTEGER: 463436
.1.3.6.1.4.1.253.8.53.13.2.1.6.1.20.2 = INTEGER: 9056
.1.3.6.1.4.1.253.8.53.13.2.1.6.1.20.7 = INTEGER: 184891
.1.3.6.1.4.1.253.8.53.13.2.1.6.1.20.8 = INTEGER: 145668
.1.3.6.1.4.1.253.8.53.13.2.1.6.1.20.9 = INTEGER: 39243
.1.3.6.1.4.1.253.8.53.13.2.1.6.1.20.10 = INTEGER: 1120
.1.3.6.1.4.1.253.8.53.13.2.1.6.1.20.20 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.8.20.11 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.8.20.12 = INTEGER: 3199
.1.3.6.1.4.1.253.8.53.13.2.1.6.8.20.18 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.9.20.3 = INTEGER: 275049
.1.3.6.1.4.1.253.8.53.13.2.1.6.9.20.4 = INTEGER: 248951
.1.3.6.1.4.1.253.8.53.13.2.1.6.9.20.5 = INTEGER: 26098
.1.3.6.1.4.1.253.8.53.13.2.1.6.9.20.6 = INTEGER: 2726
.1.3.6.1.4.1.253.8.53.13.2.1.6.10.3.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.10.20.13 = INTEGER: 6276
.1.3.6.1.4.1.253.8.53.13.2.1.6.10.20.14 = INTEGER: 98
.1.3.6.1.4.1.253.8.53.13.2.1.6.10.20.15 = INTEGER: 98
.1.3.6.1.4.1.253.8.53.13.2.1.6.10.20.16 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.10.20.17 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.12.20.1 = INTEGER: 19387
.1.3.6.1.4.1.253.8.53.13.2.1.6.12.24.1 = INTEGER: 222000
.1.3.6.1.4.1.253.8.53.13.2.1.6.12.27.1 = INTEGER: 346
.1.3.6.1.4.1.253.8.53.13.2.1.6.12.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.12.59.1 = INTEGER: 2
.1.3.6.1.4.1.253.8.53.13.2.1.6.13.20.1 = INTEGER: 154462
.1.3.6.1.4.1.253.8.53.13.2.1.6.13.24.1 = INTEGER: 360000
.1.3.6.1.4.1.253.8.53.13.2.1.6.13.27.1 = INTEGER: 347
.1.3.6.1.4.1.253.8.53.13.2.1.6.13.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.13.59.1 = INTEGER: 2
.1.3.6.1.4.1.253.8.53.13.2.1.6.14.20.1 = INTEGER: 7841
.1.3.6.1.4.1.253.8.53.13.2.1.6.14.24.1 = INTEGER: 11880
.1.3.6.1.4.1.253.8.53.13.2.1.6.14.27.1 = INTEGER: 26
.1.3.6.1.4.1.253.8.53.13.2.1.6.14.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.16.20.1 = INTEGER: 143707
.1.3.6.1.4.1.253.8.53.13.2.1.6.16.24.1 = INTEGER: 150000
.1.3.6.1.4.1.253.8.53.13.2.1.6.16.27.1 = INTEGER: 45
.1.3.6.1.4.1.253.8.53.13.2.1.6.16.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.7.1.20.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.1.20.2 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.1.20.7 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.1.20.8 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.1.20.9 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.1.20.10 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.1.20.20 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.8.20.11 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.8.20.12 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.8.20.18 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.9.20.3 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.9.20.4 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.9.20.5 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.9.20.6 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.10.3.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.10.20.13 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.10.20.14 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.10.20.15 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.10.20.16 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.10.20.17 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.12.20.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.12.24.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.12.27.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.12.57.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.12.59.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.13.20.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.13.24.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.13.27.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.13.57.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.13.59.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.14.20.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.14.24.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.14.27.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.14.57.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.16.20.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.16.24.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.16.27.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.7.16.57.1 = OID: .0.0.0
.1.3.6.1.4.1.253.8.53.13.2.1.8.1.20.1 = STRING: "C13 - Total Printed Images"
.1.3.6.1.4.1.253.8.53.13.2.1.8.1.20.2 = STRING: "C13(po) - Total Printed Images Since Power On"
.1.3.6.1.4.1.253.8.53.13.2.1.8.1.20.7 = STRING: "C2 - Total Marked Print Images"
.1.3.6.1.4.1.253.8.53.13.2.1.8.1.20.8 = STRING: "C5 - Total Print Sheets"
.1.3.6.1.4.1.253.8.53.13.2.1.8.1.20.9 = STRING: "C8 - Total Duplex Print Sheets"
.1.3.6.1.4.1.253.8.53.13.2.1.8.1.20.10 = STRING: "C11 - Total Large Print Sheets"
.1.3.6.1.4.1.253.8.53.13.2.1.8.1.20.20 = STRING: "C56 - Total Successful Images Received From Server FAX"
.1.3.6.1.4.1.253.8.53.13.2.1.8.8.20.11 = STRING: "C43 - Total Successful Network Scanning Image Transfers"
.1.3.6.1.4.1.253.8.53.13.2.1.8.8.20.12 = STRING: "C45 - Total Successful Image Transfers to Email"
.1.3.6.1.4.1.253.8.53.13.2.1.8.8.20.18 = STRING: "C44 - Total Successful Internet Fax Image Transfers to Network"
.1.3.6.1.4.1.253.8.53.13.2.1.8.9.20.3 = STRING: "C1 - Total Marked Copy Images"
.1.3.6.1.4.1.253.8.53.13.2.1.8.9.20.4 = STRING: "C4 - Total Copy Sheets"
.1.3.6.1.4.1.253.8.53.13.2.1.8.9.20.5 = STRING: "C7 - Total 2 Sided Copy Sheets"
.1.3.6.1.4.1.253.8.53.13.2.1.8.9.20.6 = STRING: "C10 - Total Large Copy Sheets (i.e. sheets greater than 15 inches or 380 mm in the feed direction)"
.1.3.6.1.4.1.253.8.53.13.2.1.8.10.3.1 = STRING: "0640696285"
.1.3.6.1.4.1.253.8.53.13.2.1.8.10.20.13 = STRING: "C78 - Total Successful Fax Image Transfers"
.1.3.6.1.4.1.253.8.53.13.2.1.8.10.20.14 = STRING: "C74 - Total Marked Fax Images"
.1.3.6.1.4.1.253.8.53.13.2.1.8.10.20.15 = STRING: "C71 - Total Fax Sheets Printed"
.1.3.6.1.4.1.253.8.53.13.2.1.8.10.20.16 = STRING: "C72 - Total 2 Sided Fax Sheets Printed"
.1.3.6.1.4.1.253.8.53.13.2.1.8.10.20.17 = STRING: "C73 - All Large Paper Fax Sheets Printed (i.e. sheets greater than 15\" or 380mm in the feed direction)"
.1.3.6.1.4.1.253.8.53.13.2.1.8.12.20.1 = STRING: "Xerographic Module CRU - Lifetime Impressions"
.1.3.6.1.4.1.253.8.53.13.2.1.8.12.24.1 = STRING: "Xerographic Module CRU - Maximum Supply Level"
.1.3.6.1.4.1.253.8.53.13.2.1.8.12.27.1 = STRING: "Xerographic Module CRU - Estimated Days Until EOL"
.1.3.6.1.4.1.253.8.53.13.2.1.8.12.57.1 = STRING: "2008-04-28,01:00:00.0"
.1.3.6.1.4.1.253.8.53.13.2.1.8.12.59.1 = STRING: "NULL; blank"
.1.3.6.1.4.1.253.8.53.13.2.1.8.13.20.1 = STRING: "Fuser Module CRU - Lifetime Impressions"
.1.3.6.1.4.1.253.8.53.13.2.1.8.13.24.1 = STRING: "Fuser Module CRU - Maximum Supply Level"
.1.3.6.1.4.1.253.8.53.13.2.1.8.13.27.1 = STRING: "Fuser Module CRU - Estimated Days Until EOL"
.1.3.6.1.4.1.253.8.53.13.2.1.8.13.57.1 = STRING: "2007-06-11,01:00:00.0"
.1.3.6.1.4.1.253.8.53.13.2.1.8.13.59.1 = STRING: "NULL; blank"
.1.3.6.1.4.1.253.8.53.13.2.1.8.14.20.1 = STRING: "Toner Bottle CRU - Lifetime Usage"
.1.3.6.1.4.1.253.8.53.13.2.1.8.14.24.1 = STRING: "Toner Bottle CRU - Maximum Supply Level"
.1.3.6.1.4.1.253.8.53.13.2.1.8.14.27.1 = STRING: "NULL; blank"
.1.3.6.1.4.1.253.8.53.13.2.1.8.14.57.1 = STRING: "2008-04-24,13:07:51.0"
.1.3.6.1.4.1.253.8.53.13.2.1.8.16.20.1 = STRING: "Document Handler Feed Roll: Lifetime Sheets Sides Fed"
.1.3.6.1.4.1.253.8.53.13.2.1.8.16.24.1 = STRING: "NULL; blank"
.1.3.6.1.4.1.253.8.53.13.2.1.8.16.27.1 = STRING: "NULL; blank"
.1.3.6.1.4.1.253.8.53.13.2.1.8.16.57.1 = STRING: "1978-01-11,06:09:54.0"
IlPini
Posts: 33
Joined: Thu Jun 05, 2008 11:52 am
Location: Rome, Italy

Post by IlPini »

Uhm, maybe I'm attacking this from the wrong angle...

Is this (symbolic) walk useful? I'm not knowledgeable enough yet.
( XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString = .1.3.6.1.4.1.253.8.53.13.2.1.8 )

Code: Select all

XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.1.deviceLifetimeUsage.1 = STRING: "C13 - Total Printed Images"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.1.deviceLifetimeUsage.2 = STRING: "C13(po) - Total Printed Images Since Power On"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.1.deviceLifetimeUsage.7 = STRING: "C2 - Total Marked Print Images"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.1.deviceLifetimeUsage.8 = STRING: "C5 - Total Print Sheets"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.1.deviceLifetimeUsage.9 = STRING: "C8 - Total Duplex Print Sheets"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.1.deviceLifetimeUsage.10 = STRING: "C11 - Total Large Print Sheets"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.1.deviceLifetimeUsage.20 = STRING: "C56 - Total Successful Images Received From Server FAX"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.8.deviceLifetimeUsage.11 = STRING: "C43 - Total Successful Network Scanning Image Transfers"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.8.deviceLifetimeUsage.12 = STRING: "C45 - Total Successful Image Transfers to Email"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.8.deviceLifetimeUsage.18 = STRING: "C44 - Total Successful Internet Fax Image Transfers to Network"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.9.deviceLifetimeUsage.3 = STRING: "C1 - Total Marked Copy Images"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.9.deviceLifetimeUsage.4 = STRING: "C4 - Total Copy Sheets"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.9.deviceLifetimeUsage.5 = STRING: "C7 - Total 2 Sided Copy Sheets"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.9.deviceLifetimeUsage.6 = STRING: "C10 - Total Large Copy Sheets (i.e. sheets greater than 15 inches or 380 mm in the feed direction)"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.10.deviceName.1 = STRING: "0640696285"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.10.deviceLifetimeUsage.13 = STRING: "C78 - Total Successful Fax Image Transfers"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.10.deviceLifetimeUsage.14 = STRING: "C74 - Total Marked Fax Images"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.10.deviceLifetimeUsage.15 = STRING: "C71 - Total Fax Sheets Printed"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.10.deviceLifetimeUsage.16 = STRING: "C72 - Total 2 Sided Fax Sheets Printed"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.10.deviceLifetimeUsage.17 = STRING: "C73 - All Large Paper Fax Sheets Printed (i.e. sheets greater than 15\" or 380mm in the feed direction)"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.12.deviceLifetimeUsage.1 = STRING: "Xerographic Module CRU - Lifetime Impressions"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.12.deviceMaximumLifetimeLimit.1 = STRING: "Xerographic Module CRU - Maximum Supply Level"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.12.deviceDaysUntilReplaceMsg.1 = STRING: "Xerographic Module CRU - Estimated Days Until EOL"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.12.deviceReplaceDate.1 = STRING: "2008-04-28,01:00:00.0"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.12.deviceReplaceWithGeneric.1 = STRING: "NULL; blank"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.13.deviceLifetimeUsage.1 = STRING: "Fuser Module CRU - Lifetime Impressions"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.13.deviceMaximumLifetimeLimit.1 = STRING: "Fuser Module CRU - Maximum Supply Level"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.13.deviceDaysUntilReplaceMsg.1 = STRING: "Fuser Module CRU - Estimated Days Until EOL"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.13.deviceReplaceDate.1 = STRING: "2007-06-11,01:00:00.0"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.13.deviceReplaceWithGeneric.1 = STRING: "NULL; blank"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.14.deviceLifetimeUsage.1 = STRING: "Toner Bottle CRU - Lifetime Usage"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.14.deviceMaximumLifetimeLimit.1 = STRING: "Toner Bottle CRU - Maximum Supply Level"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.14.deviceDaysUntilReplaceMsg.1 = STRING: "NULL; blank"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.14.deviceReplaceDate.1 = STRING: "2008-04-24,13:07:51.0"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.16.deviceLifetimeUsage.1 = STRING: "Document Handler Feed Roll: Lifetime Sheets Sides Fed"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.16.deviceMaximumLifetimeLimit.1 = STRING: "NULL; blank"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.16.deviceDaysUntilReplaceMsg.1 = STRING: "NULL; blank"
XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailValueString.16.deviceReplaceDate.1 = STRING: "1978-01-11,06:09:54.0"
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Post by gandalf »

Please see walkthroughs at the 1st link of my sig. It's more related to SNMP Data Queries, I suppose. So please find this very chapter to see how it's supposed to work
Reinhard
IlPini
Posts: 33
Joined: Thu Jun 05, 2008 11:52 am
Location: Rome, Italy

Post by IlPini »

gandalf wrote:Please see walkthroughs at the 1st link of my sig. It's more related to SNMP Data Queries, I suppose.
[kneeling] That's my primary source of info, [/kneeling] together with the manual.

I have no trouble following it when it comes to tables where related interesting values are on the same row, for example ifTable.

Partial table, edited for clarity:

Code: Select all

SNMP table: IF-MIB::ifTable

 Index                                                       Descr ... InOctets ... OutOctets ...
     1 Xerox Embedded Ethernet Controller, 10/100 Mbps, RJ45, v1.0 ...  3227606 ...    314831 ...
     2        Xerox internal TCP Software Loopback Interface, v2.0 ...       84 ...        84 ...
Partial walk, edited for clarity:

Code: Select all

.1.3.6.1.2.1.2.2.1.1.1 = INTEGER: 1
.1.3.6.1.2.1.2.2.1.1.2 = INTEGER: 2
.1.3.6.1.2.1.2.2.1.2.1 = STRING: Xerox Embedded Ethernet Controller, 10/100 Mbps, RJ45, v1.0
.1.3.6.1.2.1.2.2.1.2.2 = STRING: Xerox internal TCP Software Loopback Interface, v2.0
...
.1.3.6.1.2.1.2.2.1.10.1 = Counter32: 3227606
.1.3.6.1.2.1.2.2.1.10.2 = Counter32: 84
...
.1.3.6.1.2.1.2.2.1.16.1 = Counter32: 314831
.1.3.6.1.2.1.2.2.1.16.2 = Counter32: 84
...
Everything I need is on the row with index (i.e., last part of the numeric OID) 1. I can make a corresponding graph showing InOctets and OutOctets referring to the same interface named "Xerox Embedded Ethernet Controller, 10/100 Mbps, RJ45, v1.0". Just select the right row in the "Create Graphs for this Host" page. No problem with that.


xcmHrDevDetailTable, on the other hand, is built differently: related values are on different rows. Say I want to show document handler feed roll maximum and current lifetime usage, on a graph similar to disk usage.

Partial table, edited for clarity (full table is in my original post):

Code: Select all

SNMP table: XEROX-HOST-RESOURCES-EXT-MIB::xcmHrDevDetailTable

                       Type ... ValueInteger ...                                             ValueString ...
...
        deviceLifetimeUsage ...         7841 ...                     "Toner Bottle CRU - Lifetime Usage" ...
 deviceMaximumLifetimeLimit ...        11880 ...               "Toner Bottle CRU - Maximum Supply Level" ...
  deviceDaysUntilReplaceMsg ...           26 ...                                           "NULL; blank" ...
          deviceReplaceDate ...            0 ...                                 "2008-04-24,13:07:51.0" ...
        deviceLifetimeUsage ...       143707 ... "Document Handler Feed Roll: Lifetime Sheets Sides Fed" ...
 deviceMaximumLifetimeLimit ...       150000 ...                                           "NULL; blank" ...
  deviceDaysUntilReplaceMsg ...           45 ...                                           "NULL; blank" ...
          deviceReplaceDate ...            0 ...                                 "1978-01-11,06:09:54.0" ...
Partial walk, edited for clarity (full walk is in my original post):

Code: Select all

...
.1.3.6.1.4.1.253.8.53.13.2.1.1.14.20.1 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.14.24.1 = INTEGER: deviceMaximumLifetimeLimit(24)
.1.3.6.1.4.1.253.8.53.13.2.1.1.14.27.1 = INTEGER: deviceDaysUntilReplaceMsg(27)
.1.3.6.1.4.1.253.8.53.13.2.1.1.14.57.1 = INTEGER: deviceReplaceDate(57)
.1.3.6.1.4.1.253.8.53.13.2.1.1.16.20.1 = INTEGER: deviceLifetimeUsage(20)
.1.3.6.1.4.1.253.8.53.13.2.1.1.16.24.1 = INTEGER: deviceMaximumLifetimeLimit(24)
.1.3.6.1.4.1.253.8.53.13.2.1.1.16.27.1 = INTEGER: deviceDaysUntilReplaceMsg(27)
.1.3.6.1.4.1.253.8.53.13.2.1.1.16.57.1 = INTEGER: deviceReplaceDate(57)
...
.1.3.6.1.4.1.253.8.53.13.2.1.6.14.20.1 = INTEGER: 7841
.1.3.6.1.4.1.253.8.53.13.2.1.6.14.24.1 = INTEGER: 11880
.1.3.6.1.4.1.253.8.53.13.2.1.6.14.27.1 = INTEGER: 26
.1.3.6.1.4.1.253.8.53.13.2.1.6.14.57.1 = INTEGER: 0
.1.3.6.1.4.1.253.8.53.13.2.1.6.16.20.1 = INTEGER: 143707
.1.3.6.1.4.1.253.8.53.13.2.1.6.16.24.1 = INTEGER: 150000
.1.3.6.1.4.1.253.8.53.13.2.1.6.16.27.1 = INTEGER: 45
.1.3.6.1.4.1.253.8.53.13.2.1.6.16.57.1 = INTEGER: 0
...
.1.3.6.1.4.1.253.8.53.13.2.1.8.14.20.1 = STRING: "Toner Bottle CRU - Lifetime Usage"
.1.3.6.1.4.1.253.8.53.13.2.1.8.14.24.1 = STRING: "Toner Bottle CRU - Maximum Supply Level"
.1.3.6.1.4.1.253.8.53.13.2.1.8.14.27.1 = STRING: "NULL; blank"
.1.3.6.1.4.1.253.8.53.13.2.1.8.14.57.1 = STRING: "2008-04-24,13:07:51.0"
.1.3.6.1.4.1.253.8.53.13.2.1.8.16.20.1 = STRING: "Document Handler Feed Roll: Lifetime Sheets Sides Fed"
.1.3.6.1.4.1.253.8.53.13.2.1.8.16.24.1 = STRING: "NULL; blank"
.1.3.6.1.4.1.253.8.53.13.2.1.8.16.27.1 = STRING: "NULL; blank"
.1.3.6.1.4.1.253.8.53.13.2.1.8.16.57.1 = STRING: "1978-01-11,06:09:54.0"
I regex (can I use it as a verb?..) a 3d index using oid_index_parse. And then what? This is where I get stuck.

Device 16 is the roll in question.
Devices are also the first dimension of my index.

Type 20 means deviceLifetimeUsage.
Type 24 means deviceMaximumLifetimeLimit.
Type 27 means deviceDaysUntilReplaceMsg.
Type 57 means deviceReplaceDate (don't care about this one, yet).
Types are also the second dimension of my index.

1 I tentatively interpret as the marker sub-unit index, as per the Printer MIB (RFC 3805). I cannot say for sure, I'd need a (large, I guess) printer with multiple marker sub-units.
Assuming I'm right, marker sub-units are also the third dimension of my index.

A priori, I cannot tell wether this table will always be the same. It's guaranteed that it won't change unless major hardware reconfiguration occurs. It's obvious it can change between different models/configurations, and this I tested (I have access to two quite different Xerox printer models).

Now, on the "Create Graphs for this Host" page, I can select maximum roll life *or* current roll usage, but not both for the same graph (er... right?.. I'm having doubts right now)

So, unless I lick the query concept (relatively model-independent) and hard-code a query-less template (model- and current configuration-dependent), I'm out of ideas.
Can you see a way to show document handler feed roll maximum and current lifetime usage on just one graph similar to disk usage (blue area, red area)?
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Post by gandalf »

Please send your current XML file. The 3d oid_index_parse is definitively on the right track.
Reinhard
IlPini
Posts: 33
Joined: Thu Jun 05, 2008 11:52 am
Location: Rome, Italy

Post by IlPini »

xerox-hr-ext_DevDetail.xml (Xerox host resources extension, device details)

Code: Select all

<interface>
	<name>Get Xerox SNMP Printer Device Details</name>
	<description>Queries a Xerox printer for a list of monitorable device details</description>
	<oid_index>.1.3.6.1.4.1.253.8.53.13.2.1.8</oid_index>
	<oid_index_parse>OID/REGEXP:^.*\.([0-9]+\.[0-9]+\.[0-9]+)$</oid_index_parse>
	<index_order>xcmHrDevDetailValueString</index_order>
	<index_order_type>numeric</index_order_type>
	<index_title_format>|chosen_order_field|</index_title_format>

	<fields>
		<xcmHrDevDetailIndexes>
			<name>Indexes</name>
			<method>walk</method>
			<source>OID/REGEXP:^.*\.([0-9]+\.[0-9]+\.[0-9]+)$</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.8</oid>
		</xcmHrDevDetailIndexes>
		<xcmHrDevDetailType>
			<name>Type</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.1</oid>
		</xcmHrDevDetailType>
		<xcmHrDevDetailIndex>
			<name>Index</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.2</oid>
		</xcmHrDevDetailIndex>
		<xcmHrDevDetailRowStatus>
			<name>Row Status</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.3</oid>
		</xcmHrDevDetailRowStatus>
		<xcmHrDevDetailUnitClass>
			<name>Unit Class</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.4</oid>
		</xcmHrDevDetailUnitClass>
		<xcmHrDevDetailUnit>
			<name>Unit</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.5</oid>
		</xcmHrDevDetailUnit>
		<xcmHrDevDetailValueIntegerInput>
			<name>Value Integer</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.6</oid>
		</xcmHrDevDetailValueIntegerInput>
		<xcmHrDevDetailValueOID>
			<name>Value OID</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.7</oid>
		</xcmHrDevDetailValueOID>
		<xcmHrDevDetailValueString>
			<name>Value String</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.8</oid>
		</xcmHrDevDetailValueString>
		<xcmHrDevDetailDescription>
			<name>Description</name>
			<method>walk</method>
			<source>value</source>
			<direction>input</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.9</oid>
		</xcmHrDevDetailDescription>
		<xcmHrDevDetailValueInteger>
			<name>Value Integer</name>
			<method>walk</method>
			<source>value</source>
			<direction>output</direction>
			<oid>.1.3.6.1.4.1.253.8.53.13.2.1.6</oid>
		</xcmHrDevDetailValueInteger>
	</fields>
</interface>
I'm not at all sure about how I rigged up index_order, index_order_type and index_title_format, but that's the subject of another post of mine.

By the way, I've included xcmHrDevDetailIndexes and xcmHrDevDetailValueInteger (that is, my index and desired output) as inputs also, in order to see better what I'm doing with my regex (the index) and getting as a result (the output) in the "Create Graphs for this Host" page (I knew I was searching the table looking for a slow-changing value, say, 143xxx). When I get this query straight I may as well remove them (they slow the poller down, I'd guess). This has become my preferred way to write/modify a query. I suggest this could be standard practice for the how-to as a debugging aid. Or, the page itself could (optionally?) include index and output without the need to specify it in the XML file.
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Post by gandalf »

Please use <source>index</source> for the index field like the attached example

Code: Select all

<interface>
        <name>Get Host Processor Load</name>
        <index_order_type>numeric</index_order_type>
        <oid_index>.1.3.6.1.2.1.25.3.3.1.1</oid_index>
        <oid_index_parse>OID/REGEXP:^.*\.([0-9]*)$</oid_index_parse>
        <index_order>hrProcessorFrwID</index_order>
        <index_order_type>numeric</index_order_type>
        <index_title_format>CPU#|chosen_order_field|</index_title_format>

        <fields>
                <hrProcessorFrwID>
                        <name>Index</name>
                        <method>walk</method>
                        <source>index</source>
                        <direction>input</direction>
                </hrProcessorFrwID>
                <hrDeviceDescr>
                        <name>Device Description</name>
                        <method>get</method>
                        <source>value</source>
                        <direction>input</direction>
                        <oid>.1.3.6.1.2.1.25.3.2.1.3</oid>
                </hrDeviceDescr>
                <hrProcessorLoad>
                        <name>Processor Load</name>
                        <method>walk</method>
                        <source>value</source>
                        <direction>output</direction>
                        <oid>.1.3.6.1.2.1.25.3.3.1.2</oid>
                </hrProcessorLoad>
        </fields>
</interface>
For debugging purpose, you may leave off
<index_order>
<index_order_type>
<index_title_format>
and omit all <direction>input fields that are not required. I fear, that using the .8 OID twice will create problems; I did not try yet. Use the <source>index from above instead.
Reinhard
IlPini
Posts: 33
Joined: Thu Jun 05, 2008 11:52 am
Location: Rome, Italy

Post by IlPini »

gandalf wrote:Please use <source>index</source> for the index field
I admit I didn't remember that, even if I did read about it in the documentation. Didn't realize its usefulness, back then.

I also removed several non-essential-right-now fields from my XML file, which now looks like this.

Code: Select all

<interface>
        <name>Get Xerox SNMP Printer Device Details</name>
        <description>Queries a Xerox printer for a list of monitorable device details</description>
        <oid_index>.1.3.6.1.4.1.253.8.53.13.2.1.8</oid_index>
        <oid_index_parse>OID/REGEXP:^.*\.([0-9]+\.[0-9]+\.[0-9]+)$</oid_index_parse>

        <fields>
                <xcmHrDevDetailIndexes>
                        <name>Indexes</name>
                        <method>walk</method>
                        <source>index</source>
                        <direction>input</direction>
                </xcmHrDevDetailIndexes>
                <xcmHrDevDetailValueIntegerInput>
                        <name>Value Integer</name>
                        <method>walk</method>
                        <source>value</source>
                        <direction>input</direction>
                        <oid>.1.3.6.1.4.1.253.8.53.13.2.1.6</oid>
                </xcmHrDevDetailValueIntegerInput>
                <xcmHrDevDetailValueString>
                        <name>Value String</name>
                        <method>walk</method>
                        <source>value</source>
                        <direction>input</direction>
                        <oid>.1.3.6.1.4.1.253.8.53.13.2.1.8</oid>
                </xcmHrDevDetailValueString>
                <xcmHrDevDetailDescription>
                        <name>Description</name>
                        <method>walk</method>
                        <source>value</source>
                        <direction>input</direction>
                        <oid>.1.3.6.1.4.1.253.8.53.13.2.1.9</oid>
                </xcmHrDevDetailDescription>
                <xcmHrDevDetailValueInteger>
                        <name>Value Integer</name>
                        <method>walk</method>
                        <source>value</source>
                        <direction>output</direction>
                        <oid>.1.3.6.1.4.1.253.8.53.13.2.1.6</oid>
                </xcmHrDevDetailValueInteger>
        </fields>
</interface>
I can get single-value graphs out of this query.

gandalf wrote:I fear, that using the .8 OID twice will create problems
Now that's out of the way, and rightly so. :-) How about the .6 OID? xcmHrDevDetailValueIntegerInput is still listed both as an input and an output. Tried output-only XML file, too, with no observable differences, apart from the obvious lack of the "Value Integer" column in the "Create Graphs for this Host" page. Log shows nothing unusual.
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Post by gandalf »

IlPini wrote:I dcan get single-value graphs out of this query.
Is the problem fixed, then? If not, please elaborate. Perhaps I'm too tired today to understand you
Reinhard
IlPini
Posts: 33
Joined: Thu Jun 05, 2008 11:52 am
Location: Rome, Italy

Post by IlPini »

gandalf wrote:Is the problem fixed, then? If not, please elaborate. Perhaps I'm too tired today to understand you
Heh! You have every right to be tired, with all these people pulling at you from all directions... :-)
I remind you I'm in no hurry on this, I'm taking it easy. Anyway, thank you for your time (you don't get thanks often enough, IMHO).

No, the problem is not fixed.

The query itself, even if it was bugged, was actually already working when I posted my original message. Now it works better, of course.

The problem is twofold.
First, I'd like to get *one* single graph from data gathered from *two* rows in my table. These two rows are under different indexes in different devices; moreover, one device could have them and the other not (e.g.: remaining/maximum red toner: a B/W printer would not have them). Instead of fetching different variables from the same chosen row (which is the usual way a query works), I'm trying to fetch the same variable (with two different values) from two chosen rows.
Second, I'm trying to understand if what I'm describing is even possible given the current capabilities of Cacti proper. Trying to understand if I *can* use the query the way I'm trying to. At the moment, I can't think of any way to do that.
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Post by gandalf »

IlPini wrote:Anyway, thank you for your time (you don't get thanks often enough, IMHO).
Thank you for the flowers
The problem is twofold.
First, I'd like to get *one* single graph from data gathered from *two* rows in my table.
This is possible, see e.g. traffic graphs using traffic_ic and traffic_out.
These two rows are under different indexes in different devices; moreover, one device could have them and the other not (e.g.: remaining/maximum red toner: a B/W printer would not have them).
Again, this is doable. There are two approaches
- simply gather all data. If not available, cacti prints out warning and the graph is empty. Nothing dangerous happens here; but it is NOT the recommended solution
- create an "indexed table of <direction>input</direction> values", just like the traffic example. Try to place an indication for "Color Printer" into that table, e.g. by filling specific fields. Now let the user select, if he wants to print "color toner level" even for a b/w printer. This will avoid empty graphs, cause b/w printers will not change to color printers over time :wink:

That all is pure theory but shall convince you that it is possible (at least if I got it right). You may want to post result of a Verbose Query and/or a screenshot from "Create Graphs for this Host" to help me understand better. Unfortunately, I do not own such a device and even if your posts were quite complete, it is hard for me to create an XML out of pure theory
Reinhard
gentoouser
Posts: 5
Joined: Tue Aug 23, 2011 8:46 am

Re: SNMP table with related values in several rows

Post by gentoouser »

I was looking at the same issue; this thread helped me get it working.

Thank you.
Attachments
cacti_host_template_xerox_copiers.xml
(72.12 KiB) Downloaded 254 times
snmp-xerox-impressions.xml
(1.7 KiB) Downloaded 209 times
rickg421
Posts: 6
Joined: Fri Sep 16, 2011 2:12 pm

Re: SNMP table with related values in several rows

Post by rickg421 »

I think this thread is closest to what I'm trying to accomplish. I have an SNMP table and I'd like to graph values in one column for all rows. It's like a processor load table, structured something like:

Code: Select all

Index    Name    5-min-load   1-min-load
1        ABC     24           40
2        CDE     26           45
I've used the SNMP data query to graph values within the same row (like the traffic_in and traffic_out from the ifTable), but this is just different enough to confuse me. Is this possible using the same XML snmp query structure?
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Re: SNMP table with related values in several rows

Post by gandalf »

Please show the results of an snmpwalk against that table along with the OIDs. And tell us, which data you are interested in (all columns or specific columns only)
R.
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests