メインコンテンツまでスキップ

カスタム処理でデバッグを目的としたログを出力できますか?

カスタム処理の気になる箇所で下記のような記述を追加すると、変数の中身を確認できます。

loggerのプラグインを利用する

こちらのログはカスタムログで確認ができます。
実行した結果をログに残したい場合はこちらをご利用ください。

記述例

{logger msg1=$json msg2=$output msg3=$smarty.requrst msg4=$example}

ログの確認方法

[ログ管理]をクリックします。
Image from Gyazo [ログ管理]のプルダウンメニューから[カスタムログ]をクリックします。
Image from Gyazo ログの内容が表示されます。
Image from Gyazo

@debug_print_var を利用する

loggerのプラグインはデータが大きいと、ログに残せない場合があります。
大きいデータを扱う場合や、機能の実装中にその場でデータの内容を確認する場合はこちらをご利用ください。
@debug_print_var の出力結果はログに残りません。

記述例

test:{$json|@debug_print_var}

ログの確認方法

カスタム処理編集の画面で[テストする]をクリックすると[出力]の項目に表示されます。
Image from Gyazo

put_file を利用してKurocoFilesに保存する

loggerプラグインは1KBを超えるデータの場合、...Over 1kb data.と表示され途中で切り詰められるため、全体を確認できません。
大きいデータをファイルとして保存したい場合はput_fileプラグインを利用してKurocoFilesに保存できます。

記述例

{assign var=filename value="/files/ltd/debug_"|cat:$row.topics_id|cat:"_"|cat:$smarty.now|cat:".json"}
{put_file value=$row|@json_encode path=$filename}

上記の例では、$row変数の内容をJSON形式で/files/ltd/ディレクトリに保存します。
ファイル名にはコンテンツIDとタイムスタンプを含めることで、複数回実行しても上書きされないようにしています。

ログの確認方法

[ファイル管理] -> [KurocoFiles]をクリックし、ltdフォルダを開くと保存したファイルを確認できます。
ファイルをダウンロードして内容を確認してください。

ヒント

/files/ltd/ディレクトリは管理者のみがアクセスできるため、デバッグ用のログファイルの保存先として適しています。
公開しても問題ないファイルの場合は/files/user/ディレクトリも利用できます。


サポート

お探しのページは見つかりましたか?解決しない場合は、問い合わせフォームからお問い合わせいただくか、Slackコミュニティにご参加ください。