Cleanup requirements & tox config, update pylint
[nfvbench.git] / nfvbench / summarizer.py
index 1da3ee2..7c69f52 100644 (file)
@@ -266,6 +266,11 @@ class NFVBenchSummarizer(Summarizer):
                 # 'append' expects a single parameter => double parentheses
                 self.ndr_pdr_header.append((str(percentile) + ' %ile lat.', Formatter.standard))
                 self.single_run_header.append((str(percentile) + ' %ile lat.', Formatter.standard))
+
+        if self.config.periodic_gratuitous_arp:
+            self.direction_keys.insert(2, 'garp-direction-total')
+            self.direction_names.insert(2, 'Gratuitous ARP')
+
         # if sender is available initialize record
         if self.sender:
             self.__record_init()
@@ -504,9 +509,15 @@ class NFVBenchSummarizer(Summarizer):
             data['lat_percentile'] = {}
         for percentile in self.config.lat_percentiles:
             if add_key:
-                data['lat_percentile_' + str(percentile)] = lat_percentile[percentile]
+                try:
+                    data['lat_percentile_' + str(percentile)] = lat_percentile[percentile]
+                except TypeError:
+                    data['lat_percentile_' + str(percentile)] = "n/a"
             else:
-                data.append(lat_percentile[percentile])
+                try:
+                    data.append(lat_percentile[percentile])
+                except TypeError:
+                    data.append("n/a")
 
     def __get_config_table(self, run_config, frame_size):
         config_table = Table(self.config_header)
@@ -566,9 +577,9 @@ class NFVBenchSummarizer(Summarizer):
                     lat_map['lat_' + str(percentile) + '_percentile'] = \
                         str(percentile) + ' %ile lat.'
 
-            for key in lat_map:
+            for lat_value in lat_map.values():
                 # 'append' expects a single parameter => double parentheses
-                header.append((lat_map[key], Formatter.standard))
+                header.append((lat_value, Formatter.standard))
 
         table = Table(header)
         for chain in sorted(list(chains.keys()), key=str):
@@ -587,7 +598,7 @@ class NFVBenchSummarizer(Summarizer):
                                 row.append(Formatter.standard(
                                     chains[chain][lat_key][percentile]))
                         else:
-                            for percentile in self.config.lat_percentiles:
+                            for _ in self.config.lat_percentiles:
                                 row.append('n/a')
             table.add_row(row)
         return table
@@ -622,9 +633,9 @@ class NFVBenchSummarizer(Summarizer):
                     run_specific_data['pdr'] = data['pdr']
                     run_specific_data['pdr']['drop_limit'] = self.config['measurement']['PDR']
                     del data['pdr']
-                for key in run_specific_data:
+                for data_value in run_specific_data.values():
                     data_to_send = data.copy()
-                    data_to_send.update(run_specific_data[key])
+                    data_to_send.update(data_value)
                     self.sender.record_send(data_to_send)
             self.__record_init()