アプリケーションをコマンドラインで起動すると、オフラインモードで実行します。実行すると下記のような文が表示され、入力待ちになります。ここでアプリケーションに渡すフォームデータをname=valueの形式で指定します。最後にCtrl-Dを押すと実行します。
[localhost:/cgi-bin/Examples] user% ./Examples.cgi
(offline mode: enter name=value pairs on standard input)
# Ctrl-D
Content-Type: text/html
<html>
<head>
<title>Examples</title>
</head>
<frameset cols="200,*">
<frame name="Index" src="?element_id=IndexPage">
<frame name="Contents" src="?element_id=IntroductionPage">
<body>
Use other browser.
</body>
</noframes>
</frameset>
CKLogクラスを使うと簡単なロギングを行うことができます。CKLogには5つの出力レベルがあり、設定されたレベルより優先度の高いログ情報のみを出力します。出力レベルは低いほうからDEBUG < INFO < WARN < ERROR < FATALとなります。
| メソッド | 説明 |
|---|---|
debug(message) |
メッセージをDEBUGレベルで出力する。 |
info(message) |
メッセージをINFOレベルで出力する。 |
warn(message) |
メッセージをWARNレベルで出力する。 |
error(message) |
メッセージをERRORレベルで出力する。 |
fatal(message) |
メッセージをFATALレベルで出力する。 |
ロギングに関するオプションは以下のものがあります。直接CKLogオブジェクトに設定することもできますが、オプションをCKApplicationのlog_options属性に設定しておき、CKLogオブジェクトを生成するときに使ってください。
ログの出力先をファイルに設定すると、アプリケーションで発生したエラー(例外)もファイルに出力するようになります。
| オプション | 説明 |
|---|---|
level |
出力レベル。 |
name |
プログラム名。 |
out |
出力先。デフォルトでは標準エラーに出力する。 |
file |
出力ファイル名。このオプションかoutオプションのどちらかを設定する。 |
max_file_size |
ファイルサイズの指定(出力先にファイルを指定したときのみ有効)。出力先のファイルサイズが指定したサイズを超えると、例外FileSizeErrorを発生する。 |
options = {‘level’ => CKLog::DEBUG,
‘name’ => ‘CGIKit Application’,
‘file’ => ‘log.txt’,
‘max_file_size’ => 1000000}
app = CKApplication.new
app.log_options = options
app.run
class MainPage < CKComponent
def logging
log = CKLog.new(application.log_options)
log.debug ‘log message’
end
end