Manage metrics
Reuse existing metrics on startup and reduce the operational memory overhead
Objective
Provide optional ability to reuse existing metrics on startup and reduce the operational memory overhead for stored metrics.
Example & DSL attributes
This example performs two key metric table functions:
Truncates the
BidMovingAverage
table on process startup providing a clean restart.Executes the default compaction query on a 8 hour schedule for the
BidMovingAverage
metric.
Example
Metric Management Attributes
Each metric definition includes management attributes to control how the metric table is managed throughout the Joule process lifetime. Since Joule uses an in-memory database the size of table needs to be managed.
truncate on start
Truncate metric data on restart. Note if you import metrics using the initialisation DSL element you will need to set this to false
Boolean
Default: true
Compaction Policy Attributes
Managing metrics is a key aspect to the performance of the Joule runtime. By applying the compaction policy this will reduce the memory footprint required of the JVM and therefore the number of GC cycles.
frequency
Frequency metrics are computed. Minimum value cannot be set below 1 for minute or hour time units.
Long
Default: 1
compaction query
User defined compaction query.
Note: The default query compacts the metric table by deleting all row less than the max createdTimestamp
.
String
time unit
Time unit used to set the scheduled processing policy.
Supported units: MINUTES, HOURS
TimeUnit
Default: HOURS
Last updated