Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/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上启用Padrino应用程序的日志记录?_Logging_Heroku_Padrino - Fatal编程技术网

Logging 如何在Heroku上启用Padrino应用程序的日志记录?

Logging 如何在Heroku上启用Padrino应用程序的日志记录?,logging,heroku,padrino,Logging,Heroku,Padrino,帮帮我;我一定错过了一些非常明显的东西 我有一个在Heroku上运行的Padrino应用程序。在boot.rb中,在传递给Padrino的块中,在加载之前,我有以下行: Padrino::Logger::Config[:production][:log_level] = :info Padrino::Logger::Config[:production][:stream] = :stdout 在app.rb中的before块中,我对logger.info的调用分散在各处 这会在我的开发机器上正

帮帮我;我一定错过了一些非常明显的东西

我有一个在Heroku上运行的Padrino应用程序。在boot.rb中,在传递给Padrino的块中,在加载之前,我有以下行:

Padrino::Logger::Config[:production][:log_level] = :info
Padrino::Logger::Config[:production][:stream] = :stdout
在app.rb中的
before
块中,我对
logger.info
的调用分散在各处

这会在我的开发机器上正常登录到标准。但当我查看Heroku日志时:

heroku logs -t -s app
…我什么也看不到(只有精简服务器上最初的3行启动信息)

我错过了什么


对以下问题的一些澄清:

  • 在应用程序启动后切换到heroku logs-s应用程序对我来说没有任何改变
  • 我试着安装。看起来真不错!但它仍然没有我要找的日志消息
  • 这是个好问题!我确实在
    之前的
    块中调用了
    logger.info
    。更新完这个问题后,我将添加更多日志记录并进行检查
  • 现在你问:当我切换到在“生产”模式下运行时(将database.rb更改为只指向开发数据库之后),我的应用程序似乎也没有记录任何东西我认为这意味着我只是从根本上错误地配置了Padrino日志。感谢您提出这个问题
  • 已提交最新的boot.rb
  • 不,不要(故意)以任何方式弄乱stdout

  • 显然,我应该花时间调查的第一件事是上面第4条;这就是我现在要做的。然后,如果不产生任何结果,请转到#3。

    以下是一些简单的问题,以确保我们已经涵盖了基本知识:

  • 您是在应用程序启动之前还是之后运行heroku logs-t?如果您在之后才运行该应用程序,则是否会停止
    -t
    开关并运行
    heroku logs-s app
    显示任何内容

  • 您的应用程序中是否添加了任何内容?如果有,他们会展示什么吗?如果没有,请尝试添加一个并再次运行您的应用程序-是否有日志详细信息显示在排水管中

  • 部署到heroku后,如果您访问应用程序的网站并练习应用程序的页面,日志或系统日志中是否显示任何其他活动的输出?i、 e.您是否能够确认,在heroku的服务器上运行时,您的应用程序的所有日志记录是否存在问题,而在
    之前的
    部分中仅记录问题

  • 在本地计算机上运行时,您的应用程序是否仍会登录到
    :production
    ,还是会登录到其他地方?i、 e.你的应用程序在本地运行时是否与在heroku机器上运行时一样?您部署的应用程序是否设置为作为不同的Padrino日志记录环境运行

  • 您的boot.rb文件的最新版本是否已提交给您正在推送到heroku的git repo?如果您在适当的目录下执行heroku run ls,您能在heroku web dyno上看到该文件吗

  • 作为最后一种手段,您不会做任何干扰标准输出、将输出或打印语句重定向到其他地方的事情,或者做任何类似的事情,是吗


  • 很高兴听到你有一些线索:)随时通知我!这些完全冷静的问题让我发现,即使在本地运行时将
    PADRINO_ENV
    设置为“production”,我也没有看到预期的日志记录。这让我尝试了其他设置日志级别的方法,最终我发现用适当的设置设置常量
    PADRINO_LOGGER
    可以达到我想要的效果。谢谢