[MEMO] MoinMoinのMOIN_DEBUGの罠
2008.04.27 Sunday 11:07
MoinMoin の起動スクリプト moin.py の先頭付近に
しかし,それは罠だった.ここはコメントアウトしてはいけない.
# Debug mode - show detailed error reportsとあるのを見ると,プラグイン作成の時はこれをコメントアウトしたくなるかもしれない.
## import os
## os.environ['MOIN_DEBUG'] = '1'
しかし,それは罠だった.ここはコメントアウトしてはいけない.
MoinMoin用プラグインを作成するためにパッケージを展開して起動スクリプト moin.py を見たら上の部分が目にとまった.何も考えずにこれをコメントアウトして始めたのだが,例外が発生した場合に問題箇所がわからず非常に困った.
で,今日なんとなくオリジナルのmoin.pyを使ってみると,例外発生時にはブラウザ上に詳細なトレース情報が出るではないか.ありゃりゃ~.
調べてみると,MoinMoin/failure.py の中にある以下の場所が問題であった.
MOIN_DEBUGが定義されている場合はその下のトレース出力処理が実行されない.それだけなら良いのだが,raise errとなっているために,これ以降のトレースしかコンソールに出ない.ここが単にraiseならオリジナルの(問題発生箇所以降の)トレースがコンソールに出る.
で,今日なんとなくオリジナルのmoin.pyを使ってみると,例外発生時にはブラウザ上に詳細なトレース情報が出るではないか.ありゃりゃ~.
調べてみると,MoinMoin/failure.py の中にある以下の場所が問題であった.
def handle(request, err):
""" Handle failures
Display fancy error view, or fallback to simple text traceback
"""
if 'MOIN_DEBUG' in os.environ:
raise err
MOIN_DEBUGが定義されている場合はその下のトレース出力処理が実行されない.それだけなら良いのだが,raise errとなっているために,これ以降のトレースしかコンソールに出ない.ここが単にraiseならオリジナルの(問題発生箇所以降の)トレースがコンソールに出る.
Comments
mag.matrix.jp ist bombig und "????????????????????? | [MEMO] MoinMoin???MOIN_DEBUG??????" sollte man unter die Lupe nehmen. Leider recherchiere ich und mein Mann grade im Internet nach "Analsex" Pornofilmen. Ich komme nichtsdestotrotz als nächstes wieder hierher zurück!