Stats Collector Plugin

Note: this component is designated "advanced", which means that objects of this type are not expected to be created or altered in most environments. If you believe that such a change is necessary, you may want to contact support in order to understand the potential impact of that change.

This plugin captures server statistics for collection by the Data Metrics Server. This is used for profiling server performance over a long period of time, and for correlation of performance anomalies across multiple servers as a function of time. The data captured by this plugin is remotely accessed and stored by the Data Metrics Server, allowing monitoring consoles or applications to view short and long term graphs of monitored data, comparing the same data on multiple servers as a function of time when investigating performance anomalies or doing capacity planning. Unless the sample-interval or collection-interval property is set too small, this has a negligible impact on performance.

Extraction of server performance data is done by two different plugins. The Periodic Stats Logger plugin writes performance data to a local comma-delimited file, which the user must capture and process. The Stats Collector plugin collects performance data that is accessible remotely via the Metrics Backend. Both plugins capture data from the same sources, although it is suggested to leave the Stats Collector plugin enabled whenever the Data Metrics Server is deployed, while the Periodic Stats Logger plugin should only be enabled if there is a need for locally captured data.
The Stats Collector keeps performance data on disk for a window of time, expecting the Data Metrics Server to remotely fetch the data before the Stats Collector deletes the locally cached data.
The Stats Collector has a fixed set of data that it can capture, where the Periodic Stats Logger can be configured to capture any data present in any entry available from the cn=monitor backend by the configuration of custom statistics.
Stats Collector data that is captured by the Data Metrics Server is stored by the Data Metrics Server such that it can be consumed by a monitoring console or application. The Data Metrics Server initially stores the raw performance data as captured by the Stats Collector, however as the performance data 'ages out' the Data Metrics Server will aggregate the more time-granular data into coarser samples. For example if the Stats Collector is sampling every second, the Data Metrics Server will store the 1-second samples, aggregate the 1-second samples to 1-minute samples after enough 1-second samples have been captured, and then eventually delete the 1-second samples that are more than 2 hours old. This continuous aggregation and pruning means the Data Metrics Server has very granular data for the recent past, and coarser data for time further in the past. The aggregation process tends to smooth short-term spikes in the data, so if a particular sample increased by 50% for 10 seconds and then returned to normal, the absolute magnitude of the increase would be lost in the first aggregation. If performance characterization requires the long-term storage of the absolute magnitude of short-duration spikes, then use of the Periodic Stats Logger is necessary.

Parent Component Properties dsconfig Usage

Parent Component

The Stats Collector Plugin component inherits from the Stats Plugin

Properties

The properties supported by this managed object are as follows:


Basic Properties: Advanced Properties:
 description  entry-cache-info
 enabled  host-info
 local-db-backend-info  included-ldap-application
 replication-info  collection-interval
 sample-interval  ldap-changelog-info
 ldap-info
 server-info
 per-application-ldap-stats
 status-summary-info
 generate-collector-files

Basic Properties

description

Description
A description for this Plugin
Default Value
None
Allowed Values
A string
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action

enabled

Description
Indicates whether the plug-in is enabled for use.
Default Value
None
Allowed Values
true
false
Multi-Valued
No
Required
Yes
Admin Action Required
None. Modification requires no further action

local-db-backend-info

Description
Specifies the level of detail to include about the Local DB Backends.
Default Value
none
Allowed Values
none - No details are included about the Local DB Backends.

basic - Only basic information is included for each Local DB Backend.

extended - Extended information is included for each Local DB Backend.

verbose - Verbose information is included for each Local DB Backend.
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action

replication-info

Description
Specifies the level of detail to include about replication.
Default Value
none
Allowed Values
none - No details are included about replication.

basic - Only basic information is included about replication.

extended - Extended information is included about replication.

verbose - Verbose information is included about replication.
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action

sample-interval

Description
The duration between statistics collections. Setting this value too small can have an impact on performance. This value should be a multiple of collection-interval.
Default Value
1 seconds
Allowed Values
A duration. Lower limit is 500 milliseconds. Upper limit is 60000 milliseconds.
Multi-Valued
No
Required
Yes
Admin Action Required
None. Modification requires no further action

ldap-info

Description
Specifies the level of detail to include about the LDAP connection handlers.
Default Value
None
Allowed Values
none - No details are included about the LDAP connection handlers.

basic - Includes LDAP connection handler byte and message counts, search request count and search result entry count, and work queue information.

extended - Includes LDAP connection handler byte and message counts, search request count and search result entry count, and work queue information. Also includes LDAP operation count and response-time histogram data.
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action

server-info

Description
Specifies whether statistics related to resource utilization such as JVM memory and CPU/Network/Disk utilization.
Default Value
None
Allowed Values
none - No information about the local system CPU, memory, disk or network interfaces is included.

basic - CPU, memory and disk information is included.

extended - CPU, jvm memory, memory and disk and network information is included.
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action

per-application-ldap-stats

Description
Controls whether per application LDAP statistics are included in the output for selected LDAP operation statistics. When statistics such as LDAP operation count and response time histogram are enabled, they can be included on an aggregate level or per application. The included-ldap-application property can restrict which applications are included in the output.
Changes to other configuration objects are necessary to enable tracking of statistics on a per-application basis. The separate-monitor-entry-per-tracked-application setting on the Processing Time Histogram Plugin configuration object must be set to expose per-application monitoring information under cn=monitor. Consult the product documentation for more details on configuring the Directory Server to track LDAP statistics on a per application basis.
Default Value
aggregate-only
Allowed Values
aggregate-only - Statistics will only be included for LDAP operations aggregated across all applications.

per-application-only - Statistics will only be included on a per application basis.
Multi-Valued
No
Required
No
Admin Action Required
When setting this option to per-application-only, you must also set the separate-monitor-entry-per-tracked-application property in the Processing Time Histogram Plugin to true.

status-summary-info

Description
Specifies the level of detail to include about the status summary monitor entry.
Default Value
basic
Allowed Values
none - No details are included from the status summary monitor entry.

basic - Only basic information is included from the status summary monitor entry.

verbose - Verbose information is included from the status summary monitor entry.
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action

generate-collector-files

Description
Indicates whether this plugin should store metric samples on disk for use by the Data Metrics Server. If the Stats Collector Plugin is only being used to collect metrics for one or more StatsD Monitoring Endpoints, then this can be set to false to prevent unnecessary I/O.
Default Value
true
Allowed Values
true
false
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action


Advanced Properties

entry-cache-info (Advanced Property)

Description
Specifies the level of detail to include for each entry cache.
Default Value
none
Allowed Values
none - No details are included about the entry cache.

basic - Only basic information is included for the entry cache.

extended - Verbose information is included for the entry cache.
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action

host-info (Advanced Property)

Description
Specifies the level of detail to include about the host system resource utilization including CPU, memory, disk and network activity. The server can capture performance information about the host system including CPU, network and disk utilization values. If the monitor providers that capture this information are enabled, the performance data can be captured by the Data Metrics Server. Providing host system performance data gives a more robust understanding of application performance problems, as well as a useful tool for capacity planning.
Default Value
None
Allowed Values
cpu - Information is included about the CPU and memory utilization. This data is produced by Host System Cpu Memory Monitor Provider.

disk - Information is included about the disk utilization of selected disks. Disks to be reported are configured in Host System Disk Monitor Provider.

network - Information is included about network utilization of selected interfaces. Networks to be reported are configured in Host System Network Monitor Provider.
Multi-Valued
Yes
Required
No
Admin Action Required
None. Modification requires no further action

included-ldap-application (Advanced Property)

Description
If statistics should not be included for all applications, this property names the subset of applications that should be included. If per-application-ldap-stats is set to per-application-only or per-application-and-aggregate, then this property can be used to restrict the output to only a subset of applications. By default all tracked applications are included. Consult the product documentation for instructions on configuring the Directory Server to track LDAP statistics on a per application basis.
Default Value
If per-application LDAP stats is enabled, then stats will be included for all applications.
Allowed Values
A string
Multi-Valued
Yes
Required
No
Admin Action Required
None. Modification requires no further action

collection-interval (Advanced Property)

Description
Some of the calculated statistics, such as the average and maximum queue sizes, can use multiple samples within a log interval. This value controls how often samples are gathered, and setting this value too small can have an adverse impact on performance.
Default Value
500 milliseconds
Allowed Values
A duration. Lower limit is 100 milliseconds.
Multi-Valued
No
Required
Yes
Admin Action Required
None. Modification requires no further action

ldap-changelog-info (Advanced Property)

Description
Specifies the level of detail to include for the LDAP changelog.
Default Value
none
Allowed Values
none - No details are included about the LDAP changelog.

basic - Only basic information is included for the LDAP changelog.

extended - Extended information is included for the LDAP changelog.

verbose - Verbose information is included for the LDAP changelog.
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action


dsconfig Usage

To list the configured Plugins:

dsconfig list-plugins
     [--property {propertyName}] ...

To view the configuration for an existing Plugin:

dsconfig get-plugin-prop
     --plugin-name {name}
     [--tab-delimited]
     [--script-friendly]
     [--property {propertyName}] ...

To update the configuration for an existing Plugin:

dsconfig set-plugin-prop
     --plugin-name {name}
     (--set|--add|--remove) {propertyName}:{propertyValue}
     [(--set|--add|--remove) {propertyName}:{propertyValue}] ...