Improve exception: don't log exception_{osv, orm, wizard}
bzr revid: ced-6bdaf4ebdab2dcded046448506f94daa0edc4c70
This commit is contained in:
parent
a66d67987e
commit
c844422d20
|
@ -86,7 +86,7 @@ class Service(object):
|
||||||
self._response_process=None
|
self._response_process=None
|
||||||
self._response=s(self._response_process_id)
|
self._response=s(self._response_process_id)
|
||||||
|
|
||||||
def abortResponse(self,error, description, origin, details):
|
def abortResponse(self, error, description, origin, details):
|
||||||
import tools
|
import tools
|
||||||
if not tools.config['debug_mode']:
|
if not tools.config['debug_mode']:
|
||||||
raise Exception("%s -- %s\n\n%s"%(origin,description,details))
|
raise Exception("%s -- %s\n\n%s"%(origin,description,details))
|
||||||
|
@ -208,10 +208,9 @@ class GenericXMLRPCRequestHandler:
|
||||||
if res!=None:
|
if res!=None:
|
||||||
r=res
|
r=res
|
||||||
return r
|
return r
|
||||||
except Exception,e:
|
except Exception, e:
|
||||||
logger = Logger()
|
tb_s = reduce(lambda x, y: x+y, traceback.format_exception(
|
||||||
tb_s = reduce(lambda x, y: x+y, traceback.format_exception(sys.exc_type, sys.exc_value, sys.exc_traceback))
|
sys.exc_type, sys.exc_value, sys.exc_traceback))
|
||||||
logger.notifyChannel("web-services", LOG_ERROR, 'Exception in call: ' + tb_s)
|
|
||||||
s=str(e)
|
s=str(e)
|
||||||
import tools
|
import tools
|
||||||
if tools.config['debug_mode']:
|
if tools.config['debug_mode']:
|
||||||
|
@ -320,9 +319,7 @@ class TinySocketClientThread(threading.Thread):
|
||||||
r=res
|
r=res
|
||||||
ts.mysend(r)
|
ts.mysend(r)
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
logger = Logger()
|
|
||||||
tb_s = reduce(lambda x, y: x+y, traceback.format_exception(sys.exc_type, sys.exc_value, sys.exc_traceback))
|
tb_s = reduce(lambda x, y: x+y, traceback.format_exception(sys.exc_type, sys.exc_value, sys.exc_traceback))
|
||||||
logger.notifyChannel("web-services", LOG_ERROR, 'Exception in call: ' + tb_s)
|
|
||||||
s=str(e)
|
s=str(e)
|
||||||
import tools
|
import tools
|
||||||
if tools.config['debug_mode']:
|
if tools.config['debug_mode']:
|
||||||
|
|
|
@ -34,8 +34,10 @@ import orm
|
||||||
import netsvc
|
import netsvc
|
||||||
import pooler
|
import pooler
|
||||||
import copy
|
import copy
|
||||||
|
import sys
|
||||||
|
|
||||||
import psycopg
|
import psycopg
|
||||||
|
from netsvc import Logger, LOG_ERROR
|
||||||
|
|
||||||
module_list = []
|
module_list = []
|
||||||
module_class_list = {}
|
module_class_list = {}
|
||||||
|
@ -101,7 +103,14 @@ class osv_pool(netsvc.Service):
|
||||||
self.abortResponse(1, 'Constraint Error', 'warning',
|
self.abortResponse(1, 'Constraint Error', 'warning',
|
||||||
self._sql_error[key])
|
self._sql_error[key])
|
||||||
self.abortResponse(1, 'Integrity Error', 'warning', inst[0])
|
self.abortResponse(1, 'Integrity Error', 'warning', inst[0])
|
||||||
|
except Exception, e:
|
||||||
|
import traceback
|
||||||
|
tb_s = reduce(lambda x, y: x+y, traceback.format_exception(
|
||||||
|
sys.exc_type, sys.exc_value, sys.exc_traceback))
|
||||||
|
logger = Logger()
|
||||||
|
logger.notifyChannel("web-services", LOG_ERROR,
|
||||||
|
'Exception in call: ' + tb_s)
|
||||||
|
raise
|
||||||
|
|
||||||
def execute(self, db, uid, obj, method, *args, **kw):
|
def execute(self, db, uid, obj, method, *args, **kw):
|
||||||
db, pool = pooler.get_db_and_pool(db)
|
db, pool = pooler.get_db_and_pool(db)
|
||||||
|
|
|
@ -36,11 +36,14 @@ import pooler
|
||||||
|
|
||||||
from osv.osv import except_osv
|
from osv.osv import except_osv
|
||||||
from osv.orm import except_orm
|
from osv.orm import except_orm
|
||||||
|
from netsvc import Logger, LOG_ERROR
|
||||||
|
import sys
|
||||||
|
|
||||||
class except_wizard(Exception):
|
class except_wizard(Exception):
|
||||||
def __init__(self, name, value):
|
def __init__(self, name, value):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.value = value
|
self.value = value
|
||||||
|
self.args = (name, value)
|
||||||
|
|
||||||
class interface(netsvc.Service):
|
class interface(netsvc.Service):
|
||||||
states = {}
|
states = {}
|
||||||
|
@ -82,9 +85,6 @@ class interface(netsvc.Service):
|
||||||
lang = context.get('lang', False)
|
lang = context.get('lang', False)
|
||||||
if result_def['type'] == 'action':
|
if result_def['type'] == 'action':
|
||||||
res['action'] = result_def['action'](self, cr, uid, data, context)
|
res['action'] = result_def['action'](self, cr, uid, data, context)
|
||||||
elif result_def['type'] == 'choice':
|
|
||||||
next_state = result_def['next_state'](self, cr, uid, data, context)
|
|
||||||
return self.execute_cr(cr, uid, data, next_state, context)
|
|
||||||
elif result_def['type'] == 'form':
|
elif result_def['type'] == 'form':
|
||||||
fields = copy.copy(result_def['fields'])
|
fields = copy.copy(result_def['fields'])
|
||||||
arch = copy.copy(result_def['arch'])
|
arch = copy.copy(result_def['arch'])
|
||||||
|
@ -146,7 +146,17 @@ class interface(netsvc.Service):
|
||||||
or isinstance(e, except_orm):
|
or isinstance(e, except_orm):
|
||||||
self.abortResponse(2, e.name, 'warning', e.value)
|
self.abortResponse(2, e.name, 'warning', e.value)
|
||||||
else:
|
else:
|
||||||
|
import traceback
|
||||||
|
tb_s = reduce(lambda x, y: x+y, traceback.format_exception(
|
||||||
|
sys.exc_type, sys.exc_value, sys.exc_traceback))
|
||||||
|
logger = Logger()
|
||||||
|
logger.notifyChannel("web-services", LOG_ERROR,
|
||||||
|
'Exception in call: ' + tb_s)
|
||||||
raise
|
raise
|
||||||
|
|
||||||
|
if result_def['type'] == 'choice':
|
||||||
|
next_state = result_def['next_state'](self, cr, uid, data, context)
|
||||||
|
return self.execute_cr(cr, uid, data, next_state, context)
|
||||||
return res
|
return res
|
||||||
|
|
||||||
def execute(self, db, uid, data, state='init', context=None):
|
def execute(self, db, uid, data, state='init', context=None):
|
||||||
|
|
Loading…
Reference in New Issue