AppEngine中的自定义日志

时间:2012-01-12 16:08:27

标签: python google-app-engine logging

我有一个应用程序,我想记录一些统计信息以供以后分析,但在应用程序本身中根本不需要。即,应用程序永远不需要读取数据。无论使用什么系统来存储这些统计数据,我只需要能够定期转储数据。

我可以使用内置于AppEngine中的日志记录,但随后它将显示在应用程序日志中。我想保留应用程序日志以便调试应用程序,而不必在每次检查时都看到其他自定义信息。

你会怎么做?

编辑:有关统计数据的更多详细信息。每次用户完成特定任务(每天1-3次)时,我们都需要存储有关该任务的详细信息。如事件的时间和顺序。这些将在每个会话中存储在一个字符串中 - 1-2kB。

2 个答案:

答案 0 :(得分:3)

我的应用程序中有类似的日志记录,我所做的是在自托管服务器中设置一个简单的servlet,它接收日志字符串和级别并将它们存储在我们的本地数据库中。每次我需要这种日志时,我都会使用异步URLFetch将数据从我们的应用程序发送到我们的日志记录服务器。

我可以将日志数据存储在数据存储区中,但是我会失去对我的日志字符串进行全文搜索的选项,根据我的经验,这在您筛选日志文件时非常宝贵。我还可以将日志存储在外部文件中,grep只存储我需要的行。

答案 1 :(得分:2)

您最好的选择是将此数据存储在数据存储区中。如果您担心延迟,可以使用异步操作,并尽快开始写入,也可以使用任务队列离线执行写操作。