25.01.2015 Views

Caché Monitoring Guide - InterSystems Documentation

Caché Monitoring Guide - InterSystems Documentation

Caché Monitoring Guide - InterSystems Documentation

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Generating a WMI <strong>Documentation</strong> Text File<br />

Event<br />

cacheDBWriteFail<br />

cacheWDStop<br />

cacheWDPanic<br />

cacheLockTableFull<br />

cacheProcessFail<br />

cacheECPTroubleDSrv<br />

cacheECPTroubleASrv<br />

cacheAuditLost<br />

cacheLoggedError<br />

cacheLicenseExceed<br />

cacheAppAlert<br />

Description<br />

Database write failure<br />

Write daemon stalling<br />

Write daemon entering panic mode<br />

Lock table full (out of memory)<br />

<strong>Caché</strong> process access violation<br />

ECP data server connection in trouble mode<br />

ECP application server connection in trouble mode<br />

System unable to record audit events<br />

Writing severe error to the console log<br />

License request exceeds available or allowed licenses<br />

Generating an application alert by calling the %Monitor.Alert.External method<br />

There are additional events if you are using Ensemble. See Using WMI with Ensemble for details.<br />

The iscprov.dll handles all communications between WMI and <strong>Caché</strong> and implements both the <strong>Caché</strong> WMI instance provider<br />

and event provider. The <strong>Caché</strong> installation registers the file and puts it in the C:\Program Files\Common<br />

Files\Intersystems\Cache directory.<br />

The WMI service loads the provider DLL when requests are made and may unload it after it has been idle for a period of<br />

time. When the DLL is loaded it initiates communication with <strong>Caché</strong> and starts a ^WMI server process in <strong>Caché</strong>. That<br />

server process is then terminated when the DLL is unloaded. Depending on how often your script or management application<br />

intends to collect information, you may want to change the default “lifetime” period for instance providers, which is only<br />

thirty seconds. Using the WMI CIM Studio from the \root namespace, expand the class hierarchy for __SystemClass,<br />

__CacheControl, and __ObjectProviderCacheControl. Change the value of the ClearAfter property to allow the <strong>Caché</strong> instance<br />

provider to remain loaded for a longer period.<br />

<strong>Caché</strong> writes important messages from the ^WMI server process in the cconsole.log file. It also logs any errors that occur<br />

in the iscprov.dll (which implements the WMI Instance Provider and Event Provider for <strong>Caché</strong>) in the iscwmi.log file in the<br />

\WINDOWS\system32\WBEM\Logs\ directory.<br />

C.2.1 Using WMI with Ensemble<br />

Ensemble also stores its WMI classes in the root\cache namespace in the WMI repository. Once you compile the Ensemble<br />

WMI classes and they are in the WMI repository, you can manage them in the same manner as described in Using WMI<br />

with <strong>Caché</strong>.<br />

The Ensemble_LogEvent class is defined as a subclass of the __ExtrinsicEvent class. Ensemble sends a WMI<br />

Ensemble_LogEvent instance whenever it posts an alert to the Ensemble Event Log.<br />

C.3 Generating a WMI <strong>Documentation</strong> Text File<br />

You can generate a text file of the classes and properties that <strong>InterSystems</strong> provides for WMI by using the doc entry point<br />

of the <strong>Caché</strong> ^WMIMOF routine. For example:<br />

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

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

Saved successfully!

Ooh no, something went wrong!