일반 오래된 파이썬 로깅을 통해보기에 오류를 기록 할 수 있습니다. 또는 응답의 상태를 500으로 설정하십시오 (보기가 현재 응답을 나타내는 200의 상태를 리턴한다고 가정한다고 가정 함).
편집 : 작업 예를
내가 로깅 전문가는 아니지만이 development.ini/production.ini에서 로깅 설정이 뽑힐 것 같은 인상이었다가, 아래의 예는 것을 증명하는 것 하지만 당신은 ..... 뷰 기본
[formatter_generic]
# format = %(asctime)s %(levelname)-5.5s [%(name)s][%(threadName)s] %(message)s
format = y u no work??!!?? %(message)s
# End logging configuration
에서 설정을 기록 할
변경 판사
from pyramid.view import view_config
from webob import Response
import logging
log = logging.getLogger(__name__)
@view_config(route_name='home', renderer='templates/mytemplate.pt')
def my_view(request):
raise ValueError("oops")
return {'project':'tstLogError'}
@view_config(context=Exception)
def exception_view(context, request):
log.error("The error was: %s" % context, exc_info=(context))
return Response(status_int=500, body=str(context))
from pyramid.view import view_config
from webob import Response
,
콘솔 출력 :
serving on http://0.0.0.0:6543
y u no work??!!?? The error was: oops
Traceback (most recent call last):
File "/home/twillis/projects/TestLogError/local/lib/python2.7/site-packages/pyramid/tweens.py", line 20, in excview_tween
response = handler(request)
File "/home/twillis/projects/TestLogError/local/lib/python2.7/site-packages/pyramid/router.py", line 164, in handle_request
response = view_callable(context, request)
File "/home/twillis/projects/TestLogError/local/lib/python2.7/site-packages/pyramid/config/views.py", line 333, in rendered_view
result = view(context, request)
File "/home/twillis/projects/TestLogError/local/lib/python2.7/site-packages/pyramid/config/views.py", line 471, in _requestonly_view
response = view(request)
File "/home/twillis/projects/TestLogError/tstLogError/tstlogerror/views.py", line 8, in my_view
raise ValueError("oops")
ValueError: oops
직접 오류를 기록하거나 오류를 다시 기록해야합니다. 오류를 다시 발생 시키면 기록되지만보기가 렌더링되지 않습니다. 보기 내에서 오류를 기록하면보기가 기록되고 렌더링됩니다. –