繁体   English   中英

Google App Engine:流量监控

[英]Google App Engine: traffic monitoring

监控Google App Engine托管网站的网站流量的最佳方法是什么?

在每个页面处理程序中放入一些代码来记录每个页面请求到数据存储区是相当简单的,现在(感谢stackoverflow)我有代码来记录引用站点

还有一个关于使用数据存储区记录流量的问题 ,但它没有考虑其他选项(如果有的话)。

我担心的是数据存储区很昂贵。 还有另外一种方法吗? 人们通常会实施流量监控,还是我过度热心?

如果我通过数据存储实现流量监控,建议捕获哪些字段? 什么是好的和/或常见的做法?

我会选择:时间戳; 页; 引用者; IP地址; 用户名(如果已登录)。 还有其他建议吗?

您提及的所有项目都已由内置的App Engine记录器记录。 你为什么要复制那个? 如果需要,您可以定期下载日志以进行分析。

人们通常使用谷歌分析(或类似的东西),因为它进行客户端跟踪,并提供更多的洞察力,然后服务器端跟踪。

如果您只需要服务器端跟踪,那么分析日志就足够了。 Log API的问题在于它可能很昂贵,因为它不会进行真正的查询:对于每个日志搜索,它都会遍历所有日志(在范围内)。

您可能希望查看Mache ,这是一个将所有GAE日志导出到具有适当查询功能的Google BigQuery的工具。

另一种选择是下载日志并使用本地工具进行分析。 GAE日志采用Apache格式,因此有大量工具可供使用

您可以使用日志记录模块,它具有单独的配额限制。

7 MB,跨越69天(保留限制的1%)

我不知道限制是什么,但这是我的应用程序的一行,所以它似乎相当大。

然后,您可以添加到日志中

logging.debug("something to store")

如果它还没有你需要的东西,那么在本地读出来:

appcfg.py --num_days=0 request_logs appname/ output.txt

您通过System.err.println (或等效的python)写出的任何内容都将自动附加到应用引擎日志中。 因此,例如,您可以创建自己的日志记录格式,将println放在所有页面上,然后下载该格式的日志和grep。 例如,如果这是您的格式:

MYLOG:url:userid:urlparams

然后下载日志并通过grep ^MYLOG ,它将为您的站点提供所有流量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM