This configuration object provides powerful controls for how monitor attributes are written to the log. For example, you can extract a value from a monitor attribute using a regular expression. New Custom Logged Stats are automatically included in the Periodic Stats Logger output.

In addition to allowing a straight pass-through of the values using the raw statistic-type, you can configure attributes to be treated as any of the following:

  • A counter, where the interval includes the difference in the value since the last interval
  • An average value held by the attribute during the specified interval
  • A minimum value held by the attribute during the specified interval
  • A maximum value held by the attribute during the specified interval

The value of an attribute can also be scaled by a fixed value or by the value of another monitor attribute.


Custom third-party server extensions written using the Server SDK can also expose interval statistics using a Periodic Stats Logger. The extension must first implement the SDK's MonitorProvider interface and register with the server. The monitor attributes produced by this custom MonitorProvider are then available to be referenced by a Custom Logged Stats object.

To illustrate how to configure a Custom Logged Statistics Logger, the following section reproduces the built-in Consumer Total GB column that displays in the output when the included-resource-stat property is set to memory-utilization on the Periodic Stats Logger.

The column is derived from the total-bytes-used-by-memory-consumers attribute of the cn=JVM Memory Usage,cn=monitor entry as follows.

dn: cn=JVM Memory Usage,cn=monitor 
objectClass: top 
objectClass: ds-monitor-entry 
objectClass: ds-memory-usage-monitor-entry 
objectClass: extensibleObject
cn: JVM Memory Usage 
total-bytes-used-by-memory-consumers: 3250017037