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

Side by Side Diff: appengine/sheriff_o_matic/ts_alerts.py

Issue 1260293009: make version of ts_mon compatible with appengine (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: add noncululativedistribution metric to ts_mon imports Created 5 years, 4 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 | « appengine/sheriff_o_matic/makefile ('k') | appengine_module/gae_ts_mon/README » ('j') | 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 import alerts_history 5 import alerts_history
6 import json 6 import json
7 import logging 7 import logging
8 import utils 8 import utils
9 import webapp2 9 import webapp2
10 import zlib 10 import zlib
(...skipping 22 matching lines...) Expand all
33 33
34 34
35 class TimeSeriesAlertsHandler(webapp2.RequestHandler): 35 class TimeSeriesAlertsHandler(webapp2.RequestHandler):
36 ALERT_TYPE = 'ts-alerts' 36 ALERT_TYPE = 'ts-alerts'
37 MEMCACHE_COMPRESSION_LEVEL = 9 37 MEMCACHE_COMPRESSION_LEVEL = 9
38 # Alerts which have continued to fire are re-sent every 5 minutes, so stale 38 # Alerts which have continued to fire are re-sent every 5 minutes, so stale
39 # alerts older than 300 seconds are replaced by incoming alerts. 39 # alerts older than 300 seconds are replaced by incoming alerts.
40 STALE_ALERT_TIMEOUT = 300 40 STALE_ALERT_TIMEOUT = 300
41 41
42 def get(self, key=None): 42 def get(self, key=None):
43 utils.increment_monarch('ts-alerts')
44 self.remove_expired_alerts() 43 self.remove_expired_alerts()
45 if not users.get_current_user(): 44 if not users.get_current_user():
46 results = {'date': dt.utcnow(), 45 results = {'date': dt.utcnow(),
47 'redirect-url': users.create_login_url(self.request.uri)} 46 'redirect-url': users.create_login_url(self.request.uri)}
48 self.write_json(results) 47 self.write_json(results)
49 return 48 return
50 49
51 if key: 50 if key:
52 logging.info('getting the key: ' + key) 51 logging.info('getting the key: ' + key)
53 try: 52 try:
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 def set_memcache(self, key, data): 168 def set_memcache(self, key, data):
170 json_data = utils.generate_json_dump(data, False) 169 json_data = utils.generate_json_dump(data, False)
171 compression_level = self.MEMCACHE_COMPRESSION_LEVEL 170 compression_level = self.MEMCACHE_COMPRESSION_LEVEL
172 compressed = zlib.compress(json_data, compression_level) 171 compressed = zlib.compress(json_data, compression_level)
173 memcache.set(key, compressed) 172 memcache.set(key, compressed)
174 173
175 174
176 class TimeSeriesAlertsHistory(alerts_history.AlertsHistory): 175 class TimeSeriesAlertsHistory(alerts_history.AlertsHistory):
177 176
178 def get(self, timestamp=None): 177 def get(self, timestamp=None):
179 utils.increment_monarch('ts-alerts-history')
180 result_json = {} 178 result_json = {}
181 if not users.get_current_user(): 179 if not users.get_current_user():
182 result_json['login-url'] = users.create_login_url(self.request.uri) 180 result_json['login-url'] = users.create_login_url(self.request.uri)
183 return result_json 181 return result_json
184 182
185 alerts = TSAlertsJSON.query_active().fetch() 183 alerts = TSAlertsJSON.query_active().fetch()
186 if timestamp: 184 if timestamp:
187 try: 185 try:
188 time = dt.fromtimestamp(int(timestamp)) 186 time = dt.fromtimestamp(int(timestamp))
189 except ValueError: 187 except ValueError:
(...skipping 27 matching lines...) Expand all
217 self.response.headers['Content-Type'] = 'application/json' 215 self.response.headers['Content-Type'] = 'application/json'
218 data = utils.generate_json_dump(data) 216 data = utils.generate_json_dump(data)
219 self.response.write(data) 217 self.response.write(data)
220 218
221 219
222 app = webapp2.WSGIApplication([ 220 app = webapp2.WSGIApplication([
223 ('/ts-alerts', TimeSeriesAlertsHandler), 221 ('/ts-alerts', TimeSeriesAlertsHandler),
224 ('/ts-alerts/(.*)', TimeSeriesAlertsHandler), 222 ('/ts-alerts/(.*)', TimeSeriesAlertsHandler),
225 ('/ts-alerts-history', TimeSeriesAlertsHistory), 223 ('/ts-alerts-history', TimeSeriesAlertsHistory),
226 ('/ts-alerts-history/(.*)', TimeSeriesAlertsHistory)]) 224 ('/ts-alerts-history/(.*)', TimeSeriesAlertsHistory)])
OLDNEW
« no previous file with comments | « appengine/sheriff_o_matic/makefile ('k') | appengine_module/gae_ts_mon/README » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698