Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(256)

Unified Diff: telemetry/telemetry/internal/results/results_options.py

Issue 2538043005: Replace ValueSetOutputFormatter with HistogramSetJsonOutputFormatter. (Closed)
Patch Set: rebase Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: telemetry/telemetry/internal/results/results_options.py
diff --git a/telemetry/telemetry/internal/results/results_options.py b/telemetry/telemetry/internal/results/results_options.py
index 319f4c2b5a0000f94f6593461d5343ee03e17210..46ecb1cc5f9b7646eaaeae30862e75aededf533e 100644
--- a/telemetry/telemetry/internal/results/results_options.py
+++ b/telemetry/telemetry/internal/results/results_options.py
@@ -3,6 +3,8 @@
# found in the LICENSE file.
import codecs
+import datetime
+import logging
import optparse
import os
import sys
@@ -14,16 +16,16 @@ from telemetry.core import util
from telemetry.internal.results import chart_json_output_formatter
from telemetry.internal.results import csv_pivot_table_output_formatter
from telemetry.internal.results import gtest_progress_reporter
+from telemetry.internal.results import histogram_set_json_output_formatter
from telemetry.internal.results import html2_output_formatter
from telemetry.internal.results import json_output_formatter
from telemetry.internal.results import page_test_results
from telemetry.internal.results import progress_reporter
-from telemetry.internal.results import valueset_output_formatter
# Allowed output formats. The default is the first item in the list.
_OUTPUT_FORMAT_CHOICES = ('html', 'gtest', 'json', 'chartjson',
- 'csv-pivot-table', 'valueset', 'none')
+ 'csv-pivot-table', 'histograms', 'none')
# Filenames to use for given output formats.
@@ -32,7 +34,7 @@ _OUTPUT_FILENAME_LOOKUP = {
'json': 'results.json',
'chartjson': 'results-chart.json',
'csv-pivot-table': 'results-pivot-table.csv',
- 'valueset': 'results-valueset.json'
+ 'histograms': 'histograms.json',
}
@@ -111,6 +113,19 @@ def _GetProgressReporter(output_skipped_tests_summary, suppress_gtest_report):
sys.stdout, output_skipped_tests_summary=output_skipped_tests_summary)
+def _UploadResults(local_path, remote_prefix, bucket):
+ file_name = remote_prefix + datetime.datetime.now().strftime(
+ '%Y-%m-%d_%H-%M-%S')
+ try:
+ cloud_storage.Insert(bucket, file_name, os.path.abspath(local_path))
+ print 'View online at',
+ print 'http://storage.googleapis.com/{bucket}/{path}'.format(
+ bucket=bucket, path=file_name)
+ except cloud_storage.PermissionError as e:
+ logging.error('Cannot upload profiling files to cloud storage due to '
+ ' permission error: %s' % e.message)
+
+
def CreateResults(benchmark_metadata, options,
value_can_be_added_predicate=lambda v, is_first: True,
benchmark_enabled=True):
@@ -139,8 +154,10 @@ def CreateResults(benchmark_metadata, options,
output_stream, trace_tag=options.output_trace_tag))
elif output_format == 'html':
output_formatters.append(html2_output_formatter.Html2OutputFormatter(
- output_stream, benchmark_metadata, options.reset_results,
- options.upload_results, upload_bucket=upload_bucket))
+ output_stream, benchmark_metadata, options.reset_results))
+ if upload_bucket:
+ _UploadResults(output_stream.name, 'html-results/results-',
+ upload_bucket)
elif output_format == 'json':
output_formatters.append(json_output_formatter.JsonOutputFormatter(
output_stream, benchmark_metadata))
@@ -148,10 +165,13 @@ def CreateResults(benchmark_metadata, options,
output_formatters.append(
chart_json_output_formatter.ChartJsonOutputFormatter(
output_stream, benchmark_metadata))
- elif output_format == 'valueset':
+ elif output_format == 'histograms':
output_formatters.append(
- valueset_output_formatter.ValueSetOutputFormatter(
- output_stream))
+ histogram_set_json_output_formatter.HistogramSetJsonOutputFormatter(
+ output_stream, benchmark_metadata, options.reset_results))
+ if upload_bucket:
+ _UploadResults(output_stream.name, 'json-results/results-',
+ upload_bucket)
else:
# Should never be reached. The parser enforces the choices.
raise Exception('Invalid --output-format "%s". Valid choices are: %s'

Powered by Google App Engine
This is Rietveld 408576698