[llvm-commits] [zorg] r125917 - in /zorg/trunk/llvmlab/llvmlab: ci/status.py llvmlabtool/lab.cfg.sample llvmlabtool/main.py ui/app.py
Daniel Dunbar
daniel at zuster.org
Fri Feb 18 08:43:37 PST 2011
Author: ddunbar
Date: Fri Feb 18 10:43:37 2011
New Revision: 125917
URL: http://llvm.org/viewvc/llvm-project?rev=125917&view=rev
Log:
llvmlab: Enable file/mail error logging.
Modified:
zorg/trunk/llvmlab/llvmlab/ci/status.py
zorg/trunk/llvmlab/llvmlab/llvmlabtool/lab.cfg.sample
zorg/trunk/llvmlab/llvmlab/llvmlabtool/main.py
zorg/trunk/llvmlab/llvmlab/ui/app.py
Modified: zorg/trunk/llvmlab/llvmlab/ci/status.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/llvmlab/llvmlab/ci/status.py?rev=125917&r1=125916&r2=125917&view=diff
==============================================================================
--- zorg/trunk/llvmlab/llvmlab/ci/status.py (original)
+++ zorg/trunk/llvmlab/llvmlab/ci/status.py Fri Feb 18 10:43:37 2011
@@ -96,8 +96,7 @@
build.number < builds[-2].number):
builds.sort(key = lambda b: b.number)
else:
- # FIXME: Use flask logging APIs.
- print >>sys.stderr,"warning: unknown event '%r'" % (event,)
+ self.app.logger.warning("unknown event '%r'" % (event,))
# FIXME: Don't save this frequently, we really just want to
# checkpoint and make sure we save on restart.
Modified: zorg/trunk/llvmlab/llvmlab/llvmlabtool/lab.cfg.sample
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/llvmlab/llvmlab/llvmlabtool/lab.cfg.sample?rev=125917&r1=125916&r2=125917&view=diff
==============================================================================
--- zorg/trunk/llvmlab/llvmlab/llvmlabtool/lab.cfg.sample (original)
+++ zorg/trunk/llvmlab/llvmlab/llvmlabtool/lab.cfg.sample Fri Feb 18 10:43:37 2011
@@ -13,6 +13,10 @@
# Should server run in debug mode?
DEBUG = %(debug_server)r
+# Email configuration.
+EMAIL_RELAY_SERVER = 'localhost'
+MAIL_ERRORS = True
+
# Secret key for this server instance.
SECRET_KEY = %(secret_key)r
@@ -21,3 +25,6 @@
# Path to the buildbot status file.
STATUS_PATH = %(status_path)r
+
+# Path to the error log.
+ERROR_LOG_PATH = %(error_log_path)r
Modified: zorg/trunk/llvmlab/llvmlab/llvmlabtool/main.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/llvmlab/llvmlab/llvmlabtool/main.py?rev=125917&r1=125916&r2=125917&view=diff
==============================================================================
--- zorg/trunk/llvmlab/llvmlab/llvmlabtool/main.py (original)
+++ zorg/trunk/llvmlab/llvmlab/llvmlabtool/main.py Fri Feb 18 10:43:37 2011
@@ -69,6 +69,7 @@
cfg_path = os.path.join(basepath, 'lab.cfg')
data_path = os.path.join(basepath, 'lab-data.json')
status_path = os.path.join(basepath, 'lab-status.json')
+ error_log_path = os.path.join(basepath, 'error.log')
if not os.path.exists(basepath):
try:
@@ -101,6 +102,7 @@
cfg_options['secret_key'] = secret_key
cfg_options['data_path'] = data_path
cfg_options['status_path'] = status_path
+ cfg_options['error_log_path'] = error_log_path
cfg_data = sample_cfg_data % cfg_options
# Write the initial config file.
Modified: zorg/trunk/llvmlab/llvmlab/ui/app.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/llvmlab/llvmlab/ui/app.py?rev=125917&r1=125916&r2=125917&view=diff
==============================================================================
--- zorg/trunk/llvmlab/llvmlab/ui/app.py (original)
+++ zorg/trunk/llvmlab/llvmlab/ui/app.py Fri Feb 18 10:43:37 2011
@@ -1,4 +1,6 @@
import hashlib
+import logging
+import logging.handlers
import os
import flask
@@ -23,6 +25,19 @@
# Load the application configuration.
app.load_config(config, config_path)
+ # Configure error logging.
+ handler = logging.FileHandler(app.config['ERROR_LOG_PATH'])
+ handler.setLevel(logging.WARNING)
+ app.logger.addHandler(handler)
+
+ # Configure error emails, if requested.
+ if app.config['MAIL_ERRORS']:
+ handler = logging.handlers.SMTPHandler(
+ app.config['EMAIL_RELAY_SERVER'], app.config['ADMIN_EMAIL'],
+ app.config['ADMIN_EMAIL'], 'LLVM Lab Failure')
+ handler.setLevel(logging.ERROR)
+ app.logger.addHandler(handler)
+
# Load the database.
app.load_data(data)
@@ -56,6 +71,8 @@
"ADMIN_NAME" : "Administrator",
"ADMIN_EMAIL" : "admin at example.com",
"DEBUG" : True,
+ "EMAIL_RELAY_SERVER" : "localhost",
+ "MAIL_ERRORS" : False,
"SECRET_KEY" : secret_key,
"DATA_PATH" : None,
"STATUS_PATH" : None }
More information about the llvm-commits
mailing list