如何减少谷歌应用程序引擎后端中的logservice RPC

时间:2011-06-21 01:56:25

标签: google-app-engine rpc backend

enter image description here

上面是我的应用程序的单个GET请求的appstats图像,

enter image description here

此图显示了单个logservice RPC

的RPC跟踪

loservice调用的数量会对app产生负面影响,对于5 urlfetch RPC,使用后端时有大约80个logsservice RPC。我不知道这些logservice rpc调用的原因,我如何减少logservice RPC的数量,

在后端文档中,有关logservice的文档有限

logservice.flush()

我如何控制后端的日志刷新,而不是随机的logservice调用 感谢

1 个答案:

答案 0 :(得分:3)

您可以通过更改logservice API设置的一些值来配置日志刷新,记录为heresource)。默认设置是每10秒,1024字节或20行刷新,以先到者为准。您可以单独禁用其中任何一个,也可以禁用整个自动刷新过程。

完全禁用autoflush:

from google.appengine.api import logservice
logservice.AUTOFLUSH_ENABLED = False

# When you want to flush manually, do this
logservice.flush()

每隔20行冲洗一次,没有时间或字节限制:

from google.appengine.api import logservice
logservice.AUTOFLUSH_EVERY_SECONDS = None
logservice.AUTOFLUSH_EVERY_BYTES = None
logservice.AUTOFLUSH_EVERY_LINES 20 # The default, but set here for clarity

不要过于吝啬日志刷新 - 正如您所看到的,RPC非常快,当您需要调试时,没有刷新日志会非常痛苦。