アルファサード株式会社 代表取締役 野田 純生のブログ


MTプラグインのデバッグ。


公開日 : 2008-04-11 17:56:13


プラグインのデバッグをどうしてますか? っていう質問がどっかで出てましたよね。みなさんどうされてるんでしょうね。って言うのも何だから自分の場合はってのを書いておきます。

MTのログに変数の値とか保存したらって話がありましたよね? 僕も時々やります。具体的には以下のようにするとログに保存されます。


$app->log($foo);

もちろん真面目? に


use MT::Log;
my $log = MT::Log->new;
$log->message($foo);
$log->save
    or die $log->errstr;

としても同じ。こっちの方法の場合はlevelとかclassとかmetadataとかも保存できるので、必要に応じて使うといいと思う。

ログの表示画面

ただ、本当はこの辺↓のしくみがそれ(debug)のしくみにあたるんではないかなぁ...誰か教えてください!

僕が個人的によくやるのは実は普通にテキストファイルにログを吐く方法。ごく普通に、こんな感じで変数の値とかをテキストに吐く。


open  FH, ">>debug.log";
print FH "$foo¥n";
close FH;

で、この方法は実はMacローカルで書いている時にお勧めで、ポイントは保存するログの拡張子を.logにすること。で、このログをダブルクリックするとデフォルトのMacだとコンソールが起動しますよね。で、これログファイルをいちいち開かなくてもリアルタイムにウィンドウに反映されるんですね。

コンソールの画面

↑これ、昨日書いたプラグインのデバック時のログ。アーカイブの数とページ分割されて出来るページの数、吐き出されるアーカイブのパスが再構築中にリアルタイムにずらずらーーーって見えるのです。

あ、もっといいやり方あったら是非教えてください。ってか、中の人は絶対何かやってる筈。でもMacローカルサーバー便利です、本当に。

あと、PERL5WEBDBってのもありますね。試してはいないのですが。

カテゴリ


このブログを書いている人
野田純生の写真
野田 純生 (のだ すみお)

大阪府出身。ウェブアクセシビリティエバンジェリスト。 アルファサード株式会社の代表取締役社長であり、現役のプログラマ。経営理念は「テクノロジーによって顧客とパートナーに寄り添い、ウェブを良くする」。 プロフィール詳細へ