2 * Copyright (c) 2016 Hewlett-Packard Enterprise and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.netvirt.vpnmanager.utilities;
10 import javax.inject.Inject;
11 import javax.inject.Singleton;
12 import org.opendaylight.infrautils.metrics.Meter;
13 import org.opendaylight.infrautils.metrics.MetricDescriptor;
14 import org.opendaylight.infrautils.metrics.MetricProvider;
17 public class VpnManagerCounters {
18 private final Meter subnetRoutePacketIgnoredMeter;
19 private final Meter subnetRoutePacketFailedMeter;
20 private final Meter subnetRoutePacketArpSentMeter;
21 private final Meter subnetRoutePacketNsSentMeter;
22 private final Meter garpAddNotificationMeter;
23 private final Meter garpUpdateNotificationMeter;
24 private final Meter garpSentMeter;
25 private final Meter garpSentIpv6Meter;
26 private final Meter garpSentFailedMeter;
27 private final Meter garpInterfaceRpcFailedMeter;
30 public VpnManagerCounters(MetricProvider metricProvider) {
31 this.subnetRoutePacketIgnoredMeter = meter(metricProvider, "subnet_route_packet_ignored");
32 this.subnetRoutePacketFailedMeter = meter(metricProvider, "subnet_route_packet_failed");
33 this.subnetRoutePacketArpSentMeter = meter(metricProvider, "subnet_route_packet_arp_sent");
34 this.subnetRoutePacketNsSentMeter = meter(metricProvider, "subnet_route_packet_ns_sent");
35 this.garpAddNotificationMeter = meter(metricProvider, "garp_add_notification");
36 this.garpUpdateNotificationMeter = meter(metricProvider, "garp_update_notification");
37 this.garpSentMeter = meter(metricProvider, "garp_sent");
38 this.garpSentIpv6Meter = meter(metricProvider, "garp_sent_ipv6");
39 this.garpSentFailedMeter = meter(metricProvider, "garp_sent_failed");
40 this.garpInterfaceRpcFailedMeter = meter(metricProvider, "garp_interface_rpc_failed");
43 private Meter meter(MetricProvider metricProvider, String id) {
44 return metricProvider.newMeter(
45 MetricDescriptor.builder().anchor(this).project("netvirt").module("vpnmanager").id(id).build());
48 public void subnetRoutePacketIgnored() {
49 subnetRoutePacketIgnoredMeter.mark();
52 public void subnetRoutePacketFailed() {
53 subnetRoutePacketFailedMeter.mark();
56 public void subnetRoutePacketArpSent() {
57 subnetRoutePacketArpSentMeter.mark();
60 public void subnetRoutePacketNsSent() {
61 subnetRoutePacketNsSentMeter.mark();
64 public void garpAddNotification() {
65 garpAddNotificationMeter.mark();
68 public void garpUpdateNotification() {
69 garpUpdateNotificationMeter.mark();
72 public void garpSent() {
76 public void garpSentIpv6() {
77 garpSentIpv6Meter.mark();
80 public void garpSentFailed() {
81 garpSentFailedMeter.mark();
84 public void garpInterfaceRpcFailed() {
85 garpInterfaceRpcFailedMeter.mark();