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

Unified Diff: scripts/master/status_logger.py

Issue 1880443004: status_logger: send step results as well (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: Created 4 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | scripts/master/unittests/status_logger_test.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: scripts/master/status_logger.py
diff --git a/scripts/master/status_logger.py b/scripts/master/status_logger.py
index 91a54d13e575e6055eb5fb4fc681be842e4545db..d0bd7034f1fa2f94c6380ad421fbaa3b0eb913a1 100644
--- a/scripts/master/status_logger.py
+++ b/scripts/master/status_logger.py
@@ -183,7 +183,6 @@ class StatusEventLogger(StatusReceiverMultiService):
self._last_checked_active = now
return self._active
-
def send_build_result(
self, scheduled, started, finished, builder_name, bot_name, result,
project_id=None, subproject_tag=None, steps=None, pre_test_time_s=None):
@@ -210,6 +209,34 @@ class StatusEventLogger(StatusReceiverMultiService):
d['pre_test_time_s'] = pre_test_time_s
self.ts_mon_logger.info(json.dumps(d))
+ def send_step_results(
+ self, timestamp, builder_name, bot_name,
+ step_result, project_id, subproject_tag):
+ """Log step results for ts_mon
+
+ Args:
+ timestamp(int): when the event was generated (end of a step). Seconds
+ since the Unix epoch.
+ builder_name(str): name of the builder the steps are part of.
+ bot_name(str): name of the machine running the build.
+ step_result (str): result for this step.
+ project_id(str): 'project' as shown on the codereview.
+ subproject_tag(str): a mention of a subproject. Mostly used to distinguish
+ between chromium and blink CLs in the chromium project.
+ """
+ # the presence of the field 'step_result' is how the collecting daemon
Sergey Berezin 2016/04/11 23:49:48 nit: Capitalize the first word.
+ # tells the difference between this case and the one from send_build_result.
+ d = {
+ 'timestamp': timestamp,
+ 'builder': builder_name,
+ 'step_result': step_result,
+ 'slave': bot_name,
+ 'project_id': project_id,
+ 'subproject_tag': subproject_tag,
+ }
+ self.ts_mon_logger.info(json.dumps(d))
+
+
def send_build_event(self, timestamp_kind, timestamp, build_event_type,
bot_name, builder_name, build_number, build_scheduled_ts,
step_name=None, step_number=None, result=None,
@@ -490,6 +517,19 @@ class StatusEventLogger(StatusReceiverMultiService):
result=buildbot.status.results.Results[results[0]],
patch_url=self._get_patch_url(build.getProperties()))
+ # Send step result to ts-mon
+ properties = build.getProperties()
+ project_id = properties.getProperty('patch_project')
+ subproject_tag = properties.getProperty('subproject_tag')
+
+ self.send_step_results(
+ finished,
+ builder_name,
+ bot,
+ buildbot.status.results.Results[step.getResults()[0]],
+ project_id,
+ subproject_tag)
+
def buildFinished(self, builderName, build, results):
build_number = build.getNumber()
bot = build.getSlavename()
« no previous file with comments | « no previous file | scripts/master/unittests/status_logger_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698