jmeter-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Philippe Mouawad <philippe.moua...@gmail.com>
Subject Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java
Date Fri, 06 May 2016 21:44:02 GMT
-1

I thought no important modification was to be done before 3.0 release ?



On Fri, May 6, 2016 at 11:38 PM, <sebb@apache.org> wrote:

> Author: sebb
> Date: Fri May  6 21:38:36 2016
> New Revision: 1742642
>
> URL: http://svn.apache.org/viewvc?rev=1742642&view=rev
> Log:
> Move ReportGenerator defaults to a separate properties file
>
> Added:
>     jmeter/trunk/bin/reportgenerator.properties   (with props)
> Modified:
>     jmeter/trunk/bin/jmeter.properties
>
> jmeter/trunk/src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java
>
> Modified: jmeter/trunk/bin/jmeter.properties
> URL:
> http://svn.apache.org/viewvc/jmeter/trunk/bin/jmeter.properties?rev=1742642&r1=1742641&r2=1742642&view=diff
>
> ==============================================================================
> --- jmeter/trunk/bin/jmeter.properties (original)
> +++ jmeter/trunk/bin/jmeter.properties Fri May  6 21:38:36 2016
> @@ -1184,116 +1184,6 @@ view.results.tree.renderers_order=.Rende
>  classfinder.functions.contain=.functions.
>  classfinder.functions.notContain=.gui.
>
>
> -#---------------------------------------------------------------------------
> -# Reporting configuration
>
> -#---------------------------------------------------------------------------
> -
> -# Sets the satisfaction threshold for the APDEX calculation (in
> milliseconds).
> -#jmeter.reportgenerator.apdex_satisfied_threshold=500
> -
> -# Sets the tolerance threshold for the APDEX calculation (in
> milliseconds).
> -#jmeter.reportgenerator.apdex_tolerated_threshold=1500
> -
> -# Regular Expression which Indicates which samples to keep for graphs and
> statistics generation.
> -# Empty value means no filtering
> -#jmeter.reportgenerator.sample_filter=
> -
> -# Sets the temporary directory used by the generation process if it needs
> file I/O operations.
> -#jmeter.reportgenerator.temp_dir=temp
> -
> -# Sets the size of the sliding window used by percentile evaluation.
> -# Caution : higher value provides a better accuracy but needs more memory.
> -#jmeter.reportgenerator.statistic_window = 200000
> -
> -# Configure this property to change the report title
> -#jmeter.reportgenerator.report_title=Apache JMeter Dashboard
> -
> -# Defines the overall granularity for over time graphs
> -jmeter.reportgenerator.overall_granularity=60000
> -
> -# Response Time Percentiles graph definition
>
> -jmeter.reportgenerator.graph.responseTimePercentiles.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimePercentilesGraphConsumer
> -jmeter.reportgenerator.graph.responseTimePercentiles.title=Response Time
> Percentiles
> -
> -# Response Time Distribution graph definition
>
> -jmeter.reportgenerator.graph.responseTimeDistribution.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeDistributionGraphConsumer
> -jmeter.reportgenerator.graph.responseTimeDistribution.title=Response Time
> Distribution
>
> -jmeter.reportgenerator.graph.responseTimeDistribution.property.set_granularity=500
> -
> -# Active Threads Over Time graph definition
>
> -jmeter.reportgenerator.graph.activeThreadsOverTime.classname=org.apache.jmeter.report.processor.graph.impl.ActiveThreadsGraphConsumer
> -jmeter.reportgenerator.graph.activeThreadsOverTime.title=Active Threads
> Over Time
>
> -jmeter.reportgenerator.graph.activeThreadsOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# Time VS Threads graph definition
>
> -jmeter.reportgenerator.graph.timeVsThreads.classname=org.apache.jmeter.report.processor.graph.impl.TimeVSThreadGraphConsumer
> -jmeter.reportgenerator.graph.timeVsThreads.title=Time VS Threads
> -
> -# Bytes Throughput Over Time graph definition
>
> -jmeter.reportgenerator.graph.bytesThroughputOverTime.classname=org.apache.jmeter.report.processor.graph.impl.BytesThroughputGraphConsumer
> -jmeter.reportgenerator.graph.bytesThroughputOverTime.title=Bytes
> Throughput Over Time
>
> -jmeter.reportgenerator.graph.bytesThroughputOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# Response Time Over Time graph definition
>
> -jmeter.reportgenerator.graph.responseTimesOverTime.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeOverTimeGraphConsumer
> -jmeter.reportgenerator.graph.responseTimesOverTime.title=Response Time
> Over Time
>
> -jmeter.reportgenerator.graph.responseTimesOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# Latencies Over Time graph definition
>
> -jmeter.reportgenerator.graph.latenciesOverTime.classname=org.apache.jmeter.report.processor.graph.impl.LatencyOverTimeGraphConsumer
> -jmeter.reportgenerator.graph.latenciesOverTime.title=Latencies Over Time
>
> -jmeter.reportgenerator.graph.latenciesOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# Response Time Vs Request graph definition
>
> -jmeter.reportgenerator.graph.responseTimeVsRequest.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeVSRequestGraphConsumer
> -jmeter.reportgenerator.graph.responseTimeVsRequest.title=Response Time Vs
> Request
>
> -jmeter.reportgenerator.graph.responseTimeVsRequest.exclude_controllers=true
>
> -jmeter.reportgenerator.graph.responseTimeVsRequest.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# Latencies Vs Request graph definition
>
> -jmeter.reportgenerator.graph.latencyVsRequest.classname=org.apache.jmeter.report.processor.graph.impl.LatencyVSRequestGraphConsumer
> -jmeter.reportgenerator.graph.latencyVsRequest.title=Latencies Vs Request
> -jmeter.reportgenerator.graph.latencyVsRequest.exclude_controllers=true
>
> -jmeter.reportgenerator.graph.latencyVsRequest.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# Hits Per Second graph definition
>
> -jmeter.reportgenerator.graph.hitsPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.HitsPerSecondGraphConsumer
> -jmeter.reportgenerator.graph.hitsPerSecond.title=Hits Per Second
> -jmeter.reportgenerator.graph.hitsPerSecond.exclude_controllers=true
>
> -jmeter.reportgenerator.graph.hitsPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# Codes Per Second graph definition
>
> -jmeter.reportgenerator.graph.codesPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.CodesPerSecondGraphConsumer
> -jmeter.reportgenerator.graph.codesPerSecond.title=Codes Per Second
> -jmeter.reportgenerator.graph.codesPerSecond.exclude_controllers=true
>
> -jmeter.reportgenerator.graph.codesPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# Transactions Per Second graph definition
>
> -jmeter.reportgenerator.graph.transactionsPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.TransactionsPerSecondGraphConsumer
> -jmeter.reportgenerator.graph.transactionsPerSecond.title=Transactions Per
> Second
>
> -jmeter.reportgenerator.graph.transactionsPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> -
> -# HTML Export
>
> -jmeter.reportgenerator.exporter.html.classname=org.apache.jmeter.report.dashboard.HtmlTemplateExporter
> -
> -# Sets the source directory of templated files from which the html pages
> are generated.
>
> -#jmeter.reportgenerator.exporter.html.property.template_dir=report-template
> -
> -# Sets the destination directory for generated html pages.
> -# This will be overridden by the command line option -o
> -#jmeter.reportgenerator.exporter.html.property.output_dir=report-output
> -
> -# Regular Expression which Indicates which graph series are filtered in
> display
> -# Empty value means no filtering
> -#jmeter.reportgenerator.exporter.html.series_filter=
> -
> -# Indicates whether series filter apply only on sample series or to all
> series
> -# setting this to false can lead to empty graphs if series_filter does not
> -# contain required series
> -#jmeter.reportgenerator.exporter.html.filters_only_sample_series=true
> -
> -# Indicates whether only controller samples are displayed on graphs that
> support it.
> -#jmeter.reportgenerator.exporter.html.show_controllers_only=false
>
>
>  #---------------------------------------------------------------------------
>  # Additional property files to load
>
> Added: jmeter/trunk/bin/reportgenerator.properties
> URL:
> http://svn.apache.org/viewvc/jmeter/trunk/bin/reportgenerator.properties?rev=1742642&view=auto
>
> ==============================================================================
> --- jmeter/trunk/bin/reportgenerator.properties (added)
> +++ jmeter/trunk/bin/reportgenerator.properties Fri May  6 21:38:36 2016
> @@ -0,0 +1,140 @@
>
> +################################################################################
> +# Apache JMeter Property file for Report Generator
>
> +################################################################################
> +
> +##   Licensed to the Apache Software Foundation (ASF) under one or more
> +##   contributor license agreements.  See the NOTICE file distributed with
> +##   this work for additional information regarding copyright ownership.
> +##   The ASF licenses this file to You under the Apache License, Version
> 2.0
> +##   (the "License"); you may not use this file except in compliance with
> +##   the License.  You may obtain a copy of the License at
> +##
> +##       http://www.apache.org/licenses/LICENSE-2.0
> +##
> +##   Unless required by applicable law or agreed to in writing, software
> +##   distributed under the License is distributed on an "AS IS" BASIS,
> +##   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +##   See the License for the specific language governing permissions and
> +##   limitations under the License.
> +
>
> +################################################################################
> +#
> +#                      THIS FILE SHOULD NOT BE MODIFIED
> +#
> +# This avoids having to re-apply the modifications when upgrading JMeter
> +# Instead only user.properties should be modified:
> +# 1/ copy the property you want to modify to user.properties from here
> +# 2/ Change its value there
> +#
>
> +################################################################################
> +
>
> +#---------------------------------------------------------------------------
> +# Reporting configuration
>
> +#---------------------------------------------------------------------------
> +
> +# Sets the satisfaction threshold for the APDEX calculation (in
> milliseconds).
> +#jmeter.reportgenerator.apdex_satisfied_threshold=500
> +
> +# Sets the tolerance threshold for the APDEX calculation (in
> milliseconds).
> +#jmeter.reportgenerator.apdex_tolerated_threshold=1500
> +
> +# Regular Expression which Indicates which samples to keep for graphs and
> statistics generation.
> +# Empty value means no filtering
> +#jmeter.reportgenerator.sample_filter=
> +
> +# Sets the temporary directory used by the generation process if it needs
> file I/O operations.
> +#jmeter.reportgenerator.temp_dir=temp
> +
> +# Sets the size of the sliding window used by percentile evaluation.
> +# Caution : higher value provides a better accuracy but needs more memory.
> +#jmeter.reportgenerator.statistic_window = 200000
> +
> +# Configure this property to change the report title
> +#jmeter.reportgenerator.report_title=Apache JMeter Dashboard
> +
> +# Defines the overall granularity for over time graphs
> +jmeter.reportgenerator.overall_granularity=60000
> +
> +# Response Time Percentiles graph definition
>
> +jmeter.reportgenerator.graph.responseTimePercentiles.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimePercentilesGraphConsumer
> +jmeter.reportgenerator.graph.responseTimePercentiles.title=Response Time
> Percentiles
> +
> +# Response Time Distribution graph definition
>
> +jmeter.reportgenerator.graph.responseTimeDistribution.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeDistributionGraphConsumer
> +jmeter.reportgenerator.graph.responseTimeDistribution.title=Response Time
> Distribution
>
> +jmeter.reportgenerator.graph.responseTimeDistribution.property.set_granularity=500
> +
> +# Active Threads Over Time graph definition
>
> +jmeter.reportgenerator.graph.activeThreadsOverTime.classname=org.apache.jmeter.report.processor.graph.impl.ActiveThreadsGraphConsumer
> +jmeter.reportgenerator.graph.activeThreadsOverTime.title=Active Threads
> Over Time
>
> +jmeter.reportgenerator.graph.activeThreadsOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# Time VS Threads graph definition
>
> +jmeter.reportgenerator.graph.timeVsThreads.classname=org.apache.jmeter.report.processor.graph.impl.TimeVSThreadGraphConsumer
> +jmeter.reportgenerator.graph.timeVsThreads.title=Time VS Threads
> +
> +# Bytes Throughput Over Time graph definition
>
> +jmeter.reportgenerator.graph.bytesThroughputOverTime.classname=org.apache.jmeter.report.processor.graph.impl.BytesThroughputGraphConsumer
> +jmeter.reportgenerator.graph.bytesThroughputOverTime.title=Bytes
> Throughput Over Time
>
> +jmeter.reportgenerator.graph.bytesThroughputOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# Response Time Over Time graph definition
>
> +jmeter.reportgenerator.graph.responseTimesOverTime.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeOverTimeGraphConsumer
> +jmeter.reportgenerator.graph.responseTimesOverTime.title=Response Time
> Over Time
>
> +jmeter.reportgenerator.graph.responseTimesOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# Latencies Over Time graph definition
>
> +jmeter.reportgenerator.graph.latenciesOverTime.classname=org.apache.jmeter.report.processor.graph.impl.LatencyOverTimeGraphConsumer
> +jmeter.reportgenerator.graph.latenciesOverTime.title=Latencies Over Time
>
> +jmeter.reportgenerator.graph.latenciesOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# Response Time Vs Request graph definition
>
> +jmeter.reportgenerator.graph.responseTimeVsRequest.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeVSRequestGraphConsumer
> +jmeter.reportgenerator.graph.responseTimeVsRequest.title=Response Time Vs
> Request
>
> +jmeter.reportgenerator.graph.responseTimeVsRequest.exclude_controllers=true
>
> +jmeter.reportgenerator.graph.responseTimeVsRequest.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# Latencies Vs Request graph definition
>
> +jmeter.reportgenerator.graph.latencyVsRequest.classname=org.apache.jmeter.report.processor.graph.impl.LatencyVSRequestGraphConsumer
> +jmeter.reportgenerator.graph.latencyVsRequest.title=Latencies Vs Request
> +jmeter.reportgenerator.graph.latencyVsRequest.exclude_controllers=true
>
> +jmeter.reportgenerator.graph.latencyVsRequest.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# Hits Per Second graph definition
>
> +jmeter.reportgenerator.graph.hitsPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.HitsPerSecondGraphConsumer
> +jmeter.reportgenerator.graph.hitsPerSecond.title=Hits Per Second
> +jmeter.reportgenerator.graph.hitsPerSecond.exclude_controllers=true
>
> +jmeter.reportgenerator.graph.hitsPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# Codes Per Second graph definition
>
> +jmeter.reportgenerator.graph.codesPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.CodesPerSecondGraphConsumer
> +jmeter.reportgenerator.graph.codesPerSecond.title=Codes Per Second
> +jmeter.reportgenerator.graph.codesPerSecond.exclude_controllers=true
>
> +jmeter.reportgenerator.graph.codesPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# Transactions Per Second graph definition
>
> +jmeter.reportgenerator.graph.transactionsPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.TransactionsPerSecondGraphConsumer
> +jmeter.reportgenerator.graph.transactionsPerSecond.title=Transactions Per
> Second
>
> +jmeter.reportgenerator.graph.transactionsPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity}
> +
> +# HTML Export
>
> +jmeter.reportgenerator.exporter.html.classname=org.apache.jmeter.report.dashboard.HtmlTemplateExporter
> +
> +# Sets the source directory of templated files from which the html pages
> are generated.
>
> +#jmeter.reportgenerator.exporter.html.property.template_dir=report-template
> +
> +# Sets the destination directory for generated html pages.
> +# This will be overridden by the command line option -o
> +#jmeter.reportgenerator.exporter.html.property.output_dir=report-output
> +
> +# Regular Expression which Indicates which graph series are filtered in
> display
> +# Empty value means no filtering
> +#jmeter.reportgenerator.exporter.html.series_filter=
> +
> +# Indicates whether series filter apply only on sample series or to all
> series
> +# setting this to false can lead to empty graphs if series_filter does not
> +# contain required series
> +#jmeter.reportgenerator.exporter.html.filters_only_sample_series=true
> +
> +# Indicates whether only controller samples are displayed on graphs that
> support it.
> +#jmeter.reportgenerator.exporter.html.show_controllers_only=false
>
> Propchange: jmeter/trunk/bin/reportgenerator.properties
>
> ------------------------------------------------------------------------------
>     svn:eol-style = native
>
> Modified:
> jmeter/trunk/src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java
> URL:
> http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java?rev=1742642&r1=1742641&r2=1742642&view=diff
>
> ==============================================================================
> ---
> jmeter/trunk/src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java
> (original)
> +++
> jmeter/trunk/src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java
> Fri May  6 21:38:36 2016
> @@ -18,10 +18,12 @@
>  package org.apache.jmeter.report.dashboard;
>
>  import java.io.File;
> +import java.io.FileInputStream;
>  import java.io.IOException;
>  import java.lang.reflect.InvocationTargetException;
>  import java.lang.reflect.Method;
>  import java.util.Map;
> +import java.util.Properties;
>  import java.util.regex.Matcher;
>  import java.util.regex.Pattern;
>
> @@ -66,6 +68,8 @@ import org.apache.log.Logger;
>   * @since 3.0
>   */
>  public class ReportGenerator {
> +    private static final String REPORTGENERATOR_PROPERTIES =
> "reportgenerator.properties";
> +
>      private static final Logger LOG = LoggingManager.getLoggerForClass();
>
>      private static final boolean CSV_OUTPUT_FORMAT = "csv"
> @@ -135,8 +139,21 @@ public class ReportGenerator {
>          }
>          this.resultCollector = resultCollector;
>          this.testFile = file;
> -        configuration = ReportGeneratorConfiguration
> -                .loadFromProperties(JMeterUtils.getJMeterProperties());
> +        final Properties merged = new Properties();
> +        merged.putAll(loadProps(new File(JMeterUtils.getJMeterBinDir(),
> REPORTGENERATOR_PROPERTIES)));
> +        merged.putAll(JMeterUtils.getJMeterProperties());
> +        configuration =
> ReportGeneratorConfiguration.loadFromProperties(merged);
> +    }
> +
> +    private static Properties loadProps(File file) {
> +        final Properties props = new Properties();
> +        try (FileInputStream inStream = new FileInputStream(file)) {
> +            props.load(inStream);
> +        } catch (IOException e) {
> +            LOG.error("Problem loading properties ", e);
> +            System.err.println("Problem loading properties " + e);
> +        }
> +        return props;
>      }
>
>      /**
>
>
>


-- 
Cordialement.
Philippe Mouawad.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message