示例#1
0
 def auth_check(self, request, method):
     if not hasattr(
             method,
             '_unauthenticated') and not request.user.is_authenticated():
         response = BaseView(request)
         return response.add_errors('401 -- Unauthorized',
                                    status=401).serialize()
示例#2
0
def generic_exception_handler(request, exception):
    from services.view import BaseView
    response = BaseView(request=request)
    _, _, tb = sys.exc_info()
    import traceback
    frames = traceback.extract_tb(tb)
    frame_template = "File %s, line %s, in %s\n  %s\n"
    error_header = '----%s----\n' % datetime.datetime.utcnow()
    error = ''

    for frame in frames:
        error += frame_template % frame

    if len(str(exception.message)) < 2000:
        error += str(exception.message)

    error += '\n'

    response.add_errors(error)
    logger = logging.getLogger('default')
    logger.error(error_header + error)
    try:
        transaction.rollback()
    except Exception as e:
        print "Error rolling back: " + e.message

    return response.serialize()
示例#3
0
def generic_exception_handler(request, exception):
    from services.view import BaseView
    response = BaseView(request=request)
    _, _, tb = sys.exc_info()
    import traceback
    frames = traceback.extract_tb(tb)
    frame_template = "File %s, line %s, in %s\n  %s\n"
    error_header = '----%s----\n' % datetime.datetime.utcnow()
    error = ''

    for frame in frames:
        error += frame_template % frame

    if len(str(exception.message)) < 2000:
        error += str(exception.message)

    error += '\n'

    response.add_errors(error)
    logger = logging.getLogger('default')
    logger.error(error_header + error)
    try:
        transaction.rollback()
    except Exception as e:
        print "Error rolling back: " + e.message

    return response.serialize()
示例#4
0
def generic_exception_handler(request, exception):
    response = BaseView(request=request)
    _, _, tb = sys.exc_info()
    # we just want the last frame, (the one the exception was thrown from)
    import traceback, socket
    frames = traceback.extract_tb(tb)
    frame_template = "File %s, line %s, in %s\n  %s\n"
    error_header = '----%s----\n' % datetime.datetime.utcnow()
    error = ''

    for frame in frames:
        error += frame_template % frame

    if exception.message:
        error += exception.message

    error += '\n'

    response.add_errors(error)
    logger = logging.getLogger('error')
    mail_logger = logging.getLogger('exception_email')
    logger.error(error_header+error)
    mail_logger.error('Internal Server Error: %s on %s', request.path, socket.gethostname(),
        exc_info=tb,
        extra={
            'status_code': 500,
            'request': request
        }
    )

    if transaction.is_dirty():
        transaction.rollback()

    return response.serialize()
示例#5
0
    def new_function(*args, **kwargs):
        response = BaseView()
        try:
            request = [a for a in args if hasattr(a, 'user')][0]
        except IndexError:
            return response.send(errors="Login required method called without request object", status=500)
        if request.user.is_authenticated():
            return decorated_function(*args, **kwargs)

        return response.send(errors='401 -- Unauthorized', status=401)
示例#6
0
    def new_function(*args, **kwargs):
        response = BaseView()
        try:
            request = [a for a in args if hasattr(a, 'user')][0]
        except IndexError:
            return response.send(
                errors="Login required method called without request object",
                status=500)
        if request.user.is_authenticated():
            return decorated_function(*args, **kwargs)

        return response.send(errors='401 -- Unauthorized', status=401)
示例#7
0
    def new_function(*args, **kwargs):
        try:
            request = [a for a in args if hasattr(a, 'user')][0]
        except IndexError:
            response = [a for a in args if isinstance(a, BaseView)][0]
            response.add_errors("Login required method called without request object", status=500)
            return response
        response = BaseView(request=request)
        if request.user.is_authenticated():
            return decorated_function(*args, **kwargs)

        response.add_errors('401 -- Unauthorized', status=401)
        return response
示例#8
0
 def auth_check(self, request, method):
     if not hasattr(method, '_unauthenticated') and not request.user.is_authenticated():
         response = BaseView(request)
         return response.add_errors('401 -- Unauthorized', status=401).serialize()