質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

4646閲覧

Rails + Docker + Puma + ECS(Fargate)の環境でRailsのログ(production.log)が出力されない

safs

総合スコア10

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2020/01/14 17:23

編集2020/01/14 17:25

状況

現在、RailアプリをDockerに乗せて、AWSのFargateで動かしています。

デプロイ自体は完了していてアプリも問題なく動くのですが、ログの出力がうまくいきません。

発生している問題・エラーメッセージ

production.rbに下記のように設定していてもproduction.logが出力されません。

if ENV['RAILS_LOG_TO_STDOUT'].present? logger = ActiveSupport::Logger.new(STDOUT) logger.formatter = config.log_formatter config.logger = ActiveSupport::TaggedLogging.new(logger) end

環境変数のRAILS_LOG_TO_STDOUTも設定しております。CloudWatchにawslogsで送っております。

ログ設定 ログドライバー: awslogs awslogs-group XXXXLogs awslogs-region ap-northeast-1 awslogs-stream-prefix XXXXXX

ただしこれで出力されるのは、pumaの起動ログ(?)の

=> Booting Puma => Rails 6.0.2.1 application starting in production => Run `rails server --help` for more startup options Puma starting in single mode... * Version 4.3.1 (ruby 2.6.4-p104), codename: Mysterious Traveller * Min threads: 0, max threads: XX * Environment: production * Listening on tcp://0.0.0.0:3000 Use Ctrl-C to stop

のみで、止まります。
この後に出力して欲しいrailsから標準出力されるであろうはずのログ

Processing by XXXController#index as HTML User Load (1.2ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = X ORDER BY `users`.`id` ・・・

といった形のログは出てきません。

開発環境ではdevelopment.logは出力されており、ログも書き込まれています(しかしこちらもdocker-compose up後のコンソールには出てきません)。

アプリの前にnginxコンテナをおいており、こちらのアクセスログは問題なく取れるのですが、railsのlogは取れません。gem 'lograge'を入れてみたのですが、結果は同じでした。

質問

Rails、Docker、Puma、ECSといった環境でRailsのログが標準出力で正しく表示されない原因、些細なことでもなにか思い当たることがある方はご教示いただけましたら幸いです。

色々調べて試しては見たのですが、どうにもならずここで質問させて頂きます。ちなみに、12factorといったgemが原因で出ないということは読んだのですが、当方の環境ではいれておりません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

こちら自己解決しました。どちらが原因かわかりませんが、使っていなかったdocker-entrypoint.sh内で余計な変数を渡したりしていた模様でした。失礼いたしました。

投稿2020/01/14 18:38

safs

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問