diff --git a/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/Utils.java b/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/Utils.java index 4c4664a96..c6aaf1bfd 100644 --- a/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/Utils.java +++ b/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/Utils.java @@ -68,7 +68,10 @@ static void printJsonReport(Duration duration, OperationStats stats, String load generator.writeStartObject(); generator.writeNumberField("feeder.runtime", duration.toMillis()); generator.writeNumberField("feeder.okcount", stats.successes()); - generator.writeNumberField("feeder.errorcount", stats.exceptions() + stats.responsesByCode().entrySet().stream().filter(entry -> entry.getKey() != 200).map(Entry::getValue).reduce(0L, Long::sum)); + generator.writeNumberField("feeder.errorcount", stats.exceptions() + stats.statsByCode().entrySet().stream() + .filter(entry -> entry.getKey() != 200) + .map(e -> e.getValue().count()) + .reduce(0L, Long::sum)); generator.writeNumberField("feeder.exceptions", stats.exceptions()); generator.writeNumberField("feeder.bytessent", stats.bytesSent()); generator.writeNumberField("feeder.bytesreceived", stats.bytesReceived()); diff --git a/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/VespaFeedClient.java b/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/VespaFeedClient.java index a30fce263..3c25fa40c 100644 --- a/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/VespaFeedClient.java +++ b/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/VespaFeedClient.java @@ -31,9 +31,8 @@ public static void main(String[] args) throws IOException { FeedClient client = createFeedClient(); AtomicReference stats = new AtomicReference<>(); ScheduledExecutorService executor = Executors.newScheduledThreadPool(1); - executor.schedule(() -> { stats.set(client.stats()); }, - warmupSeconds(), TimeUnit.SECONDS); - executor.schedule(() -> { stats.set(client.stats().since(stats.get())); executor.shutdown(); }, + executor.schedule(client::resetStats, warmupSeconds(), TimeUnit.SECONDS); + executor.schedule(() -> { stats.set(client.stats()); executor.shutdown(); }, warmupSeconds() + benchmarkSeconds(), TimeUnit.SECONDS); executor.scheduleAtFixedRate(() -> { System.err.println(client.stats()); }, 1, 1, TimeUnit.SECONDS); diff --git a/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/VespaJsonFeeder.java b/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/VespaJsonFeeder.java index b8bf6115a..239fc3ad1 100644 --- a/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/VespaJsonFeeder.java +++ b/tests/performance/programmatic_feed_client/java-feed-client/src/main/java/com/yahoo/vespa/systemtest/javafeedclient/VespaJsonFeeder.java @@ -46,7 +46,7 @@ public static void main(String[] args) throws IOException { AtomicReference stats = new AtomicReference<>(); AtomicLong startNanos = new AtomicLong(); ScheduledExecutorService executor = Executors.newScheduledThreadPool(1); - executor.schedule(() -> { stats.set(client.stats()); startNanos.set(System.nanoTime()); }, + executor.schedule(() -> { client.resetStats(); startNanos.set(System.nanoTime()); }, warmupSeconds(), TimeUnit.SECONDS); executor.scheduleAtFixedRate(() -> { System.err.println(client.stats()); }, 1, 1, TimeUnit.SECONDS); @@ -55,7 +55,7 @@ public static void main(String[] args) throws IOException { JsonFeeder feeder = JsonFeeder.builder(client).withRoute(route()).build()) { feeder.feedMany(in); } - printJsonReport(Duration.ofNanos(System.nanoTime() - startNanos.get()), client.stats().since(stats.get()), "vespa-json-feeder"); + printJsonReport(Duration.ofNanos(System.nanoTime() - startNanos.get()), client.stats(), "vespa-json-feeder"); executor.shutdown(); }