さて今回はログファイルについて確認してみたいと思います。
EC-CUBE 2系での開発を行う際には、問題があれば管理画面からエラーログを確認していました。
管理画面 > システム設定 > EC-CUBE ログ表示
管理画面からログが確認でき、非常に助かりました。
ログの種類も以下のように細かく分けられて非常に親切です。
※ 基本的には「エラーログ」しか見ていなかった気もしますが(笑)
標準ログファイル 会員ログイン ログファイル 管理機能ログファイル エラーログファイル DBログファイル プラグインログファイル
EC-CUBE 3系でも以下の URL でログの確認ができます。
管理画面 > 設定 > システム情報設定 > EC-CUBE ログ表示
しかし、EC-CUBE 3系では少し状況が異なるようです。
確認してみるとログ情報の種類は以下の4種類の様です。
※ ちなみに、初期の頃は管理画面でログを確認することもできなかったようです。
install.log front_site_yyyyy-mm-dd.log admin_site_yyyyy-mm-dd.log site_yyyyy-mm-dd.log
今回のログはログローテートが施されているようです。
各ファイルが日付にて分けられており、セレクトボックスにて選択が可能です。
・・・可能ではあります、可能ではあるんですが、ログファイルのソート順が無茶苦茶です(笑)
セレクトボックス内のファイルの順番に規則性が見いだせない。
これ何の順番に表示されてるんだろう・・・、なんだかイライラするレベルです。
「install.log」はその名の通り、インストール時のログですね。
特に正常にインストールできる場合には見ることも無いでしょう。
・・・インストール後の管理画面で見る意味があるんでしょうか(笑)
問題はその他の3種類です。
実際にそれぞれ以下の内容がログとして記載されているようです。
front_site_yyyyy-mm-dd.log
公開画面で発生したログ情報を出力しているようです。
admin_site_yyyyy-mm-dd.log
管理画面で発生したログ情報を出力しているようです。
site_yyyyy-mm-dd.log
サイト全体に関してのログ情報を出力しているようです。
う~ん、公開側でも管理側でも無いのはどこのことなんでしょうか・・・
私の環境ではプラグインのエラーとかが出力されています。
・・・なんというか、分け方が雑ですね(笑)
個人的にはエラーログだけは公開画面も管理画面も共通にして別ログファイルにして欲しいです。
こんな状況のため開発時の状況確認に関してはログファイルの閲覧をあきらめました。
実際に開発時用のエラーログは以下の方法で確認しています。
「サイトURL に index_dev.php をつけて表示する」
実はこの方法自体は【3.0.11】EC-CUBE3 のキャッシュについてでサイトに記載しています。
まぁ、考えてみれば開発用の仕組みですから当たり前なのかと思います。
実際にエラーが発生するページではエラー内容がそのまま表示してくれます。
解りずらいログファイルを確認する必要はありません(笑)
ちなみに、開発用の状態だと twig での変数ダンプもできるようになります。
方法は簡単で index_dev.php を使用していることが前提ですが、変数の中身を確認したい twig の中に以下の文を記述するだけです。
{{ dump(<ここに変数>) }}
これだけで変数の内容が表示されます。
配列であれば配列の内容ごと表示する形になります。
ただし「$app」など基本となる変数の大元を出力すると大変なことになります。
気を付けましょう。
余談ですが EC-CUBE3.1 の最新評価版が公開されたようです。
http://www.lockon.co.jp/release/6067/
内容を読む限りでは学習コスト・カスタマイズ工数の大幅減を目指すそうです。
・・・EC-CUBE 3系に手を出すのはまだ早かったかな(笑)