Class StatisticsCounters
java.lang.Object
org.opendaylight.openflowjava.statistics.StatisticsCounters
- All Implemented Interfaces:
StatisticsHandler
Singleton class to hold and process counters.
- Author:
- madamjak
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Default delay between two writings into log (milliseconds).static final int
Minimal delay between two writings into log (milliseconds). -
Method Summary
Modifier and TypeMethodDescriptiongetCounter
(CounterEventTypes counterEventKey) Get counter by CounterEventType.protected Map<CounterEventTypes,
Counter> Returns the countersMap.protected CounterEventTypes[]
Returns the enabled counters.static StatisticsCounters
Get instance of statistics counters, first created object does not start counting and log reporting.int
Returns the current delay between two writings into logs.void
incrementCounter
(CounterEventTypes counterEventKey) Increment value of given counter.boolean
isCounterEnabled
(CounterEventTypes counterEventKey) Determines if the given counter is enabled.boolean
Give an information if counting is running.boolean
Give an information if log reporter is running (statistics are write into logs).Returns statistics.void
Resets all counters.void
startCounting
(boolean reportToLogs, int logReportDelay) Start counting (counters are set to 0 before counting starts).void
startLogReport
(int logReportDelay) Prints statistics with given delay between logs.void
Stop counting, values in counters are untouched, log reporter is stopped.void
Stops logging, counting continues.
-
Field Details
-
DEFAULT_LOG_REPORT_PERIOD
public static final int DEFAULT_LOG_REPORT_PERIODDefault delay between two writings into log (milliseconds).- See Also:
-
MINIMAL_LOG_REPORT_PERIOD
public static final int MINIMAL_LOG_REPORT_PERIODMinimal delay between two writings into log (milliseconds).- See Also:
-
-
Method Details
-
getInstance
Get instance of statistics counters, first created object does not start counting and log reporting.- Returns:
- an instance
-
startCounting
public void startCounting(boolean reportToLogs, int logReportDelay) Start counting (counters are set to 0 before counting starts).- Parameters:
reportToLogs
- - true = statistic counters will periodically loglogReportDelay
- - delay between two logs (in milliseconds)
-
stopCounting
public void stopCounting()Stop counting, values in counters are untouched, log reporter is stopped. -
isRunCounting
public boolean isRunCounting()Give an information if counting is running.- Returns:
- true, if counting is running, otherwise false
-
startLogReport
public void startLogReport(int logReportDelay) Prints statistics with given delay between logs.- Parameters:
logReportDelay
- - delay between two logs (in milliseconds)- Throws:
IllegalArgumentException
- if logReportDelay is less than 0
-
stopLogReport
public void stopLogReport()Stops logging, counting continues. -
isRunLogReport
public boolean isRunLogReport()Give an information if log reporter is running (statistics are write into logs).- Returns:
- true if log reporter writes statistics into log, otherwise false
-
getLogReportPeriod
public int getLogReportPeriod()Returns the current delay between two writings into logs. -
getEnabledCounters
Returns the enabled counters. -
getCountersMap
Returns the countersMap. -
isCounterEnabled
Determines if the given counter is enabled.- Parameters:
counterEventKey
- the counter key- Returns:
- true if counter has been Enabled, otherwise false
-
getCounter
Get counter by CounterEventType.- Parameters:
counterEventKey
- key to identify counter (can not be null)- Returns:
- Counter object or null if counter has not been enabled
- Throws:
IllegalArgumentException
- if counterEventKey is null
-
incrementCounter
Increment value of given counter.- Parameters:
counterEventKey
- key to identify counter
-
resetCounters
public void resetCounters()Description copied from interface:StatisticsHandler
Resets all counters.- Specified by:
resetCounters
in interfaceStatisticsHandler
-
printStatistics
Description copied from interface:StatisticsHandler
Returns statistics.- Specified by:
printStatistics
in interfaceStatisticsHandler
-