1
我剛剛部署了一個應用程序到App Engine,一切都很好。我正在使用Django 1.1。僅記錄HTTP而非HTTPS的錯誤,但響應爲200?
我有一個返回一些JSON/JSONP數據的頁面。一切都很好,但我的日誌裏充滿了沒有真正信息的錯誤。我只在使用HTTP訪問應用程序時收到這些錯誤,而在HTTPS時沒有錯誤。
客戶端仍然收到一個200,數據返回罰款方式。只是當請求是HTTP時,App Engine會記錄錯誤。記錄的錯誤全部如下所示。
+ 11-16 01:02PM 20.181 /some/url?jsonp=1231234344 200 16ms 8cpu_ms 8api_cpu_ms 0kb.... E 11-16 01:02PM 20.196 E 11-16 01:02PM 20.197 E 11-16 01:02PM 20.197 www.myapplicationname.appspot.com |1| www.myapp E 11-16 01:02PM 20.197
這是什麼意思?爲什麼一切都很好,但我總是隻爲非ssl頁面獲取這些日誌?
更新: 這是唯一的日誌引用,我在我的代碼中會涉及導致錯誤的路由。它在我的main.py
#import logging, os
import os
# Must set this env var before importing any part of Django
os.environ['DJANGO_SETTINGS_MODULE'] = 'stampinstats.settings'
# django 1.1 is setup here to avoid conficts with default 0.96
import appengine_config
# Force Django to reload its settings
from django.conf import settings
settings._target = None
import logging
import django.core.handlers.wsgi
import django.db
# Google App Engine imports
from google.appengine.ext.webapp import util
def log_exception(sender, **kwargs):
logging.exception('Exception in request:')
sig = django.dispatch.Signal()
sig.connect(log_exception)
sig.disconnect(django.db._rollback_on_exception)
def main():
# Create a Django application for WSGI
application = django.core.handlers.wsgi.WSGIHandler()
# Run the WSGI CGI handler with the application
util.run_wsgi_app(application)
if __name__ == '__main__':
main()
感謝
導致這些日誌生成的路由從來沒有記錄過任何內容。我現在真正引用的唯一東西是在我的main.py中,我會在我的問題中發佈它。謝謝 – Justin 2010-11-17 02:35:15
Doh!我在我的網站根文件夾中搜索了logging.error,並且沒有發現它在那個路徑路徑中......我開始在我的應用程序中添加logging.info/error等,試圖縮小它的範圍。在文件深處,我找到了一個對'sys.stderr.write(...'的調用,所以它沒有直接調用logging.Error,而是調用了std_err,這也是爲什麼我沒有找到任何'logging .error'文本,同時對我的文件夾進行搜索...至少我學到了新東西:) – Justin 2010-11-17 23:34:02