You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by se...@apache.org on 2016/05/06 21:38:37 UTC

svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

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;
     }
 
     /**



Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by sebb <se...@gmail.com>.
On 7 May 2016 at 21:24, Philippe Mouawad <ph...@gmail.com> wrote:
> Another comment, AFAIU, reportgenerator.properties must be added to bundles
> ?

Good catch.

> I commited the fix, but please review as I am not sure.

If it's wrong, the RC won't contain the file ...

> On Sat, May 7, 2016 at 12:06 AM, sebb <se...@gmail.com> wrote:
>
>> On 6 May 2016 at 22:44, Philippe Mouawad <ph...@gmail.com>
>> wrote:
>> > -1
>> >
>> > I thought no important modification was to be done before 3.0 release ?
>>
>> Is that your only objection?
>>
>> >
>> >
>> > On Fri, May 6, 2016 at 11:38 PM, <se...@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.
>>
>
>
>
> --
> Cordialement.
> Philippe Mouawad.

Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by Philippe Mouawad <ph...@gmail.com>.
Another comment, AFAIU, reportgenerator.properties must be added to bundles
?
I commited the fix, but please review as I am not sure.

On Sat, May 7, 2016 at 12:06 AM, sebb <se...@gmail.com> wrote:

> On 6 May 2016 at 22:44, Philippe Mouawad <ph...@gmail.com>
> wrote:
> > -1
> >
> > I thought no important modification was to be done before 3.0 release ?
>
> Is that your only objection?
>
> >
> >
> > On Fri, May 6, 2016 at 11:38 PM, <se...@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.
>



-- 
Cordialement.
Philippe Mouawad.

Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by Philippe Mouawad <ph...@gmail.com>.
On Sat, May 7, 2016 at 12:14 PM, sebb <se...@gmail.com> wrote:

> On 7 May 2016 at 10:33, Philippe Mouawad <ph...@gmail.com>
> wrote:
> > On Saturday, May 7, 2016, sebb <se...@gmail.com> wrote:
> >
> >> On 7 May 2016 at 07:10, Philippe Mouawad <philippe.mouawad@gmail.com
> >> <javascript:;>> wrote:
> >> > Hello,
> >> > I don't see docs update neither.
> >>
> >> The only relevant place I can find is properties_reference which I have
> >> updated.
> >> If there are any other places let me know.
> >
> >
> > i see no mention of this in dashboard docs.
> > I think some note on this would be nice
>
> AFAICT the dashboard docs don't mention jmeter.properties
> So why should  they mention the new property file?
>

They do, read
16.2 Configuring Dashboard Generation

>
> >
> >> > But for me it should have been discussed before and commited only
> after
> >> 3.0
> >> > as per milamber request.
> >>
> >> I could say the same about the fix you made:
> >>
> >> URL: http://svn.apache.org/viewvc?rev=1742104&view=rev
> >> Log:
> >> Bug 59424 - Visualizer : Add "Clear" in popup menu
> >>
> >> That was not even discussed as I recall.
> >
> >
> > I can retire it if you want.
>
> No. I don't think it needs to be removed.
>
ok thanks

>
> > The regressions risks are very low,
>
> Since the patch affected code in MenuFactory, the _potential_ for
> regression is high.
>
> However the change was simple; it looks OK and I have not noticed any
> problems.
>
> > it's not the case for report generation which is a much more critical
> feature.
>
> The feature may be more critical, but there's no possibility of a
> regression since it's a new feature.
>

Yes but I don't like to release a broken feature.
See my comment on the commit.


>
> >
> >>
> >> ==
> >>
> >> The issue was discussed, but the solution was not.
> >>
> >> I am not happy releasing the code as it was before.
> >> I should have vetoed the original change.
> >
> >
> > which one ?
>
> The one which added the properties to jmeter.properties:
>
> http://svn.apache.org/viewvc?view=revision&revision=1718425
>

As far as I remember, I never read a single good thing from you on this
feature since it was proposed, I don't remember you even voted.
I must confess I don't understand.
I am sad that the only conclusion of this feature for you is just "40 new
properties".

If your aim is to discourage further contributions, it's a very good way to
proceed.

Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by sebb <se...@gmail.com>.
On 7 May 2016 at 10:33, Philippe Mouawad <ph...@gmail.com> wrote:
> On Saturday, May 7, 2016, sebb <se...@gmail.com> wrote:
>
>> On 7 May 2016 at 07:10, Philippe Mouawad <philippe.mouawad@gmail.com
>> <javascript:;>> wrote:
>> > Hello,
>> > I don't see docs update neither.
>>
>> The only relevant place I can find is properties_reference which I have
>> updated.
>> If there are any other places let me know.
>
>
> i see no mention of this in dashboard docs.
> I think some note on this would be nice

AFAICT the dashboard docs don't mention jmeter.properties
So why should  they mention the new property file?

>
>> > But for me it should have been discussed before and commited only after
>> 3.0
>> > as per milamber request.
>>
>> I could say the same about the fix you made:
>>
>> URL: http://svn.apache.org/viewvc?rev=1742104&view=rev
>> Log:
>> Bug 59424 - Visualizer : Add "Clear" in popup menu
>>
>> That was not even discussed as I recall.
>
>
> I can retire it if you want.

No. I don't think it needs to be removed.

> The regressions risks are very low,

Since the patch affected code in MenuFactory, the _potential_ for
regression is high.

However the change was simple; it looks OK and I have not noticed any problems.

> it's not the case for report generation which is a much more critical feature.

The feature may be more critical, but there's no possibility of a
regression since it's a new feature.

>
>>
>> ==
>>
>> The issue was discussed, but the solution was not.
>>
>> I am not happy releasing the code as it was before.
>> I should have vetoed the original change.
>
>
> which one ?

The one which added the properties to jmeter.properties:

http://svn.apache.org/viewvc?view=revision&revision=1718425

Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by Philippe Mouawad <ph...@gmail.com>.
On Saturday, May 7, 2016, sebb <se...@gmail.com> wrote:

> On 7 May 2016 at 07:10, Philippe Mouawad <philippe.mouawad@gmail.com
> <javascript:;>> wrote:
> > Hello,
> > I don't see docs update neither.
>
> The only relevant place I can find is properties_reference which I have
> updated.
> If there are any other places let me know.


i see no mention of this in dashboard docs.
I think some note on this would be nice


> > But for me it should have been discussed before and commited only after
> 3.0
> > as per milamber request.
>
> I could say the same about the fix you made:
>
> URL: http://svn.apache.org/viewvc?rev=1742104&view=rev
> Log:
> Bug 59424 - Visualizer : Add "Clear" in popup menu
>
> That was not even discussed as I recall.


I can retire it if you want.
The regressions risks are very low, it's not the case for report generation
which is a much more critical feature.


>
> ==
>
> The issue was discussed, but the solution was not.
>
> I am not happy releasing the code as it was before.
> I should have vetoed the original change.


which one ?


>
> > Regards
> >
> > On Saturday, May 7, 2016, sebb <sebbaz@gmail.com <javascript:;>> wrote:
> >
> >> On 6 May 2016 at 22:44, Philippe Mouawad <philippe.mouawad@gmail.com
> <javascript:;>
> >> <javascript:;>> wrote:
> >> > -1
> >> >
> >> > I thought no important modification was to be done before 3.0 release
> ?
> >>
> >> Is that your only objection?
> >>
> >> >
> >> >
> >> > On Fri, May 6, 2016 at 11:38 PM, <sebb@apache.org <javascript:;>
> <javascript:;>> 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.
> >>
> >
> >
> > --
> > Cordialement.
> > Philippe Mouawad.
>


-- 
Cordialement.
Philippe Mouawad.

Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by sebb <se...@gmail.com>.
On 7 May 2016 at 07:10, Philippe Mouawad <ph...@gmail.com> wrote:
> Hello,
> I don't see docs update neither.

The only relevant place I can find is properties_reference which I have updated.
If there are any other places let me know.

> But for me it should have been discussed before and commited only after 3.0
> as per milamber request.

I could say the same about the fix you made:

URL: http://svn.apache.org/viewvc?rev=1742104&view=rev
Log:
Bug 59424 - Visualizer : Add "Clear" in popup menu

That was not even discussed as I recall.

==

The issue was discussed, but the solution was not.

I am not happy releasing the code as it was before.
I should have vetoed the original change.

> Regards
>
> On Saturday, May 7, 2016, sebb <se...@gmail.com> wrote:
>
>> On 6 May 2016 at 22:44, Philippe Mouawad <philippe.mouawad@gmail.com
>> <javascript:;>> wrote:
>> > -1
>> >
>> > I thought no important modification was to be done before 3.0 release ?
>>
>> Is that your only objection?
>>
>> >
>> >
>> > On Fri, May 6, 2016 at 11:38 PM, <sebb@apache.org <javascript:;>> 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.
>>
>
>
> --
> Cordialement.
> Philippe Mouawad.

Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by Philippe Mouawad <ph...@gmail.com>.
Hello,
I don't see docs update neither.

But for me it should have been discussed before and commited only after 3.0
as per milamber request.

Regards

On Saturday, May 7, 2016, sebb <se...@gmail.com> wrote:

> On 6 May 2016 at 22:44, Philippe Mouawad <philippe.mouawad@gmail.com
> <javascript:;>> wrote:
> > -1
> >
> > I thought no important modification was to be done before 3.0 release ?
>
> Is that your only objection?
>
> >
> >
> > On Fri, May 6, 2016 at 11:38 PM, <sebb@apache.org <javascript:;>> 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.
>


-- 
Cordialement.
Philippe Mouawad.

Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by sebb <se...@gmail.com>.
On 6 May 2016 at 22:44, Philippe Mouawad <ph...@gmail.com> wrote:
> -1
>
> I thought no important modification was to be done before 3.0 release ?

Is that your only objection?

>
>
> On Fri, May 6, 2016 at 11:38 PM, <se...@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.

Re: svn commit: r1742642 - in /jmeter/trunk: bin/jmeter.properties bin/reportgenerator.properties src/core/org/apache/jmeter/report/dashboard/ReportGenerator.java

Posted by Philippe Mouawad <ph...@gmail.com>.
-1

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



On Fri, May 6, 2016 at 11:38 PM, <se...@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.