我使用app引擎已经有一段时间了,我知道有appstats,但是那些只显示数据存储/memcache和其他与实际内存使用状态无关的数据。
我尝试过与AppTrace集成(包括所有组件的最新版本),但是我无法继续,因为我得到了这个错误:
ImportError: dlopen(../apptrace/guppy/sets/setsc.so, 2): Symbol not found: __PyLong_AsScaledDouble
Referenced from: ../apptrace/guppy/sets/setsc.so
Expected in: flat namespace因此,我的问题是:(在最新的应用程序引擎sdk上)配置/监视内存/捕获内存泄漏和其他与python内存相关的内容(无论是在本地或Google服务器上)的最佳方法是什么?
顺便说一句,我们使用Python2.7,我们正在使用Mac (10.7.4)
发布于 2012-06-29 18:55:17
我认为这是最好的实用工具
应用程序-剖析器- Google应用程序引擎剖析器在Python -谷歌项目托管-> http://code.google.com/p/appengine-profiler/
08-13 12:40AM 04.586 /camstore/upload 200 508ms 351cpu_ms 293api_cpu_ms 0kb libwww-perl/5.825,gzip(gfe)
11.222.111.222 - - [13/Aug/2010:00:40:05 -0700] "POST /camstore/upload HTTP/1.1" 200 181 - "libwww-perl/5.825,gzip(gfe)"
"example.appspot.com:443" ms=508 cpu_ms=352 api_cpu_ms=293 cpm_usd=0.018512
[I] 08-13 12:40AM 05.021
Request summary (uptime=161, ID=6C0D1DD1:1.999999999 : Google App Engine/1.3.6 @ na5):
ms = 425.66 (api_datastore_v3 = 98%, other = 2%)
cpu_ms = 326.67 (api_datastore_v3 = 95%, other = 5%)
api_cpu_ms = 293.33 (api_datastore_v3 = 100%, other = 0%)此外,还可以使用memcacheApi和其他staf。
发布于 2015-11-16 22:09:52
这篇文章已经3岁了,但我认为这个答案还是值得分享的,以帮助他人。我有高级谷歌应用引擎支持,并联系他们有关这个问题。
谷歌工程师告诉我,Google 运行时API是不推荐的,但仍然可以使用。它提供了一个名为memory_usage的方法。
from google.appengine.api.runtime import runtime
import logging
logging.info(runtime.memory_usage())这将输出内存使用情况统计数据,其中的数字以MB表示。例如:
current: 464.0859375
average1m: 464
average10m: 379.575通过在代码中的关键点放置日志语句,可以计算出导致内存泄漏的是哪个部分。
发布于 2012-06-29 18:49:35
我认为在中没有监控内存使用的工具,您可以分析程序、监视模块导入时间、代码覆盖率。所以不是用来检测小内存泄漏的工具。
https://stackoverflow.com/questions/11202475
复制相似问题