デバッグ方法について

閲覧: 69 回
最初の未読メッセージにスキップ

suiato

未読、
2009/11/21 19:30:482009/11/21
To: eZ Publish Japan
eZ Publishでのデバッグに役立つかと思い、EclipseのPDTをインストールして試してみていますが、今のところ、eZ Publish
特有のコマンドやテンプレートにも対応できていませんし、フォルダーやファイルを一望できて編集できるという意外は、あまり使えていません。(頭の中で
は、キャッシュがどう扱われるのかという整理もできていません・・・)

やはり、eZ Publishの管理画面でのデバッグ機能を使うのが一番よいでしょうか。

http://pwet.fr/blog/some_tips_about_the_ez_publish_debug
というページを見つけて、<!-- DEBUG_REPORT -->、attribute()のフィルター、{debug-log ...}といった
機能の利用などについて知りましたので、試してみようかと思っています。

おすすめのデバッグ環境、デバッグ方法あるいはtipsについて、アドバイスやポインターをいただければありがたいです。

--
Teru

Eric Sagnes

未読、
2009/11/23 19:47:432009/11/23
To: ez-publi...@googlegroups.com
Teruさん

私は簡単な環境で開発/デバッグしています:
- エディターはvimを使って、テンプレートのデバッグは「attribute」オペレータを使って、「$xxx|attribute(show,1)」
- モジュールなどのPHP系開発は「var_dump」を使う。

eZ Publishのエラーメッセージは結構分かりにくいから、PHPのエラーログも見たほうが良いです。
後はPHPの「xdebug」も役に立ちます<http://xdebug.org/>
eZ Publishリファレンス<http://ez.no/doc/ez_publish/technical_manual/4_0/reference>
とAPI<http://pubsvn.ez.no/doxygen/4.2/html/index.html>はよく使うので、ブラウザの中でずっと開いてます。

下記のリンクで開発/デバッグに約立つエクステンションがありますので、確認してください
http://ez.no/developer/contribs/3rd_party
http://projects.ez.no/types/3rd_party

開発の時には settings/override/site.ini.append.phpに下記のブロックを追加します:
----
####################
#dev settings
####################

[ContentSettings]
ViewCaching=disabled

[DebugSettings]
DebugOutput=enabled

[TemplateSettings]
Debug=enabled
ShowXHTMLCode=disabled
TemplateCompile=disabled
TemplateCache=disabled
ShowUsedTemplates=enabled

[OverrideSettings]
Cache=disabled
----
これを設定することで、デバッグを有効にしたり、キャッシュを無効にします

よろしくお願いします

--
Eric Sagnes

Consultant
eZ Systems Japan | http://ez.no/jp | e...@ez.no

tel +81 3 5325 9071 | fax +81 3 5325 9072 |
eZ Publishをダウンロード: http://ez.no/jp/download

signature.asc

Shintaro Toh

未読、
2009/11/24 9:30:352009/11/24
To: ez-publi...@googlegroups.com
Teruさん

はじめまして。eZ案件のディレクションなどやっているトウと申します。

私は開発段階では、ページに常にdebug reportを出してエラーなどを確認しています。

配列やオブジェクトの内容を確認する際にattribute()を利用することもありますが、
Webページに配列などが表示されてしまうため、
お客様も確認する環境の場合、気軽に表示させられません。
そこで、
{debug-log msg='hogehoge' var=$example_array}
のようにeZテンプレート上に記述することで、
ページ上には出さずdebug report内に出力することができます。

また、extension開発などでphpファイルからデバッグしたい場合は、
eZDebug::writeDebug("hogehoge");
のようにすることで、{debug-log ~}と同じようにできます。

また、debug reportを出さずに、コンソールでvar/log/debug.logにて確認することもできます。

あまりうまく説明できませんでしたが、いろいろと方法があるのでためしてみてください。

suiato

未読、
2009/11/24 11:03:122009/11/24
To: eZ Publish Japan
Ericさん

アドバイスありがとうございます。

On 11月24日, 午前9:47, Eric Sagnes <e...@ez.no> wrote:
> Teruさん
>
> 私は簡単な環境で開発/デバッグしています:
> - エディターはvimを使って、テンプレートのデバッグは「attribute」オペレータを使って、「$xxx|attribute(show,1)」
> - モジュールなどのPHP系開発は「var_dump」を使う。

テンプレートは、attribute()オペレータ、PHPファイルは、var_dump()を使って、今、試験的に取り組んでいるプロジェクトに使っ
てみました。使い方に制限もありますが、簡単に使えてとても助かります :)

>
> eZ Publishのエラーメッセージは結構分かりにくいから、PHPのエラーログも見たほうが良いです。
> 後はPHPの「xdebug」も役に立ちます<http://xdebug.org/>

xdebugは、インストールはしてみましたが、まだ活用にはいたっていません。高機能で、使いこなせれば力になりそうです。vimとの連携もできるよ
うですね。

> eZ Publishリファレンス<http://ez.no/doc/ez_publish/technical_manual/4_0/reference>
> とAPI<http://pubsvn.ez.no/doxygen/4.2/html/index.html>はよく使うので、ブラウザの中でずっと開いてます。
>
> 下記のリンクで開発/デバッグに約立つエクステンションがありますので、確認してくださいhttp://ez.no/developer/contribs/3rd_partyhttp://projects.ez.no/types/3rd_party

情報ありがとうございます。

>
> 開発の時には settings/override/site.ini.append.phpに下記のブロックを追加します:
> ----
> ####################
> #dev settings
> ####################
>
> [ContentSettings]
> ViewCaching=disabled
>
> [DebugSettings]
> DebugOutput=enabled
>
> [TemplateSettings]
> Debug=enabled
> ShowXHTMLCode=disabled
> TemplateCompile=disabled
> TemplateCache=disabled
> ShowUsedTemplates=enabled
>
> [OverrideSettings]
> Cache=disabled
> ----
> これを設定することで、デバッグを有効にしたり、キャッシュを無効にします

このような設定のひな形があると大変助かります。
デバッグ出力先を限定するときには、
[DebugSettings]に
DebugByIP=enabled
DebugIPList[]=10.2.2.157
といった設定を加えるということですね。

>
> よろしくお願いします
>

こちらこそ宜しくお願いいたします。

--
Teru



> On Sunday 22 November 2009 09:30:48 suiato wrote:
>
>
>
> > eZ Publishでのデバッグに役立つかと思い、EclipseのPDTをインストールして試してみていますが、今のところ、eZ Publish
> > 特有のコマンドやテンプレートにも対応できていませんし、フォルダーやファイルを一望できて編集できるという意外は、あまり使えていません。(頭
> の中で
> > は、キャッシュがどう扱われるのかという整理もできていません・・・)
>
> > やはり、eZ Publishの管理画面でのデバッグ機能を使うのが一番よいでしょうか。
>
> >http://pwet.fr/blog/some_tips_about_the_ez_publish_debug
> > というページを見つけて、<!-- DEBUG_REPORT -->、attribute()のフィルター、{debug-log ...}といった
> > 機能の利用などについて知りましたので、試してみようかと思っています。
>
> > おすすめのデバッグ環境、デバッグ方法あるいはtipsについて、アドバイスやポインターをいただければありがたいです。
>
> > --
> > Teru
>
> --
> Eric Sagnes
>
> Consultant
> eZ Systems Japan |http://ez.no/jp| e...@ez.no
>
> tel +81 3 5325 9071 | fax +81 3 5325 9072 |
> eZ Publishをダウンロード:http://ez.no/jp/download
>
> signature.asc
> < 1K表示ダウンロード

suiato

未読、
2009/11/24 11:23:472009/11/24
To: eZ Publish Japan
トウさん、はじめまして

アドバイスありがとうございます。

On 11月24日, 午後11:30, Shintaro Toh <sntrm...@gmail.com> wrote:
> Teruさん
>
> はじめまして。eZ案件のディレクションなどやっているトウと申します。
>
> 私は開発段階では、ページに常にdebug reportを出してエラーなどを確認しています。
>
> 配列やオブジェクトの内容を確認する際にattribute()を利用することもありますが、
> Webページに配列などが表示されてしまうため、
> お客様も確認する環境の場合、気軽に表示させられません。
> そこで、
> {debug-log msg='hogehoge' var=$example_array}
> のようにeZテンプレート上に記述することで、
> ページ上には出さずdebug report内に出力することができます。

なるほど、実稼働しているサーバでのデバッグにも役立つということですね。
http://www.troubleshootingwiki.org/Debugging_eZ_Publish
にあるように、debug-logとともに、debug-timing-point, and debug-accumulatorなどもあるようなの
で、機会をみて試してみようと思います。

>
> また、extension開発などでphpファイルからデバッグしたい場合は、
> eZDebug::writeDebug("hogehoge");
> のようにすることで、{debug-log ~}と同じようにできます。

使ってみたら、うまくできました :)

>
> また、debug reportを出さずに、コンソールでvar/log/debug.logにて確認することもできます。
>

この方法も役立つ場面がありそうですが、やり方がわかりません。ヒントをいただければありがたいです。

> あまりうまく説明できませんでしたが、いろいろと方法があるのでためしてみてください。

Ericさん、トウさんのアドバイスのおかげで、当面のデバッグ作業ができそうです。

感謝 :)

--
Teru
全員に返信
投稿者に返信
転送
新着メール 0 件