Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging 防止heroku中不需要的日志_Logging_Heroku Postgres_Papertrail App - Fatal编程技术网

Logging 防止heroku中不需要的日志

Logging 防止heroku中不需要的日志,logging,heroku-postgres,papertrail-app,Logging,Heroku Postgres,Papertrail App,我已在heroku中成功部署了一个生产级应用程序。现在我正在做日志记录和监控 不幸的是,我无法找到控制heroku日志、书面记录等中记录的内容的方法。每隔1或2分钟,我会收到以下消息: app/heroku-postgres source=DATABASE addon=postgresql-slippery-76303 sample#current_transaction=1408 sample#db_size=11563679bytes sample#tables=24 sample#ac

我已在heroku中成功部署了一个生产级应用程序。现在我正在做日志记录和监控

不幸的是,我无法找到控制heroku日志、书面记录等中记录的内容的方法。每隔1或2分钟,我会收到以下消息:

app/heroku-postgres source=DATABASE addon=postgresql-slippery-76303 
sample#current_transaction=1408 sample#db_size=11563679bytes 
sample#tables=24 sample#active-connections=13 sample#waiting- 
connections=0 sample#index-cache-hit-rate=0.99834 sample#table-cache- 
hit-rate=0.99896 sample#load-avg-1m=0.01 sample#load-avg-5m=0.005 
sample#load-avg-15m=0 sample#read-iops=0 sample#write-iops=0.098361 
sample#tmp-disk-used=33849344 sample#tmp-disk-available=72944943104 
sample#memory-total=4044932kB sample#memory-free=1741488kB 
sample#memory-cached=1968548kB sample#memory-postgres=44600kB
我在heroku的文档页面上找到了:

但是,他们忘了告诉我如何禁用这些postgres度量日志

一般来说,我想过滤get记录的内容,因为heroku有记录行的限制,我只想记录对我有用的内容。因此,如果我想禁用来自特定程序的所有日志,比如app/heroku postgres,我希望可以选择这样做


在heroku中是否有办法配置此功能?

这些日志行在heroku方面是不可配置的。这大概是因为这是观察数据库主机运行状况的少数几种方法之一。Heroku为您维护一个最小的日志缓冲区,并期望您配置自己的日志加载项,其中许多是免费的。这些插件中的一些可能会潜在地过滤/删除正则表达式。也就是说,如果你关心数据库的监控,那么删除这些日志行可能是不明智的。

我认为有更好的方法来监控数据库,而不是每2分钟在papertrail中记录一组值。我知道从heroku logs这一方接收日志是不可配置的。但是heroku postgres呢?我应该能够配置它是否打印度量,或者至少是连续打印之间的间隔。现在的情况是,我总是会过滤掉来自heroku postgres的内容,并且可能会丢失一些关于长查询的警告。例如,数据库主机将发出该度量日志行,并将其发送到应用程序日志中。没有办法阻止它被发送。你唯一的选择就是用你的日志插件过滤掉它们。作为记录,这些“值串”是您可以访问数据库主机平均负载、IO号和操作系统页面缓存信息的唯一位置。即使这是唯一的方法,我希望至少能够更改日志记录的频率。我不会每天每分钟都检查数据库主机的平均负载!如果postgres heroku插件真的是一个不可压缩的黑盒子,那真是令人伤心。