blob: aeb2e32f52677eca9599e2af411100351474c6ea [file] [log] [blame]
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -07001package org.onlab.onos.metrics.topology;
2
3import java.util.List;
4
5import com.codahale.metrics.Gauge;
6import com.codahale.metrics.Meter;
Pavlin Radoslavov5ba8b282014-10-23 01:03:10 -07007import org.onlab.onos.event.Event;
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -07008
9/**
10 * Service interface exported by TopologyMetrics.
11 */
12public interface TopologyMetricsService {
13 /**
14 * Gets the last saved topology events.
15 *
16 * @return the last saved topology events.
17 */
Pavlin Radoslavov5ba8b282014-10-23 01:03:10 -070018 public List<Event> getEvents();
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070019
20 /**
21 * Gets the Metrics' Gauge for the last topology event timestamp
22 * (ms from the epoch).
23 *
24 * @return the Metrics' Gauge for the last topology event timestamp
25 * (ms from the epoch)
26 */
27 public Gauge<Long> lastEventTimestampEpochMsGauge();
28
29 /**
30 * Gets the Metrics' Meter for the topology events rate.
31 *
32 * @return the Metrics' Meter for the topology events rate
33 */
34 public Meter eventRateMeter();
35}