25.01.2015 Views

Caché Monitoring Guide - InterSystems Documentation

Caché Monitoring Guide - InterSystems Documentation

Caché Monitoring Guide - InterSystems Documentation

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Monitoring</strong> <strong>Caché</strong> Using SNMP<br />

• Finally, the individual data objects contained in that table, including any that are designated as indices.<br />

• The notifications (traps) are defined as individual entries at the same hierarchical level as the “table”. For more<br />

information, see <strong>Caché</strong> SNMP Traps in this appendix.<br />

• <strong>Caché</strong>-specific auxiliary objects sent via notifications (traps) are defined as individual entries at the same hierarchical<br />

level as the “table”. For more information, see <strong>Caché</strong> SNMP Traps in this appendix.<br />

For example, encode the size of a database as:<br />

1.3.6.1.4.1.16563.1.1.3.1.6.4.84.69.83.84.1<br />

This translates to:<br />

iso.org.dod.internet.private.enterprises.intersystems.iscCache.cacheObjects<br />

.cacheDBTab.cacheDBRow.cacheDBSize.TEST(instname).1(DBindex)<br />

B.4.1 Ensemble MIB Structure<br />

In addition to the <strong>Caché</strong> managed object data defined in ISC-CACHE.mib, Ensemble also has the information defined in<br />

ISC-ENSEMBLE.mib available. Ensemble uses the same IANA private enterprise number as <strong>Caché</strong>, 16563 which represents<br />

intersystems.<br />

Below this, Ensemble implements its enterprise private subtree as follows:<br />

• The level below intersystems is the “product” or application ID level. For Ensemble this is .2 (iscEnsemble). This<br />

serves as the MIB module identity.<br />

• The next level is the “object” level, which separates data objects from notifications. For Ensemble, these are: .1<br />

(ensObjects) and .2 (ensTraps). By convention, the intersystems tree uses a brief lowercase prefix added to all<br />

data objects and notification names. For Ensemble this is ens.<br />

• Subsequent levels follow the same implementation as <strong>Caché</strong> described in the <strong>Caché</strong> MIB Structure section.<br />

B.4.2 Extending the <strong>Caché</strong> MIB<br />

Application programmers can add managed object definitions and extend the MIB for which the <strong>Caché</strong> subagent provides<br />

data. This is not intended to be a complete MIB editor or SNMP toolkit; rather, it is a way to add simple application metrics<br />

that you can browse or query through SNMP.<br />

Note:<br />

The objects must follow the basic <strong>Caché</strong> SNMP structure, there is limited support for SNMP table structures (only<br />

integer-valued indexes are supported), and SNMP traps are not created (see the %Monitor.Alert class). A basic<br />

understanding of SNMP structure of management information is helpful.<br />

To create these objects do the following:<br />

1. Create <strong>Caché</strong> object definitions in classes that inherit from the %Monitor.Adaptor class. See the <strong>Caché</strong> Class Reference<br />

for details about adding managed objects to the %Monitor package.<br />

2. Execute an SNMP class method to enable these managed objects in SNMP and create a MIB definition file for management<br />

applications to use. The method to accomplish this is MonitorTools.SNMP.CreateMIB().<br />

See the MonitorTools.SNMP class documentation in the <strong>Caché</strong> Class Reference for details of the CreateMIB() method<br />

parameters.<br />

The method creates a branch of the private enterprise MIB tree for a specific application defined in the %Monitor database.<br />

In addition to creating the actual MIB file for the application, the method also creates an internal outline of the MIB tree.<br />

112 <strong>Caché</strong> <strong>Monitoring</strong> <strong>Guide</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!