diff options
author | Louin Pierrick <pierrick.louin@orange.com> | 2019-10-15 15:42:14 +0200 |
---|---|---|
committer | fmenguy <francoisregis.menguy@orange.com> | 2019-10-23 17:46:46 +0200 |
commit | 96ad348806948805928bf60885ca8f45379736ef (patch) | |
tree | 2c0f8757d54bab3f693b2ef94e14a8dc554ae346 /nfvbench/traffic_client.py | |
parent | 6d7174208a032de47495e3e687ba25aed8bedb6e (diff) |
NFVBENCH-152 Add service_mode method for debugging purpose
Change-Id: I17b70a26ea0df1b5b616db6039813c83a1efe799
Signed-off-by: fmenguy <francoisregis.menguy@orange.com>
Diffstat (limited to 'nfvbench/traffic_client.py')
-rwxr-xr-x | nfvbench/traffic_client.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/nfvbench/traffic_client.py b/nfvbench/traffic_client.py index 8992d51..7591062 100755 --- a/nfvbench/traffic_client.py +++ b/nfvbench/traffic_client.py @@ -46,12 +46,13 @@ class TrafficClientException(Exception): class TrafficRunner(object): """Serialize various steps required to run traffic.""" - def __init__(self, client, duration_sec, interval_sec=0): + def __init__(self, client, duration_sec, interval_sec=0, service_mode=False): """Create a traffic runner.""" self.client = client self.start_time = None self.duration_sec = duration_sec self.interval_sec = interval_sec + self.service_mode = service_mode def run(self): """Clear stats and instruct the traffic generator to start generating traffic.""" @@ -59,6 +60,10 @@ class TrafficRunner(object): return None LOG.info('Running traffic generator') self.client.gen.clear_stats() + # Debug use only : new '--service-mode' option available for the NFVBench command line. + # A read-only mode TRex console would be able to capture the generated traffic. + self.client.gen.set_service_mode(enabled=self.service_mode) + LOG.info('Service mode is %sabled', 'en' if self.service_mode else 'dis') self.client.gen.start_traffic() self.start_time = time.time() return self.poll_stats() @@ -486,7 +491,8 @@ class TrafficClient(object): self.notifier = notifier self.interval_collector = None self.iteration_collector = None - self.runner = TrafficRunner(self, self.config.duration_sec, self.config.interval_sec) + self.runner = TrafficRunner(self, self.config.duration_sec, self.config.interval_sec, + self.config.service_mode) self.config.frame_sizes = self._get_frame_sizes() self.run_config = { 'l2frame_size': None, |