[IMP] openerp.service: _logger with fully qualified module name.
authorVo Minh Thu <vmt@openerp.com>
Tue, 24 Jan 2012 15:07:50 +0000 (16:07 +0100)
committerVo Minh Thu <vmt@openerp.com>
Tue, 24 Jan 2012 15:07:50 +0000 (16:07 +0100)
bzr revid: vmt@openerp.com-20120124150750-0bn7nagjx9k3bi6j

openerp/service/__init__.py
openerp/service/http_server.py
openerp/service/netrpc_server.py
openerp/service/web_services.py

index 1bb83df..9fa1cf5 100644 (file)
@@ -46,6 +46,8 @@ import openerp.wsgi
     low-level behavior of the wire.
 """
 
+_logger = logging.getLogger(__name__)
+
 def start_services():
     """ Start all services.
 
@@ -80,9 +82,8 @@ def stop_services():
     openerp.netsvc.Server.quitAll()
     openerp.wsgi.stop_server()
     config = openerp.tools.config
-    logger = logging.getLogger('server')
-    logger.info("Initiating shutdown")
-    logger.info("Hit CTRL-C again or send a second signal to force the shutdown.")
+    _logger.info("Initiating shutdown")
+    _logger.info("Hit CTRL-C again or send a second signal to force the shutdown.")
     logging.shutdown()
 
     # Manually join() all threads before calling sys.exit() to allow a second signal
index 66d701e..8ef33a1 100644 (file)
@@ -60,6 +60,8 @@ try:
 except ImportError:
     class SSLError(Exception): pass
 
+_logger = logging.getLogger(__name__)
+
 class HttpLogHandler:
     """ helper class for uniform log handling
     Please define self._logger at each class that is derived from this
@@ -120,8 +122,7 @@ def init_static_http():
     
     reg_http_service(base_path, StaticHTTPHandler)
     
-    logging.getLogger("web-services").info("Registered HTTP dir %s for %s" % \
-                        (document_root, base_path))
+    _logger.info("Registered HTTP dir %s for %s", document_root, base_path)
 
 import security
 
@@ -140,11 +141,11 @@ class OpenERPAuthProvider(AuthProvider):
                 return False
             return (user, passwd, db, uid)
         except Exception,e:
-            logging.getLogger("auth").debug("Fail auth: %s" % e )
+            _logger.debug("Fail auth: %s" % e )
             return False
 
     def log(self, msg, lvl=logging.INFO):
-        logging.getLogger("auth").log(lvl,msg)
+        _logger.log(lvl,msg)
 
     def checkRequest(self,handler,path, db=False):        
         auth_str = handler.headers.get('Authorization',False)
index f86d6d2..bf34bb7 100644 (file)
@@ -36,6 +36,8 @@ import openerp.netsvc as netsvc
 import openerp.tiny_socket as tiny_socket
 import openerp.tools as tools
 
+_logger = logging.getLogger(__name__)
+
 class TinySocketClientThread(threading.Thread):
     def __init__(self, sock, threads):
         spn = sock and sock.getpeername()
@@ -69,12 +71,12 @@ class TinySocketClientThread(threading.Thread):
                     valid_exception = Exception(netrpc_handle_exception_legacy(e)) 
                     valid_traceback = getattr(e, 'traceback', sys.exc_info())
                     formatted_traceback = "".join(traceback.format_exception(*valid_traceback))
-                    logging.getLogger('web-services').debug("netrpc: communication-level exception", exc_info=True)
+                    _logger.debug("netrpc: communication-level exception", exc_info=True)
                     ts.mysend(valid_exception, exception=True, traceback=formatted_traceback)
                     break
                 except Exception, ex:
                     #terminate this channel if we can't properly send back the error
-                    logging.getLogger('web-services').exception("netrpc: cannot deliver exception message to client")
+                    _logger.exception("netrpc: cannot deliver exception message to client")
                     break
 
         netsvc.close_socket(self.sock)
@@ -127,11 +129,10 @@ class TinySocketServerThread(threading.Thread,netsvc.Server):
                 if (lt > 10) and (lt % 10 == 0):
                      # Not many threads should be serving at the same time, so log
                      # their abuse.
-                     netsvc.Logger().notifyChannel("web-services", netsvc.LOG_DEBUG,
-                        "Netrpc: %d threads" % len(self.threads))
+                     _logger.debug("Netrpc: %d threads", len(self.threads))
             self.socket.close()
         except Exception, e:
-            logging.getLogger('web-services').warning("Netrpc: closing because of exception %s" % str(e))
+            _logger.warning("Netrpc: closing because of exception %s" % str(e))
             self.socket.close()
             return False
 
index 1bda023..3cf8c7f 100644 (file)
@@ -50,6 +50,8 @@ from openerp.service import http_server
     procedures to be called. Each method has its own arguments footprint.
 """
 
+_logger = logging.getLogger(__name__)
+
 RPC_VERSION_1 = {'server_version': '6.1', 'protocol_version': 1}
 
 # This should be moved to openerp.modules.db, along side initialize().
@@ -83,7 +85,7 @@ def _initialize_db(serv, id, db_name, demo, lang, user_password):
         cr.close()
     except Exception, e:
         serv.actions[id].update(clean=False, exception=e)
-        logging.getLogger('db.create').exception('CREATE DATABASE failed:')
+        _logger.exception('CREATE DATABASE failed:')
         serv.actions[id]['traceback'] = traceback.format_exc()
         if cr:
             cr.close()
@@ -134,7 +136,7 @@ class db(netsvc.ExportService):
 
         self._create_empty_database(db_name)
 
-        logging.getLogger('db.create').info('CREATE DATABASE %s', db_name.lower())
+        _logger.info('CREATE DATABASE %s', db_name.lower())
         create_thread = threading.Thread(target=_initialize_db,
                 args=(self, id, db_name, demo, lang, user_password))
         create_thread.start()
@@ -150,7 +152,7 @@ class db(netsvc.ExportService):
 
         self.actions[id] = {'clean': False}
 
-        logging.getLogger('db.create').info('CREATE DATABASE %s', db_name.lower())
+        _logger.info('CREATE DATABASE %s', db_name.lower())
         self._create_empty_database(db_name)
         _initialize_db(self, id, db_name, demo, lang, user_password)
         return True
@@ -173,7 +175,6 @@ class db(netsvc.ExportService):
     def exp_drop(self, db_name):
         openerp.modules.registry.RegistryManager.delete(db_name)
         sql_db.close_db(db_name)
-        logger = netsvc.Logger()
 
         db = sql_db.db_connect('template1')
         cr = db.cursor()
@@ -182,12 +183,10 @@ class db(netsvc.ExportService):
             try:
                 cr.execute('DROP DATABASE "%s"' % db_name)
             except Exception, e:
-                logger.notifyChannel("web-services", netsvc.LOG_ERROR,
-                        'DROP DB: %s failed:\n%s' % (db_name, e))
+                _logger.error('DROP DB: %s failed:\n%s', db_name, e)
                 raise Exception("Couldn't drop database %s: %s" % (db_name, e))
             else:
-                logger.notifyChannel("web-services", netsvc.LOG_INFO,
-                    'DROP DB: %s' % (db_name))
+                _logger.info('DROP DB: %s', db_name)
         finally:
             cr.close()
         return True
@@ -202,8 +201,6 @@ class db(netsvc.ExportService):
             os.environ['PGPASSWORD'] = ''
 
     def exp_dump(self, db_name):
-        logger = netsvc.Logger()
-
         self._set_pg_psw_env_var()
 
         cmd = ['pg_dump', '--format=c', '--no-owner']
@@ -220,24 +217,19 @@ class db(netsvc.ExportService):
         data = stdout.read()
         res = stdout.close()
         if res:
-            logger.notifyChannel("web-services", netsvc.LOG_ERROR,
-                    'DUMP DB: %s failed\n%s' % (db_name, data))
+            _logger.error('DUMP DB: %s failed\n%s', db_name, data)
             raise Exception, "Couldn't dump database"
-        logger.notifyChannel("web-services", netsvc.LOG_INFO,
-                'DUMP DB: %s' % (db_name))
+        _logger.info('DUMP DB: %s', db_name)
 
         self._unset_pg_psw_env_var()
 
         return base64.encodestring(data)
 
     def exp_restore(self, db_name, data):
-        logger = netsvc.Logger()
-
         self._set_pg_psw_env_var()
 
         if self.exp_db_exist(db_name):
-            logger.notifyChannel("web-services", netsvc.LOG_WARNING,
-                    'RESTORE DB: %s already exists' % (db_name,))
+            _logger.warning('RESTORE DB: %s already exists', db_name)
             raise Exception, "Database already exists"
 
         self._create_empty_database(db_name)
@@ -266,8 +258,7 @@ class db(netsvc.ExportService):
         res = stdout.close()
         if res:
             raise Exception, "Couldn't restore database"
-        logger.notifyChannel("web-services", netsvc.LOG_INFO,
-                'RESTORE DB: %s' % (db_name))
+        _logger.info('RESTORE DB: %s', db_name)
 
         self._unset_pg_psw_env_var()
 
@@ -276,7 +267,6 @@ class db(netsvc.ExportService):
     def exp_rename(self, old_name, new_name):
         openerp.modules.registry.RegistryManager.delete(old_name)
         sql_db.close_db(old_name)
-        logger = netsvc.Logger()
 
         db = sql_db.db_connect('template1')
         cr = db.cursor()
@@ -285,16 +275,14 @@ class db(netsvc.ExportService):
             try:
                 cr.execute('ALTER DATABASE "%s" RENAME TO "%s"' % (old_name, new_name))
             except Exception, e:
-                logger.notifyChannel("web-services", netsvc.LOG_ERROR,
-                        'RENAME DB: %s -> %s failed:\n%s' % (old_name, new_name, e))
+                _logger.error('RENAME DB: %s -> %s failed:\n%s', old_name, new_name, e)
                 raise Exception("Couldn't rename database %s to %s: %s" % (old_name, new_name, e))
             else:
                 fs = os.path.join(tools.config['root_path'], 'filestore')
                 if os.path.exists(os.path.join(fs, old_name)):
                     os.rename(os.path.join(fs, old_name), os.path.join(fs, new_name))
 
-                logger.notifyChannel("web-services", netsvc.LOG_INFO,
-                    'RENAME DB: %s -> %s' % (old_name, new_name))
+                _logger.info('RENAME DB: %s -> %s', old_name, new_name)
         finally:
             cr.close()
         return True
@@ -369,7 +357,6 @@ class db(netsvc.ExportService):
         return True
 
 class common(netsvc.ExportService):
-    _logger = logging.getLogger('web-services')
 
     def __init__(self,name="common"):
         netsvc.ExportService.__init__(self,name)
@@ -394,7 +381,7 @@ class common(netsvc.ExportService):
         # the res.users model
         res = security.login(db, login, password)
         msg = res and 'successful login' or 'bad login or password'
-        self._logger.info("%s from '%s' using database '%s'", msg, login, db.lower())
+        _logger.info("%s from '%s' using database '%s'", msg, login, db.lower())
         return res or False
 
     def exp_authenticate(self, db, login, password, user_agent_env):
@@ -560,9 +547,8 @@ GNU Public Licence.
         return os.times()
 
     def exp_get_sqlcount(self):
-        logger = logging.getLogger('db.cursor')
-        if not logger.isEnabledFor(logging.DEBUG_SQL):
-            logger.warning("Counters of SQL will not be reliable unless DEBUG_SQL is set at the server's config.")
+        if not _logger.isEnabledFor(logging.DEBUG_SQL):
+            _logger.warning("Counters of SQL will not be reliable unless DEBUG_SQL is set at the server's config.")
         return sql_db.sql_counter
 
 
@@ -693,9 +679,7 @@ class report_spool(netsvc.ExportService):
 
             tb = sys.exc_info()
             tb_s = "".join(traceback.format_exception(*tb))
-            logger = netsvc.Logger()
-            logger.notifyChannel('web-services', netsvc.LOG_ERROR,
-                    'Exception: %s\n%s' % (str(exception), tb_s))
+            _logger.error('Exception: %s\n%s', str(exception), tb_s)
             if hasattr(exception, 'name') and hasattr(exception, 'value'):
                 self._reports[id]['exception'] = openerp.exceptions.DeferredException(tools.ustr(exception.name), tools.ustr(exception.value))
             else:
@@ -736,9 +720,7 @@ class report_spool(netsvc.ExportService):
 
                 tb = sys.exc_info()
                 tb_s = "".join(traceback.format_exception(*tb))
-                logger = netsvc.Logger()
-                logger.notifyChannel('web-services', netsvc.LOG_ERROR,
-                        'Exception: %s\n%s' % (str(exception), tb_s))
+                _logger.errro('Exception: %s\n%s', str(exception), tb_s)
                 if hasattr(exception, 'name') and hasattr(exception, 'value'):
                     self._reports[id]['exception'] = openerp.exceptions.DeferredException(tools.ustr(exception.name), tools.ustr(exception.value))
                 else: