Python 禁用Appstats日志记录

Python 禁用Appstats日志记录,python,google-app-engine,appstats,Python,Google App Engine,Appstats,我使用的Appstats记录如下: 它工作正常,但现在每个请求都会记录一条信息消息,如下所示: def webapp_add_wsgi_middleware(app): from google.appengine.ext.appstats import recording app = recording.appstats_wsgi_middleware(app) return app 拯救;键:appstats:039300,部分:65字

我使用的Appstats记录如下:

它工作正常,但现在每个请求都会记录一条信息消息,如下所示:

def webapp_add_wsgi_middleware(app):     
    from google.appengine.ext.appstats import recording     
    app = recording.appstats_wsgi_middleware(app)     
    return app
拯救;键:appstats:039300,部分:65字节,完整:12926字节,开销:0.000+0.004;链接:

有没有办法在Appstats运行时禁用日志消息

也许我可以自己复制ext/appstats/recording.py并注释掉对logging.info()的调用?还是有更好的办法


谢谢。

您可能想看一下。您可以将appstats配置为只运行一定百分比的请求;这将减少日志消息的数量,但您仍然可以获得这些信息

如果您想修补appstats,应该查看
/google/appengine/ext/appstats/recording.py
中的行。如果您使用的是webapp,那么通过将其save方法替换为_save方法来简化appstats应该非常容易


另外,提交一个链接并发布到这些组的链接。我认为能够禁用日志调用是一个有效的请求;他们确实会把日志弄得乱七八糟。

如果其他人感兴趣,下面是我如何使用Robert的猴子补丁建议删除日志的

插入appstats的标准方法如下所示:

def webapp_add_wsgi_middleware(app):     
    from google.appengine.ext.appstats import recording     
    app = recording.appstats_wsgi_middleware(app)     
    return app
这就是我所做的:

def webapp_add_wsgi_middleware(app):     

    from google.appengine.ext.appstats import recording

    def save(self):
        try:        
            self._save()      
        except Exception:
            pass

    recording.Recorder.save = save

    app = recording.appstats_wsgi_middleware(app)

    return app

这保留了原始save()函数的“忽略所有异常”行为,但删除了它周围的所有日志记录。

Appstats的作者。为什么要禁用日志记录?我不是说你不应该,只是我很惊讶你想禁用它,因为我不理解你的理由。如果这是一个合理的用例,我们可能只需要添加一个配置标志来禁用它

嗨,Guido,在检查统计数据时,我通常是在检查我刚刚发出的请求的性能,所以我只需转到/_ah/stats/URL并单击最后几个请求中的一个。因此,我不使用日志中的stats链接,因此为每个请求添加信息日志只会使日志变得杂乱无章。有时我想查看所有信息级别的日志,如果每个请求都记录了一行统计信息,那么我就看不到其他日志了。谢谢。我基本上希望appstats一直在我的开发机器上运行,而不是去启用它并执行我想再次跟踪的任何操作。因此,appstats日志记录99%的时间都是随机噪音,干扰了我的个人调试/日志记录。如果你真的认为这些日志记录条目太烦人,你可以重写或使用monkey patch Recorder.save()调用_save()--它所做的一切都是多余的。您可以在我们的跟踪器中提交一个功能请求,以使此日志记录成为可选的,但它的优先级很低。要删除一条(无害、信息丰富的)日志消息,这似乎有很多麻烦。