The State Collection specification provides a mechanism for indicating what additional data diagnostic providers in the system should retain in cases where this additional data could be useful for problem determination or application tuning.
In normal operation, most components should work optimally and not store any operational data that is not needed. There are times, however, when an administrator or automated tool may want a component to collect more information than normal to help in problem determination. This data could then be exposed through a State dump. The State Collection specification was created as a syntax for indicating what additional data the diagnostic providers in the system should retain.
<DiagnosticProviderName regexp>:<AttributeId regexp>=[0|1]Where the DiagnosticProviderName regular expression will make this clause apply to any Diagnostic Provider Name that matches that regular expression. The AttributeId regexp and the boolean value (0 for off, and 1 for on) are stored in the DiagnosticConfig object that each Diagnostic Provider uses. Turning on or off, and processing the clauses left to right allows relatively complex specification. Any specification that is not explicitly turned on is considered to be off. This format is explained further in the following examples.
MyDP:.*=1
.*:.*=1
ConnMgr.*:.*=1
MyDP:PoolInfo.*=1;MyDP:PoolInfo.Db2Pool.*=0
It should be noted that State dumps can return important information even in the case where there is no State Collection Specification turned on for a Diagnostic Provider. Diagnostic Providers frequently have to keep some state information in order to operate. Anything in this category is available in a State dump even if there is no special data collection going on. Using the State Collection Specification may increase the amount of data available.