From 182b9a7182400fe43ec966f74563a5acfceda49f Mon Sep 17 00:00:00 2001
From: Vo Minh Thu
Date: Tue, 24 Jan 2012 16:34:19 +0100
Subject: [PATCH 001/124] [IMP] document_webdav.webdav_server: remove the so
called `uniform log handling` of the HttpLogHandler class.
bzr revid: vmt@openerp.com-20120124153419-w6oed6z1ui8mouo7
---
addons/document_webdav/webdav_server.py | 37 +++++++++++--------------
1 file changed, 16 insertions(+), 21 deletions(-)
diff --git a/addons/document_webdav/webdav_server.py b/addons/document_webdav/webdav_server.py
index 81435a72137..ac7f87933ef 100644
--- a/addons/document_webdav/webdav_server.py
+++ b/addons/document_webdav/webdav_server.py
@@ -55,6 +55,8 @@ from DAV.propfind import PROPFIND
from xml.dom import minidom
from redirect import RedirectHTTPHandler
+_logger = logging.getLogger(__name__)
+
khtml_re = re.compile(r' KHTML/([0-9\.]+) ')
def OpenDAVConfig(**kw):
@@ -73,7 +75,6 @@ def OpenDAVConfig(**kw):
class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
verbose = False
- _logger = logging.getLogger('webdav')
protocol_version = 'HTTP/1.1'
_HTTP_OPTIONS= { 'DAV' : ['1', '2'],
'Allow' : [ 'GET', 'HEAD', 'COPY', 'MOVE', 'POST', 'PUT',
@@ -85,7 +86,7 @@ class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
return False
def _log(self, message):
- self._logger.debug(message)
+ _logger.debug(message)
def handle(self):
self._init_buffer()
@@ -106,7 +107,7 @@ class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
if hasattr(self.request, 'getsockname'):
addr, port = self.request.getsockname()
except Exception, e:
- self.log_error("Cannot calculate own address: %s" , e)
+ _logger.warning("Cannot calculate own address: %s", e)
# Too early here to use self.headers
self.baseuri = "%s://%s:%d/"% (server_proto, addr, port)
self.IFACE_CLASS = openerp_dav_handler(self, self.verbose)
@@ -126,12 +127,6 @@ class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
def get_davpath(self):
return self.davpath
- def log_message(self, format, *args):
- self._logger.log(netsvc.logging.DEBUG_RPC,format % args)
-
- def log_error(self, format, *args):
- self._logger.warning(format % args)
-
def _prep_OPTIONS(self, opts):
ret = opts
dc=self.IFACE_CLASS
@@ -142,7 +137,7 @@ class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
except DAV_Error, (ec,dd):
pass
except Exception,e:
- self.log_error("Error at options: %s", str(e))
+ _logger.warning("Error at options: %s", str(e))
raise
return ret
@@ -245,7 +240,7 @@ class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
try:
location = dc.put(uri, body, ct)
except DAV_Error, (ec,dd):
- self.log_error("Cannot PUT to %s: %s", uri, dd)
+ _logger.warning("Cannot PUT to %s: %s", uri, dd)
return self.send_status(ec)
headers = {}
@@ -284,7 +279,7 @@ class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
""" Unlocks given resource """
dc = self.IFACE_CLASS
- self.log_message('UNLOCKing resource %s' % self.headers)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'UNLOCKing resource %s' % self.headers)
uri = urlparse.urljoin(self.get_baseuri(dc), self.path)
uri = urllib.unquote(uri)
@@ -318,7 +313,7 @@ class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
dc = self.IFACE_CLASS
lock_data = {}
- self.log_message('LOCKing resource %s' % self.headers)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'LOCKing resource %s' % self.headers)
body = None
if self.headers.has_key('Content-Length'):
@@ -329,7 +324,7 @@ class DAVHandler(HttpOptions, FixSendError, DAVRequestHandler):
uri = urlparse.urljoin(self.get_baseuri(dc), self.path)
uri = urllib.unquote(uri)
- self.log_message('do_LOCK: uri = %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'do_LOCK: uri = %s' % uri)
ifheader = self.headers.get('If')
@@ -477,7 +472,7 @@ class dummy_dav_interface(object):
uri2 = uri.split('/')
if len(uri2) < 3:
return True
- logging.getLogger('webdav').debug("Requested uri: %s", uri)
+ _logger.debug("Requested uri: %s", uri)
return None # no
def is_collection(self, uri):
@@ -532,7 +527,7 @@ class DAVStaticHandler(http_server.StaticHTTPHandler):
except DAV_Error, (ec,dd):
return self.send_error(ec,dd)
except Exception:
- self.log_exception("Cannot PROPFIND")
+ _logger.exception("Cannot PROPFIND")
raise
# work around MSIE DAV bug for creation and modified date
@@ -573,7 +568,7 @@ try:
conf = OpenDAVConfig(**_dc)
handler._config = conf
reg_http_service(directory, DAVHandler, DAVAuthProvider)
- logging.getLogger('webdav').info("WebDAV service registered at path: %s/ "% directory)
+ _logger.info("WebDAV service registered at path: %s/ ", directory)
if not (config.get_misc('webdav', 'no_root_hack', False)):
# Now, replace the static http handler with the dav-enabled one.
@@ -595,7 +590,7 @@ try:
reg_http_service('/', DAVStaticHandler)
except Exception, e:
- logging.getLogger('webdav').error('Cannot launch webdav: %s' % e)
+ _logger.error('Cannot launch webdav: %s', e)
def init_well_known():
@@ -639,9 +634,9 @@ def init_principals_redirect():
if dbname:
PrincipalsRedirect.redirect_paths[''] = '/webdav/%s/principals' % dbname
reg_http_service('/principals', PrincipalsRedirect)
- logging.getLogger("web-services").info(
- "Registered HTTP redirect handler for /principals to the %s db.",
- dbname)
+ _logger.info(
+ "Registered HTTP redirect handler for /principals to the %s db.",
+ dbname)
init_principals_redirect()
From 85f0ad1ea87f017a375d187d6d92cbdfffba61c7 Mon Sep 17 00:00:00 2001
From: Vo Minh Thu
Date: Tue, 24 Jan 2012 16:57:59 +0100
Subject: [PATCH 002/124] [IMP] document_webdav.webdav_server: remove the so
called `uniform log handling` of the HttpLogHandler class.
bzr revid: vmt@openerp.com-20120124155759-6g40dmhz6ywk9xe9
---
addons/document_webdav/dav_fs.py | 57 +++++++++++++++---------------
addons/document_webdav/redirect.py | 10 +++---
2 files changed, 34 insertions(+), 33 deletions(-)
diff --git a/addons/document_webdav/dav_fs.py b/addons/document_webdav/dav_fs.py
index 772b7600f20..a292019eeab 100644
--- a/addons/document_webdav/dav_fs.py
+++ b/addons/document_webdav/dav_fs.py
@@ -175,7 +175,7 @@ class openerp_dav_handler(dav_interface):
def get_propnames(self, uri):
props = self.PROPS
- self.parent.log_message('get propnames: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'get propnames: %s' % uri)
cr, uid, pool, dbname, uri2 = self.get_cr(uri)
if not dbname:
if cr: cr.close()
@@ -203,21 +203,21 @@ class openerp_dav_handler(dav_interface):
except NotImplementedError, e:
if cr: cr.close()
import traceback
- self.parent.log_error("Cannot %s: %s", opname, str(e))
- self.parent.log_message("Exc: %s",traceback.format_exc())
+ _logger.warning("Cannot %s: %s", opname, str(e))
+ _logger.log(netsvc.logging.DEBUG_RPC, "Exc: %s" % traceback.format_exc())
# see par 9.3.1 of rfc
raise DAV_Error(403, str(e) or 'Not supported at this path')
except EnvironmentError, err:
if cr: cr.close()
import traceback
- self.parent.log_error("Cannot %s: %s", opname, err.strerror)
- self.parent.log_message("Exc: %s",traceback.format_exc())
+ _logger.warning("Cannot %s: %s", opname, err.strerror)
+ _logger.log(netsvc.logging.DEBUG_RPC, "Exc: %s" % traceback.format_exc())
raise default_exc(err.strerror)
except Exception, e:
import traceback
if cr: cr.close()
- self.parent.log_error("Cannot %s: %s", opname, str(e))
- self.parent.log_message("Exc: %s",traceback.format_exc())
+ _logger.warning("Cannot %s: %s", opname, str(e))
+ _logger.log(netsvc.logging.DEBUG_RPC, "Exc: %s" % traceback.format_exc())
raise default_exc("Operation failed")
def _get_dav_lockdiscovery(self, uri):
@@ -245,7 +245,7 @@ class openerp_dav_handler(dav_interface):
def prep_http_options(self, uri, opts):
"""see HttpOptions._prep_OPTIONS """
- self.parent.log_message('get options: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'get options: %s' % uri)
cr, uid, pool, dbname, uri2 = self.get_cr(uri, allow_last=True)
if not dbname:
@@ -268,7 +268,7 @@ class openerp_dav_handler(dav_interface):
ret[key] = []
ret[key].extend(val)
- self.parent.log_message('options: %s' % ret)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'options: %s' % ret)
else:
ret = opts
cr.close()
@@ -369,7 +369,7 @@ class openerp_dav_handler(dav_interface):
if res and len(res):
self.db_name_list.append(db_name)
except Exception, e:
- self.parent.log_error("Exception in db list: %s" % e)
+ _logger.warning("Exception in db list: %s", e)
finally:
if cr:
cr.close()
@@ -377,7 +377,7 @@ class openerp_dav_handler(dav_interface):
def get_childs(self,uri, filters=None):
""" return the child objects as self.baseuris for the given URI """
- self.parent.log_message('get children: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'get children: %s' % uri)
cr, uid, pool, dbname, uri2 = self.get_cr(uri, allow_last=True)
if not dbname:
@@ -394,7 +394,7 @@ class openerp_dav_handler(dav_interface):
fp = node.full_path()
if fp and len(fp):
fp = '/'.join(fp)
- self.parent.log_message('children for: %s' % fp)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'children for: %s' % fp)
else:
fp = None
domain = None
@@ -420,13 +420,13 @@ class openerp_dav_handler(dav_interface):
if turi.startswith(ul):
result.append( turi[len(self.parent.davpath):])
else:
- self.parent.log_error("ignore href %s because it is not under request path %s", turi, ul)
+ _logger.warning("ignore href %s because it is not under request path %s", turi, ul)
return result
# We don't want to continue with the children found below
# Note the exceptions and that 'finally' will close the
# cursor
for d in node.children(cr, domain):
- self.parent.log_message('child: %s' % d.path)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'child: %s' % d.path)
if fp:
result.append( self.urijoin(dbname,fp,d.path) )
else:
@@ -434,7 +434,7 @@ class openerp_dav_handler(dav_interface):
except DAV_Error:
raise
except Exception, e:
- self.parent.log_error("cannot get_children: "+ str(e))
+ _logger.warning("cannot get_children: "+ str(e))
raise
finally:
if cr: cr.close()
@@ -479,7 +479,7 @@ class openerp_dav_handler(dav_interface):
return pool.get('document.directory').get_object(cr, uid, uri, context=context)
def get_data(self,uri, rrange=None):
- self.parent.log_message('GET: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'GET: %s' % uri)
cr, uid, pool, dbname, uri2 = self.get_cr(uri)
try:
if not dbname:
@@ -499,7 +499,7 @@ class openerp_dav_handler(dav_interface):
start = 0
assert start >= 0
if end and end < start:
- self.parent.log_error("Invalid range for data: %s-%s" %(start, end))
+ _logger.warning("Invalid range for data: %s-%s" %(start, end))
raise DAV_Error(416, "Invalid range for data")
if end:
if end >= res.size():
@@ -514,12 +514,12 @@ class openerp_dav_handler(dav_interface):
# says we'd better just return 200 OK with empty data
return ''
except IndexError,e :
- self.parent.log_error("GET IndexError: %s", str(e))
+ _logger.warning("GET IndexError: %s", str(e))
raise DAV_NotFound2(uri2)
except Exception,e:
import traceback
- self.parent.log_error("GET exception: %s",str(e))
- self.parent.log_message("Exc: %s", traceback.format_exc())
+ _logger.warning("GET exception: %s",str(e))
+ _logger.log(netsvc.logging.DEBUG_RPC, "Exc: %s" % traceback.format_exc())
raise DAV_Error, 409
return res
finally:
@@ -528,7 +528,7 @@ class openerp_dav_handler(dav_interface):
@memoize(CACHE_SIZE)
def _get_dav_resourcetype(self, uri):
""" return type of object """
- self.parent.log_message('get RT: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'get RT: %s' % uri)
cr, uid, pool, dbname, uri2 = self.get_cr(uri)
try:
if not dbname:
@@ -546,7 +546,7 @@ class openerp_dav_handler(dav_interface):
if cr: cr.close()
def _get_dav_displayname(self,uri):
- self.parent.log_message('get DN: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'get DN: %s' % uri)
cr, uid, pool, dbname, uri2 = self.get_cr(uri)
if not dbname:
if cr: cr.close()
@@ -565,7 +565,7 @@ class openerp_dav_handler(dav_interface):
@memoize(CACHE_SIZE)
def _get_dav_getcontentlength(self, uri):
""" return the content length of an object """
- self.parent.log_message('get length: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'get length: %s' % uri)
result = 0
cr, uid, pool, dbname, uri2 = self.get_cr(uri)
if not dbname:
@@ -582,7 +582,7 @@ class openerp_dav_handler(dav_interface):
@memoize(CACHE_SIZE)
def _get_dav_getetag(self,uri):
""" return the ETag of an object """
- self.parent.log_message('get etag: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'get etag: %s' % uri)
result = 0
cr, uid, pool, dbname, uri2 = self.get_cr(uri)
if not dbname:
@@ -638,7 +638,7 @@ class openerp_dav_handler(dav_interface):
@memoize(CACHE_SIZE)
def _get_dav_getcontenttype(self,uri):
- self.parent.log_message('get contenttype: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'get contenttype: %s' % uri)
cr, uid, pool, dbname, uri2 = self.get_cr(uri)
if not dbname:
if cr: cr.close()
@@ -657,7 +657,7 @@ class openerp_dav_handler(dav_interface):
""" create a new collection
see par. 9.3 of rfc4918
"""
- self.parent.log_message('MKCOL: %s' % uri)
+ _logger.log(netsvc.logging.DEBUG_RPC, 'MKCOL: %s' % uri)
cr, uid, pool, dbname, uri2 = self.get_cr(uri)
if not uri2[-1]:
if cr: cr.close()
@@ -681,7 +681,8 @@ class openerp_dav_handler(dav_interface):
def put(self, uri, data, content_type=None):
""" put the object into the filesystem """
- self.parent.log_message('Putting %s (%d), %s'%( misc.ustr(uri), data and len(data) or 0, content_type))
+ _logger.log(netsvc.logging.DEBUG_RPC, 'Putting %s (%d), %s' % \
+ (misc.ustr(uri), data and len(data) or 0, content_type))
cr, uid, pool,dbname, uri2 = self.get_cr(uri)
if not dbname:
if cr: cr.close()
@@ -723,7 +724,7 @@ class openerp_dav_handler(dav_interface):
try:
etag = str(newchild.get_etag(cr))
except Exception, e:
- self.parent.log_error("Cannot get etag for node: %s" % e)
+ _logger.warning("Cannot get etag for node: %s", e)
ret = (str(hurl), etag)
else:
self._try_function(node.set_data, (cr, data), "save %s" % objname, cr=cr)
diff --git a/addons/document_webdav/redirect.py b/addons/document_webdav/redirect.py
index 7bc0883f9e8..7d04ffb51f5 100644
--- a/addons/document_webdav/redirect.py
+++ b/addons/document_webdav/redirect.py
@@ -23,10 +23,10 @@
import logging
import urlparse
from service.websrv_lib import FixSendError, HTTPHandler, HttpOptions
-from service.http_server import HttpLogHandler
-class RedirectHTTPHandler(HttpLogHandler, FixSendError, HttpOptions, HTTPHandler):
- _logger = logging.getLogger('httpd.well-known')
+_logger = logging.getLogger(__name__)
+
+class RedirectHTTPHandler(FixSendError, HttpOptions, HTTPHandler):
_HTTP_OPTIONS = { 'Allow': ['OPTIONS', 'GET', 'HEAD', 'PROPFIND'] }
redirect_paths = {}
@@ -62,7 +62,7 @@ class RedirectHTTPHandler(HttpLogHandler, FixSendError, HttpOptions, HTTPHandler
try:
addr, port = self.request.getsockname()
except Exception, e:
- self.log_error("Cannot calculate own address:" , e)
+ _logger.error("Cannot calculate own address:", e)
if self.headers.has_key('Host'):
uparts = list(urlparse.urlparse("%s://%s:%d"% (server_proto, addr,port)))
@@ -80,7 +80,7 @@ class RedirectHTTPHandler(HttpLogHandler, FixSendError, HttpOptions, HTTPHandler
self.send_header("Content-Length", 0)
self.end_headers()
# Do we need a Cache-content: header here?
- self._logger.debug("redirecting %s to %s", self.path, redir_path)
+ _logger.debug("redirecting %s to %s", self.path, redir_path)
return None
def do_PROPFIND(self):
From 7c4e08eb46a20e37ac490e6c2d4b916d56b8f63b Mon Sep 17 00:00:00 2001
From: Vo Minh Thu
Date: Tue, 24 Jan 2012 17:28:50 +0100
Subject: [PATCH 003/124] [IMP] account,document: changed from class __logger
to module _logger.
bzr revid: vmt@openerp.com-20120124162850-qr1or3piq9f91c7u
---
addons/account/installer.py | 5 +++--
addons/document/content_index.py | 16 ++++++++--------
2 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/addons/account/installer.py b/addons/account/installer.py
index d1b19ef4319..a9122adf488 100644
--- a/addons/account/installer.py
+++ b/addons/account/installer.py
@@ -31,10 +31,11 @@ from osv import fields, osv
import netsvc
import tools
+_logger = logging.getLogger(__name__)
+
class account_installer(osv.osv_memory):
_name = 'account.installer'
_inherit = 'res.config.installer'
- __logger = logging.getLogger(_name)
def _get_charts(self, cr, uid, context=None):
modules = self.pool.get('ir.module.module')
@@ -142,7 +143,7 @@ class account_installer(osv.osv_memory):
cr, uid, ids, context=context)
chart = self.read(cr, uid, ids, ['charts'],
context=context)[0]['charts']
- self.__logger.debug('Installing chart of accounts %s', chart)
+ _logger.debug('Installing chart of accounts %s', chart)
return modules | set([chart])
account_installer()
diff --git a/addons/document/content_index.py b/addons/document/content_index.py
index 64b480ee736..3cb408428c9 100644
--- a/addons/document/content_index.py
+++ b/addons/document/content_index.py
@@ -23,10 +23,11 @@ import os
import tempfile
from subprocess import Popen, PIPE
+_logger = logging.getLogger(__name__)
+
class NhException(Exception):
pass
-
class indexer(object):
""" An indexer knows how to parse the content of some file.
@@ -116,7 +117,6 @@ def mime_match(mime, mdict):
return (None, None)
class contentIndex(object):
- __logger = logging.getLogger('addons.document.content_index')
def __init__(self):
self.mimes = {}
self.exts = {}
@@ -132,7 +132,7 @@ class contentIndex(object):
f = True
if f:
- self.__logger.debug('Register content indexer: %r', obj)
+ _logger.debug('Register content indexer: %r', obj)
if not f:
raise Exception("Your indexer should at least suport a mimetype or extension")
@@ -169,22 +169,22 @@ class contentIndex(object):
(result, _) = pop.communicate()
mime2 = result.split(';')[0]
- self.__logger.debug('File gave us: %s', mime2)
+ _logger.debug('File gave us: %s', mime2)
# Note that the temporary file still exists now.
mime,fobj = mime_match(mime2, self.mimes)
if not mime:
mime = mime2
except Exception:
- self.__logger.exception('Cannot determine mime type')
+ _logger.exception('Cannot determine mime type')
try:
if fobj:
res = (mime, fobj.indexContent(content,filename,fname or realfname) )
else:
- self.__logger.debug("Have no object, return (%s, None)", mime)
+ _logger.debug("Have no object, return (%s, None)", mime)
res = (mime, None )
except Exception:
- self.__logger.exception("Could not index file %s (%s)",
+ _logger.exception("Could not index file %s (%s)",
filename, fname or realfname)
res = None
@@ -193,7 +193,7 @@ class contentIndex(object):
try:
os.unlink(fname)
except Exception:
- self.__logger.exception("Could not unlink %s", fname)
+ _logger.exception("Could not unlink %s", fname)
return res
From 57b41aae43f0f2626f08e3e212aad4bab0394d42 Mon Sep 17 00:00:00 2001
From: Vo Minh Thu
Date: Wed, 25 Jan 2012 10:44:51 +0100
Subject: [PATCH 004/124] [IMP] logging: use logging instead of netsvc, use
module __name__ instead of something else.
bzr revid: vmt@openerp.com-20120125094451-a6mejmnaxa2vp1bu
---
addons/account/account.py | 20 +-
.../report/bank_statement_balance_report.py | 4 -
addons/account_coda/account_coda.py | 5 +-
.../wizard/account_coda_import.py | 26 +-
addons/account_payment/account_payment.py | 7 +-
.../wizard/wizard_tech_guide_rst.py | 25 +-
.../base_module_quality.py | 21 +-
addons/document/document.py | 6 +-
addons/document/document_directory.py | 7 +-
addons/document/document_storage.py | 63 ++-
addons/document/nodes.py | 24 +-
addons/document/std_index.py | 7 +-
addons/document_ftp/ftpserver/__init__.py | 10 +-
addons/edi/__init__.py | 2 +-
addons/edi/edi_service.py | 2 +-
addons/edi/models/edi.py | 6 +-
addons/edi/models/res_partner.py | 6 +-
addons/fetchmail/fetchmail.py | 14 +-
addons/import_base/import_framework.py | 15 +-
addons/l10n_be_invoice_bba/invoice.py | 433 +++++++++---------
addons/l10n_be_invoice_bba/partner.py | 5 +-
addons/l10n_multilang/l10n_multilang.py | 13 +-
addons/mail/mail_message.py | 2 +-
addons/mail/mail_thread.py | 3 -
addons/project_messages/project_messages.py | 2 -
addons/report_webkit/webkit_report.py | 11 +-
addons/stock/stock.py | 6 +-
27 files changed, 369 insertions(+), 376 deletions(-)
diff --git a/addons/account/account.py b/addons/account/account.py
index 432a90a653e..2b1834002e7 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -19,17 +19,19 @@
#
##############################################################################
-import time
from datetime import datetime
from dateutil.relativedelta import relativedelta
+import logging
from operator import itemgetter
+import time
-import netsvc
-import pooler
-from osv import fields, osv
import decimal_precision as dp
+from osv import fields, osv
+import pooler
from tools.translate import _
+_logger = logging.getLogger(__name__)
+
def check_cycle(self, cr, uid, ids, context=None):
""" climbs the ``self._table.parent_id`` chains for 100 levels or
until it can't find any more parent(s)
@@ -212,7 +214,6 @@ class account_account(osv.osv):
_name = "account.account"
_description = "Account"
_parent_store = True
- logger = netsvc.Logger()
def search(self, cr, uid, args, offset=0, limit=None, order=None,
context=None, count=False):
@@ -295,8 +296,7 @@ class account_account(osv.osv):
if aml_query.strip():
wheres.append(aml_query.strip())
filters = " AND ".join(wheres)
- self.logger.notifyChannel('addons.'+self._name, netsvc.LOG_DEBUG,
- 'Filters: %s'%filters)
+ _logger.debug('Filters: %s', filters)
# IN might not work ideally in case there are too many
# children_and_consolidated, in that case join on a
# values() e.g.:
@@ -312,8 +312,7 @@ class account_account(osv.osv):
" GROUP BY l.account_id")
params = (tuple(children_and_consolidated),) + query_params
cr.execute(request, params)
- self.logger.notifyChannel('addons.'+self._name, netsvc.LOG_DEBUG,
- 'Status: %s'%cr.statusmessage)
+ _logger.debug('Status: %s', cr.statusmessage)
for res in cr.dictfetchall():
accounts[res['id']] = res
@@ -2083,8 +2082,7 @@ class account_tax(osv.osv):
}
def compute(self, cr, uid, taxes, price_unit, quantity, address_id=None, product=None, partner=None):
- logger = netsvc.Logger()
- logger.notifyChannel("warning", netsvc.LOG_WARNING,
+ _logger.warning(
"Deprecated, use compute_all(...)['taxes'] instead of compute(...) to manage prices with tax included")
return self._compute(cr, uid, taxes, price_unit, quantity, address_id, product, partner)
diff --git a/addons/account_bank_statement_extensions/report/bank_statement_balance_report.py b/addons/account_bank_statement_extensions/report/bank_statement_balance_report.py
index 8e1e4b09e47..50b5bcd8d36 100644
--- a/addons/account_bank_statement_extensions/report/bank_statement_balance_report.py
+++ b/addons/account_bank_statement_extensions/report/bank_statement_balance_report.py
@@ -22,14 +22,10 @@
import time
from report import report_sxw
-import pooler
-import netsvc
-logger=netsvc.Logger()
class bank_statement_balance_report(report_sxw.rml_parse):
def set_context(self, objects, data, ids, report_type=None):
- #logger.notifyChannel('addons.'+__name__, netsvc.LOG_WARNING, 'set_context, objects = %s, data = %s, ids = %s' % (objects, data, ids))
cr = self.cr
uid = self.uid
context = self.context
diff --git a/addons/account_coda/account_coda.py b/addons/account_coda/account_coda.py
index f967669b98e..b4723794578 100644
--- a/addons/account_coda/account_coda.py
+++ b/addons/account_coda/account_coda.py
@@ -21,11 +21,10 @@
##############################################################################
import time
-from osv import osv, fields
+
import decimal_precision as dp
-import netsvc
+from osv import osv, fields
from tools.translate import _
-logger=netsvc.Logger()
class coda_bank_account(osv.osv):
_name= 'coda.bank.account'
diff --git a/addons/account_coda/wizard/account_coda_import.py b/addons/account_coda/wizard/account_coda_import.py
index 02e72bc3562..ac9a623e2fc 100644
--- a/addons/account_coda/wizard/account_coda_import.py
+++ b/addons/account_coda/wizard/account_coda_import.py
@@ -20,15 +20,16 @@
#
##############################################################################
-import time
import base64
+import re
+from sys import exc_info
+import time
+from traceback import format_exception
+
from osv import fields,osv
from tools.translate import _
-import netsvc
-import re
-from traceback import format_exception
-from sys import exc_info
-logger=netsvc.Logger()
+
+_logger = logging.getLogger(__name__)
class account_coda_import(osv.osv_memory):
_name = 'account.coda.import'
@@ -816,7 +817,6 @@ class account_coda_import(osv.osv_memory):
ttype = line['type'] == 'supplier' and 'payment' or 'receipt',
date = line['val_date'],
context = context)
- #logger.notifyChannel('addons.'+self._name, netsvc.LOG_WARNING, 'voucher_dict = %s' % voucher_dict)
voucher_line_vals = False
if voucher_dict['value']['line_ids']:
for line_dict in voucher_dict['value']['line_ids']:
@@ -889,22 +889,22 @@ class account_coda_import(osv.osv_memory):
nb_err += 1
err_string += _('\nError ! ') + str(e)
tb = ''.join(format_exception(*exc_info()))
- logger.notifyChannel('addons.'+self._name, netsvc.LOG_ERROR,
- 'Application Error while processing Statement %s\n%s' % (statement.get('name', '/'),tb))
+ _logger.error('Application Error while processing Statement %s\n%s',
+ statement.get('name', '/'), tb)
except Exception, e:
cr.rollback()
nb_err += 1
err_string += _('\nSystem Error : ') + str(e)
tb = ''.join(format_exception(*exc_info()))
- logger.notifyChannel('addons.'+self._name, netsvc.LOG_ERROR,
- 'System Error while processing Statement %s\n%s' % (statement.get('name', '/'),tb))
+ _logger.error('System Error while processing Statement %s\n%s',
+ statement.get('name', '/'), tb)
except :
cr.rollback()
nb_err += 1
err_string = _('\nUnknown Error : ') + str(e)
tb = ''.join(format_exception(*exc_info()))
- logger.notifyChannel('addons.'+self._name, netsvc.LOG_ERROR,
- 'Unknown Error while processing Statement %s\n%s' % (statement.get('name', '/'),tb))
+ _logger.error('Unknown Error while processing Statement %s\n%s',
+ statement.get('name', '/'), tb)
# end 'for statement in coda_statements'
diff --git a/addons/account_payment/account_payment.py b/addons/account_payment/account_payment.py
index 1de715dc777..11d4f98af8f 100644
--- a/addons/account_payment/account_payment.py
+++ b/addons/account_payment/account_payment.py
@@ -19,11 +19,14 @@
#
##############################################################################
+import logging
import time
from osv import osv, fields
import netsvc
+_logger = logging.getLogger(__name__)
+
class payment_mode(osv.osv):
_name= 'payment.mode'
_description= 'Payment Mode'
@@ -70,9 +73,7 @@ class payment_order(osv.osv):
#dead code
def get_wizard(self, type):
- logger = netsvc.Logger()
- logger.notifyChannel("warning", netsvc.LOG_WARNING,
- "No wizard found for the payment type '%s'." % type)
+ _logger.warning("No wizard found for the payment type '%s'.", type)
return None
def _total(self, cursor, user, ids, name, args, context=None):
diff --git a/addons/base_module_doc_rst/wizard/wizard_tech_guide_rst.py b/addons/base_module_doc_rst/wizard/wizard_tech_guide_rst.py
index 39933c39a3e..9f4c75918b9 100644
--- a/addons/base_module_doc_rst/wizard/wizard_tech_guide_rst.py
+++ b/addons/base_module_doc_rst/wizard/wizard_tech_guide_rst.py
@@ -18,17 +18,18 @@
# along with this program. If not, see .
#
##############################################################################
-from os.path import join
import base64
-import tempfile
-import tarfile
import httplib
+import logging
+import os
+from os.path import join
+import tarfile
+import tempfile
-import netsvc
import wizard
import pooler
-import os
-import tools
+
+_logger = logging.getLogger(__name__)
choose_file_form = '''
-
+
-
+