Esempio n. 1
0
    def emit(self, record):
        ct = threading.current_thread()
        ct_db = getattr(ct, 'dbname', None)
        dbname = tools.config['log_db'] if tools.config[
            'log_db'] and tools.config['log_db'] != '%d' else ct_db
        if not dbname:
            return
        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
            traceback = getattr(record, 'exc_text', '')
            if traceback:
                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[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)
            """, val)
Esempio n. 2
0
    def emit(self, record):
        ct = threading.current_thread()
        ct_db = getattr(ct, "dbname", None)
        dbname = tools.config["log_db"] or ct_db
        if not dbname:
            return
        with tools.ignore(Exception), tools.mute_logger("openerp.sql_db"), sql_db.db_connect(dbname).cursor() as cr:
            msg = tools.ustr(record.msg)
            if record.args:
                msg = msg % record.args
            traceback = getattr(record, "exc_text", "")
            if traceback:
                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[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)
            """,
                val,
            )
Esempio n. 3
0
 def emit(self, record):
     ct = threading.current_thread()
     ct_db = getattr(ct, 'dbname', None)
     ct_uid = getattr(ct, 'uid', None)
     dbname = tools.config['log_db'] or ct_db
     if not dbname:
         return
     with tools.ignore(Exception), sql_db.db_connect(dbname).cursor() as cr:
         msg = tools.ustr(record.msg)
         if record.args:
             msg = msg % record.args
         traceback = getattr(record, 'exc_text', '')
         if traceback:
             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 = (ct_uid, ct_uid, 'server', ct_db, record.name, levelname, msg, record.pathname, record.lineno, record.funcName)
         cr.execute("""
             INSERT INTO ir_logging(create_date, write_date, create_uid, write_uid, type, dbname, name, level, message, path, line, func)
             VALUES (NOW() at time zone 'UTC', NOW() at time zone 'UTC', %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
         """, val)
Esempio n. 4
0
    def emit(self, record):
        ct = threading.current_thread()
        ct_db = getattr(ct, 'dbname', None)
        dbname = tools.config['log_db'] if tools.config['log_db'] and tools.config['log_db'] != '%d' else ct_db
        if not dbname:
            return
        with tools.ignore(Exception), tools.mute_logger('openerp.sql_db'), sql_db.db_connect(dbname, allow_uri=True).cursor() as cr:
            cr.autocommit(True)
            msg = tools.ustr(record.msg)
            if record.args:
                msg = msg % record.args
            traceback = getattr(record, 'exc_text', '')
            if traceback:
                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[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)
            """, val)