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

Side by Side Diff: dashboard/dashboard/group_report.py

Issue 2633513003: Rip out old code for finding reference test for an alert. (Closed)
Patch Set: Created 3 years, 11 months 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 unified diff | Download patch
« no previous file with comments | « dashboard/dashboard/elements/group-report-page.html ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2015 The Chromium Authors. All rights reserved. 1 # Copyright 2015 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Provides the web interface for a set of alerts and their graphs.""" 5 """Provides the web interface for a set of alerts and their graphs."""
6 6
7 import json 7 import json
8 8
9 from google.appengine.ext import ndb 9 from google.appengine.ext import ndb
10 10
11 from dashboard import alerts 11 from dashboard import alerts
12 from dashboard import chart_handler 12 from dashboard import chart_handler
13 from dashboard import list_tests
14 from dashboard import update_test_suites 13 from dashboard import update_test_suites
15 from dashboard.common import request_handler 14 from dashboard.common import request_handler
16 from dashboard.common import utils 15 from dashboard.common import utils
17 from dashboard.models import anomaly 16 from dashboard.models import anomaly
18 from dashboard.models import page_state 17 from dashboard.models import page_state
19 from dashboard.models import stoppage_alert 18 from dashboard.models import stoppage_alert
20 19
21 # This is the max number of alerts to query at once. This is used in cases 20 # This is the max number of alerts to query at once. This is used in cases
22 # when we may want to query more many more alerts than actually get displayed. 21 # when we may want to query more many more alerts than actually get displayed.
23 _QUERY_LIMIT = 2000 22 _QUERY_LIMIT = 2000
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 bug_id: An integer bug ID. 174 bug_id: An integer bug ID.
176 """ 175 """
177 anomaly_dicts = alerts.AnomalyDicts( 176 anomaly_dicts = alerts.AnomalyDicts(
178 [a for a in alert_list if a.key.kind() == 'Anomaly']) 177 [a for a in alert_list if a.key.kind() == 'Anomaly'])
179 stoppage_alert_dicts = alerts.StoppageAlertDicts( 178 stoppage_alert_dicts = alerts.StoppageAlertDicts(
180 [a for a in alert_list if a.key.kind() == 'StoppageAlert']) 179 [a for a in alert_list if a.key.kind() == 'StoppageAlert'])
181 alert_dicts = anomaly_dicts + stoppage_alert_dicts 180 alert_dicts = anomaly_dicts + stoppage_alert_dicts
182 181
183 values = { 182 values = {
184 'alert_list': alert_dicts[:_DISPLAY_LIMIT], 183 'alert_list': alert_dicts[:_DISPLAY_LIMIT],
185 # This code for getting the subtests is supposed to be used to sort out
186 # which metrics are "core" vs "non-core". But it's extremely slow, and
187 # also doesn't seem to work very well. Turn it off for now:
188 # https://github.com/catapult-project/catapult/issues/2877
189 #'subtests': _GetSubTestsForAlerts(alert_dicts),
190 'bug_id': bug_id, 184 'bug_id': bug_id,
191 'test_suites': update_test_suites.FetchCachedTestSuites(), 185 'test_suites': update_test_suites.FetchCachedTestSuites(),
192 'selected_keys': selected_keys, 186 'selected_keys': selected_keys,
193 } 187 }
194 self.GetDynamicVariables(values) 188 self.GetDynamicVariables(values)
195 189
196 self.response.out.write(json.dumps(values)) 190 self.response.out.write(json.dumps(values))
197 191
198 192
199 def _IsInt(x): 193 def _IsInt(x):
200 """Returns True if the input can be parsed as an int.""" 194 """Returns True if the input can be parsed as an int."""
201 try: 195 try:
202 int(x) 196 int(x)
203 return True 197 return True
204 except ValueError: 198 except ValueError:
205 return False 199 return False
206 200
207 201
208 def _GetSubTestsForAlerts(alert_list):
209 """Gets subtest dict for list of alerts."""
210 subtests = {}
211 for alert in alert_list:
212 bot_name = alert['master'] + '/' + alert['bot']
213 testsuite = alert['testsuite']
214 if bot_name not in subtests:
215 subtests[bot_name] = {}
216 if testsuite not in subtests[bot_name]:
217 subtests[bot_name][testsuite] = list_tests.GetSubTests(
218 testsuite, [bot_name])
219 return subtests
220
221
222 def _GetOverlaps(anomalies, start, end): 202 def _GetOverlaps(anomalies, start, end):
223 """Gets the minimum range for the list of anomalies. 203 """Gets the minimum range for the list of anomalies.
224 204
225 Args: 205 Args:
226 anomalies: The list of anomalies. 206 anomalies: The list of anomalies.
227 start: The start revision. 207 start: The start revision.
228 end: The end revision. 208 end: The end revision.
229 209
230 Returns: 210 Returns:
231 A list of anomalies. 211 A list of anomalies.
232 """ 212 """
233 return [a for a in anomalies 213 return [a for a in anomalies
234 if a.start_revision <= end and a.end_revision >= start] 214 if a.start_revision <= end and a.end_revision >= start]
OLDNEW
« no previous file with comments | « dashboard/dashboard/elements/group-report-page.html ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698