Python logservice.fetch()未返回任何内容
以下代码用于从app engine获取日志以进行进一步处理。但是我现在不知道如何使用logservice.fetch的结果来访问日志消息Python logservice.fetch()未返回任何内容,python,api,google-app-engine,logging,Python,Api,Google App Engine,Logging,以下代码用于从app engine获取日志以进行进一步处理。但是我现在不知道如何使用logservice.fetch的结果来访问日志消息 import cgi from google.appengine.ext import webapp from google.appengine.ext.webapp.util import run_wsgi_app from google.appengine.ext import db from google.appengine.api.logservice
import cgi
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
from google.appengine.ext import db
from google.appengine.api.logservice import logservice
logservice.AUTOFLUSH_ENABLED = False
class MainPage(webapp.RequestHandler):
def get(self):
requestlogs = logservice.fetch(start_time=1332200000, end_time=1332249954, offset=None, minimum_log_level=logservice.LOG_LEVEL_INFO, include_incomplete=False, include_app_logs=True, version_ids=None, batch_size=None)
self.response.out.write(requestlogs)
c=0
for iter in requestlogs:
c=c+1
print c
application = webapp.WSGIApplication([('/logs', MainPage)], debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
在您的情况下,代码如下所示:
from google.appengine.api import logservice
MAX_LOGS_TO_READ = 10
class MainPage(webapp.RequestHandler):
def get(self):
request_logs = logservice.fetch()
current_log = 0
for log in request_logs:
if current_log > MAX_LOGS_TO_READ:
break
self.response.out.write(log.combined)
几点意见
- 使用self.response.out.write()将数据写入响应输出流李>
- fetch()返回RequestLog对象的迭代器。您可以使用这个迭代器,然后在for循环中遍历迭代器知道的日志集李>
- RequestLog对象返回许多属性,这些属性主要记录在此处:
print
是个坏主意;使用self.response.out.write()
Hmm….实际上它给出了一个空白页。。。。好的……我将尝试self.response.out.write()…顺便问一下,logservice.fetch实际返回的是什么…..我的意思是返回的对象的属性是什么…..我不知道在获取对象后如何访问日志消息logs@MayankKhandelwal这些都在文档中-你读过吗?我读过了…不知何故…无法实现itI。我一直在使用按照您的建议修改了代码…到目前为止工作正常…但是现在当我想访问一整天的日志文件时,我遇到了以下错误------状态:500 OverQuotaError:API调用logservice.Read()需要的配额比可用的配额多