added packetIn filter counts to statistics 97/20797/1
authorMartin Bobak <mbobak@cisco.com>
Wed, 20 May 2015 08:58:07 +0000 (10:58 +0200)
committerMichal Rehak <mirehak@cisco.com>
Wed, 20 May 2015 11:35:30 +0000 (13:35 +0200)
Change-Id: Ifce135548ad1d2ecb9c4bc6ff15e922af771368f
Signed-off-by: Michal Rehak <mirehak@cisco.com>
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/core/OFVersionDetector.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/statistics/CounterEventTypes.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/statistics/StatisticsCounters.java

index 083cf0eca8dc40d6dd3b73f8d779e41ab231886a..0142ebfd671634a89b6604369c201c7fab55a6c0 100644 (file)
@@ -13,6 +13,8 @@ import io.netty.channel.ChannelHandlerContext;
 import io.netty.handler.codec.ByteToMessageDecoder;
 import java.util.List;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
+import org.opendaylight.openflowjava.statistics.CounterEventTypes;
+import org.opendaylight.openflowjava.statistics.StatisticsCounters;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -28,6 +30,7 @@ public class OFVersionDetector extends ByteToMessageDecoder {
     private static final byte OF13_VERSION_ID = EncodeConstants.OF13_VERSION_ID;
     private static final short OF_PACKETIN = 10;
     private static final Logger LOGGER = LoggerFactory.getLogger(OFVersionDetector.class);
+    private final StatisticsCounters statisticsCounters;
     private volatile boolean filterPacketIns;
 
     /**
@@ -35,6 +38,7 @@ public class OFVersionDetector extends ByteToMessageDecoder {
      */
     public OFVersionDetector() {
         LOGGER.trace("Creating OFVersionDetector");
+        statisticsCounters = StatisticsCounters.getInstance();
     }
 
     public void setFilterPacketIns(final boolean enabled) {
@@ -58,6 +62,7 @@ public class OFVersionDetector extends ByteToMessageDecoder {
                 messageBuffer.retain();
             } else {
                 LOGGER.debug("dropped packetin");
+                statisticsCounters.incrementCounter(CounterEventTypes.US_DROPPED_PACKET_IN);
             }
         } else {
             LOGGER.warn("detected version: {} - currently not supported", version);
index b021745da2e923e37fc73403c1b68e12d07074a9..60b1c6da35983c571a691c8a417545a2cfffb59e 100644 (file)
@@ -34,6 +34,10 @@ public enum CounterEventTypes {
      * flow-mod encoded and sent to downstream
      */
     DS_FLOW_MODS_SENT,
+    /**
+     * packetIn message got dropped -filtering is active
+     */
+    US_DROPPED_PACKET_IN,
     /**
      * receive message and pass to upstream
      */
index f3566a09385f076e0bbeb3c66c3eb1d9086fbe80..3f900d806bd37fe8e3ba3bfa87f498f8d4d65666 100644 (file)
@@ -11,7 +11,6 @@ import java.util.Map;
 import java.util.Timer;
 import java.util.TimerTask;
 import java.util.concurrent.ConcurrentHashMap;
-
 import org.opendaylight.openflowjava.protocol.spi.statistics.StatisticsHandler;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -46,6 +45,7 @@ public final class StatisticsCounters implements StatisticsHandler {
                     CounterEventTypes.DS_ENTERED_OFJAVA,
                     CounterEventTypes.DS_FLOW_MODS_ENTERED,
                     CounterEventTypes.DS_FLOW_MODS_SENT,
+            CounterEventTypes.US_DROPPED_PACKET_IN,
                     CounterEventTypes.US_DECODE_FAIL,
                     CounterEventTypes.US_DECODE_SUCCESS,
                     CounterEventTypes.US_MESSAGE_PASS,