【Rails】Railsアプリで「logmon」を使ってログ監視を行う

はじめに エラーが起こってからログファイルを確認していたのではどうしても初動対応が遅れてしまいます。定期的に手動でログファイルを確認するにしてもすぐにエラーに気付けるとは限りませんし、何より毎回手動で確認するのは大変です。 定期的に自動でログファイルを監視し、エラーが起こったときにメールで通知する「ログ監視ツー ...

【Rails】Railsアプリのログローテーション設定を行う

はじめに Railsアプリのログは、初期設定だとひとつのファイルに出力し続けるようになっています。また、古いログが削除されずに延々と蓄積されていくことになるので、そのままにしておくとログが肥大化してディスク領域を圧迫してしまいます。 bash $ ls -lh /var/www/autovice/current ...

【Rails】「NoMethodError (undefined method `cookie_value' for nil:NilClass):」の原因と対処法

はじめに 当ポートフォリオサイトのブログにてエラーが出ていて見られない状況が続いていました。気づいたのはつい先日のことで、知り合いの方との通話中にたまたま発覚しました。 結論から言うとimpressionistというGemが原因でした。 2020年9月のリニューアル時からimpressionistを導入している ...

【Rails】コードをシンタックスハイライトする『rouge』のカラーテーマ一覧と指定方法

はじめに Markdownで書いた記事のコード部分をシンタックスハイライトする『rouge』というGemがあります。当ブログでも使っており、導入や使い方については以前記事にしました。 <iframe class="hatenablogcard" style="width:100%;height:15 ...

【Rails】webpacker-dev-server実行中のエラー「Could not freeze ... Cannot read property 'hash' of undefined」

はじめに webpacker-dev-server実行中に、突然以下のエラーが出力されました。 [hardsource:3154a74b] Could not freeze ./app/webpack/packs/application.js: Cannot read property 'hash' of u ...

【Rails】Webpacker管理下の構成を整える

はじめに Rails6で標準導入されたWebpacker管理下の構成を整えたので記事にします。Webpackerで管理対象としているのは以下の3つです。 JavaScript CSS 画像 あくまで自分なりにわかりやすい構成に整えたという話ですので、ベストプラクティスを提案するとか言った大それたものではないこと ...

【Rails】Webpacker管理下のアイコン画像をFaviconに設定する方法

はじめに Rails6から標準導入されたWebpackerで画像を管理し、その中のアイコン画像をFavicon(タブやお気に入りに表示されるアイコン)に設定する方法を解説します。 Favicon設定方法 画像の用意 まずはFaviconに設定する画像を用意します。今回はフリーで使用できるアイコンを使うことにしま ...

【Rails】Webpackerで画像ファイルを管理し、CSSやビューから参照する方法

はじめに Rails6から標準導入されたWebpackerは、JavaScriptやCSSだけでなく画像ファイルの管理も行えます。 今回はWebpackerで画像ファイルを管理し、CSSやビューから参照する方法を解説します。 画像ファイルの配置場所 Webpackerで画像ファイルを管理するには、Webpack ...

【Rails】Webpacker管理のCSSがHerokuで反映されない場合の対処

はじめに Rails6から標準導入されたWebpacker(Webpack for Rails)でCSSを管理しているRailsアプリのCSSが、ローカル開発環境では反映されていたのに、デプロイ先のHerokuでは反映されないという事象がありました。 対処 app/views/layouts/applicati ...

Railsアプリのデプロイ時に必要となる【Capistrano】や【Unicorn】の理解に役立つ記事まとめ

はじめに Railsアプリのデプロイ方法を調べていると【Capistrano】や【Unicorn】といった見慣れない名称がほぼ必ず出てきます。 はじめてデプロイするときはそれが何なのかもわからないままとりあえずインストールして、見様見真似で設定(ほぼコピペ)して、やっぱりエラーが出て絶望... という流れを経験 ...