Class LogCounters
java.lang.Object
org.pipservices3.components.count.CachedCounters
org.pipservices3.components.count.LogCounters
- All Implemented Interfaces:
org.pipservices3.commons.config.IConfigurable,org.pipservices3.commons.config.IReconfigurable,org.pipservices3.commons.refer.IReferenceable,ICounters,ITimingCallback
public class LogCounters extends CachedCounters implements org.pipservices3.commons.refer.IReferenceable
Performance counters that periodically dumps counters measurements to logger.
### Configuration parameters ###
- options:
- interval: interval in milliseconds to save current counters measurements (default: 5 mins)
- reset_timeout: timeout in milliseconds to reset the counters. 0 disables the reset (default: 0)
### References ###
- *:logger:*:*:1.0
ILoggercomponents to dump the captured counters - *:context-info:*:*:1.0 (optional)
ContextInfoto detect the context id and specify counters source
### Example ###
LogCounters counters = new LogCounters();
counters.setReferences(References.fromTuples(
new Descriptor("pip-services3", "logger", "console", "default", "1.0"), new ConsoleLogger()
));
counters.increment("mycomponent.mymethod.calls");
Timing timing = counters.beginTiming("mycomponent.mymethod.exec_time");
try {
...
} finally {
timing.endTiming();
}
counters.dump();
- See Also:
Counter,CachedCounters,CompositeLogger
-
Field Summary
Fields inherited from class org.pipservices3.components.count.CachedCounters
_lastResetTime, _resetTimeout -
Constructor Summary
Constructors Constructor Description LogCounters()Creates a new instance of the counters. -
Method Summary
Modifier and Type Method Description protected voidsave(List<Counter> counters)Saves the current counters measurements.voidsetReferences(org.pipservices3.commons.refer.IReferences references)Sets references to dependent components.Methods inherited from class org.pipservices3.components.count.CachedCounters
beginTiming, clear, clearAll, configure, dump, endTiming, get, getAll, increment, incrementOne, last, stats, timestamp, timestampNow, update
-
Constructor Details
-
LogCounters
public LogCounters()Creates a new instance of the counters.
-
-
Method Details
-
setReferences
public void setReferences(org.pipservices3.commons.refer.IReferences references) throws org.pipservices3.commons.refer.ReferenceExceptionSets references to dependent components.- Specified by:
setReferencesin interfaceorg.pipservices3.commons.refer.IReferenceable- Parameters:
references- references to locate the component dependencies.- Throws:
org.pipservices3.commons.refer.ReferenceException
-
save
Saves the current counters measurements.- Specified by:
savein classCachedCounters- Parameters:
counters- current counters measurements to be saves.
-