引数で指定された任意の個数のオブジェクトの内容をそれぞれ文字列にして、ログファイルに出力します。
引数のオブジェクトが配列のときは、その添字と要素を出力します。
引数のオブジェクトがハッシュのときは、そのキーと値を出力します。
配列の要素やハッシュの値が、さらに配列やハッシュの場合には、再帰的に出力処理をします。
その他のオブジェクトのときは、そのオブジェクトの
to_s() メソッドの結果を出力しますが、その結果の文字列サイズが
200 バイトを超える場合はサイズのみを出力します。
ファイルへの出力時、ディスクとの同期をとっています。
出力先のファイル名は、後述のメソッドで事前に設定されていれば、それに出力します。未設定のときは、デフォルトの出力先になります。
デフォルトの出力先のファイル名については
エラーの解決・デバッグ>ログファイルの説明をご覧ください。
このメソッドの呼び出しごとに、その時点での現在時刻とプロセスIDも出力します。
このメソッドの呼び出しまでのバックトレースの情報も出力したいときは
yk_print_exception()
を使ってください。
ログをファイルに出力する前にそのファイルのサイズを調べます。
ログファイルのサイズが指定値を超えたら、そのファイルをバックアップ用のファイル名に変更し、このファイルへの出力を止めます。
そして新しくログファイルをオープンしなおしてログを出力します。
バックアップ用のファイル名は、もとのファイル名に枝番「
_1 」を付けたものです。
ログファイルのサイズが指定値を超えるたびに、バックアップ用のファイルを上書きします。
限度サイズは1MB(
1048576 バイト)ですが、
yk_set_sizelimit()
を使えば変更できます。
yk_print()
の処理内容に加えて、このメソッドの呼び出しまでのバックトレースの情報と、引数の
ex で指定された例外クラスの出力処理もおこないます。
例外クラスの出力情報は、例外クラスの名前・メッセージ・バックトレースです。
YKLookError
とその派生クラスの場合は付加情報も出力します。
例外クラスの出力は必要ないが、このメソッドの呼び出しまでのバックトレースの情報は出力したいときは、引数
ex に
true を指定してください。
このとき、このメソッドはバックトレース出力付きの
yk_print()
になります。