with registry.cursor() as cr:
return registry['ir.actions.report.xml']._lookup_report(cr, name[len('report.'):])
+path_prefix = os.path.realpath(os.path.dirname(os.path.dirname(__file__)))
+
class PostgreSQLHandler(logging.Handler):
""" PostgreSQL Loggin Handler will store logs in the database, by default
the current database, can be set using --log-db=DBNAME
dbname = tools.config['log_db'] or ct_db
if not dbname:
return
- with tools.ignore(Exception), sql_db.db_connect(dbname).cursor() as cr:
+ with tools.ignore(Exception), tools.mute_logger('openerp.sql_db'), sql_db.db_connect(dbname, allow_uri=True).cursor() as cr:
msg = tools.ustr(record.msg)
if record.args:
msg = msg % record.args
msg = "%s\n%s" % (msg, traceback)
# we do not use record.levelname because it may have been changed by ColoredFormatter.
levelname = logging.getLevelName(record.levelno)
- val = ('server', ct_db, record.name, levelname, msg, record.pathname, record.lineno, record.funcName)
+
+ val = ('server', ct_db, record.name, levelname, msg, record.pathname[len(path_prefix)+1:], record.lineno, record.funcName)
cr.execute("""
INSERT INTO ir_logging(create_date, type, dbname, name, level, message, path, line, func)
VALUES (NOW() at time zone 'UTC', %s, %s, %s, %s, %s, %s, %s, %s)
class ColoredFormatter(DBFormatter):
def format(self, record):
- fg_color, bg_color = LEVEL_COLOR_MAPPING[record.levelno]
+ fg_color, bg_color = LEVEL_COLOR_MAPPING.get(record.levelno, (GREEN, DEFAULT))
record.levelname = COLOR_PATTERN % (30 + fg_color, 40 + bg_color, record.levelname)
return DBFormatter.format(self, record)
return
_logger_init = True
+ logging.addLevelName(25, "INFO")
+
from tools.translate import resetlocale
resetlocale()
elif os.name == 'posix':
handler = logging.handlers.WatchedFileHandler(logf)
else:
- handler = logging.handlers.FileHandler(logf)
+ handler = logging.FileHandler(logf)
except Exception:
sys.stderr.write("ERROR: couldn't create the logfile directory. Logging to the standard output.\n")
handler = logging.StreamHandler(sys.stdout)
if tools.config['log_db']:
postgresqlHandler = PostgreSQLHandler()
- postgresqlHandler.setLevel(logging.WARNING)
+ postgresqlHandler.setLevel(25)
logging.getLogger().addHandler(postgresqlHandler)
# Configure loggers levels
'debug': ['openerp:DEBUG'],
'debug_sql': ['openerp.sql_db:DEBUG'],
'info': [],
- 'warn': ['openerp:WARNING'],
- 'error': ['openerp:ERROR'],
- 'critical': ['openerp:CRITICAL'],
+ 'warn': ['openerp:WARNING', 'werkzeug:WARNING'],
+ 'error': ['openerp:ERROR', 'werkzeug:ERROR'],
+ 'critical': ['openerp:CRITICAL', 'werkzeug:CRITICAL'],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: