我在heroku上有个小应用。每当我想要查看日志时,我就转到命令行并执行

heroku logs

它只显示了大约100行。是不是没有办法在heroku上查看我们应用程序的完整日志?


当前回答

我遇到了这样的情况,在我的应用程序的仪表板中,当我打开:

More >查看日志

我不会得到输出,只是挂起…

所以我做了一个谷歌,发现了这个:

Heroku CLI插件列出和创建Heroku应用程序的构建。

我安装并运行:

heroku builds -a example-app /* Lists 10 most recently created builds for example-app, that's where you get the id for the next step*/

然后输入:

heroku builds:output your-app-id-number -a example-app 

就是这样,您应该会得到通常在仪表板GUI或本地看到的内容。

希望这能帮助到像我一样的人!

其他回答

Heroku logs -t显示了活动日志。 Heroku日志-n 1500表示日志数量

但我仍然建议使用纸质记录插件,它有一定的好处,并有免费的基本计划。

你可以使用 Heroku log -n 1500

但这并不是一个推荐的方法(换句话说,并没有向您展示真实的情况)

我建议你插上一些日志工具。(sumoLogic,书面记录等)作为附加组件

它们都有一个免费版本(限制很少,但对于一个小的应用程序或开发环境足够了,这将提供很好的洞察力和工具来分析日志)

我遇到了这样的情况,在我的应用程序的仪表板中,当我打开:

More >查看日志

我不会得到输出,只是挂起…

所以我做了一个谷歌,发现了这个:

Heroku CLI插件列出和创建Heroku应用程序的构建。

我安装并运行:

heroku builds -a example-app /* Lists 10 most recently created builds for example-app, that's where you get the id for the next step*/

然后输入:

heroku builds:output your-app-id-number -a example-app 

就是这样,您应该会得到通常在仪表板GUI或本地看到的内容。

希望这能帮助到像我一样的人!

有关雪松堆叠参见:

https://devcenter.heroku.com/articles/oneoff-admin-ps

你需要运行:

Heroku run bash…

你需要有一些日志排水实现,应该排水你的日志,以查看所有的日志(管理历史日志以及):

第一个选择- Splunk可以使用:你可以排出你所有的日志,如:

heroku drains:add syslog+tls://splunk-server.com:514 -a app_name

然后登录到splunk服务器,搜索任意数量的日志。我正在使用Splunk,这对我来说是完美的。

第二个选项-你可以购买添加到你的应用程序,如下所示:(我没有使用这些选项,但这些是可用的)。 Timber.io 相扑逻辑 LogEnteries 日志DNA Papertrail

你也可以看看下面的选项:如果你想拥有你的 JSON格式的日志,因为它将有助于如果您的日志推送到 外部系统,如Splunk/ELK,它将变得容易(性能 明智的也)搜索JSON。

https://github.com/goodeggs/heroku-log-normalizer

它不是拥有Readme。Md,但是在https://github.com/goodeggs/bites/issues/20上有一些解释

最后

你可以一直使用下面的命令,正如其他用户已经提到的:

下面的命令将跟踪heroku上的生成日志

heroku logs -t -a <app_name>

下面的命令将显示来自heroku的1000行日志

heroku logs -n 1000 -a <app_name>

注意,只有1500行最新的日志可用,其余的将从heroku dyno中删除。