開発者向け機能:サーバスクリプト:logs.Log
概要¶
logsオブジェクトの「Log」メソッドです。サーバスクリプトで指定したログの種類でログを表示、出力します。
構文¶
パラメータ¶
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| type | int | ○ | ログの種類を指定。指定可能な値は以下の通り 10:Info 50:Warning 60:UserError 80:SystemError 90:Exception |
| message | string | ○ | 表示、出力するエラー内容を指定。 |
| method | string | 省略可能。既定値は空文字。 | |
| console | bool | 省略可能。既定値はtrue。ブラウザの開発者ツールのコンソールに表示する場合はtrueを指定 | |
| syslogs | bool | 省略可能。既定値はtrue。システムログに出力する場合はtrueを指定 |
戻り値¶
ログを表示、出力できたらtrue、表示、出力できなかったらfalseを返却します。
コンソール表示時の表示内容¶
表示フォーマット¶
| 表示項目 | 表示内容 | 備考 |
|---|---|---|
| Message | messageで設定した文字列 | |
| Method | methodで設定した文字列 | method未指定時は角括弧([])も表示しない |
| SysLogType | typeによって以下の文字列を表示 10:Info 50:Warning 60:UserError 80:SystemError 90:Exception |
システムログ出力時の出力先項目¶
| 出力先項目 | 出力内容 | 備考 |
|---|---|---|
| Comments | messageで設定した文字列 | typeが10(Info)、50(Warning)、60(UserError)の場合 |
| ErrMessage | messageで設定した文字列 | typeが80(SystemError)、90(Exception)の場合 |
| Method | 本来のMethodに記録される文字列に「:method」の形式で結合した文字列 | |
| SysLogType | type |
使用例¶
下記の例では、サイトID 2 の「期限付きテーブル」にタイトルが "プリザンターのバージョンアップについて" のレコードを作成し、その結果に応じてlogs.Logでログ出力します。
JavaScript¶
サンプルコード¶
1. 汎用的なログ出力関数
logs.logメソッドをラップし、デバッグ時と本番時でログ出力を切り分けられる汎用ロガーのサンプルコードです。
機能要件¶
-
デバッグフラグによる出力制御
DEBUG_MODE(bool)で Info(type=10)の出力を制御する。falseのとき Info は抑制され、trueのとき出力される。Warning(50)以上はDEBUG_MODEに関係なく常時出力する。 -
出力先の一元管理
LOG_TARGET(console / syslogs の bool)で、コンソールとシステムログへの出力をそれぞれ個別にオン・オフできる。設定はスクリプト全体に一括適用される。 -
ログ種別定数の提供
logs.Logのtype引数に対応する定数オブジェクトLOG_TYPEを提供し、数値の直書きによるミスを防ぐ。定数 値 ログ種別 LOG_TYPE.INFO 10 Info LOG_TYPE.WARNING 50 Warning LOG_TYPE.USER_ERROR 60 UserError LOG_TYPE.SYSTEM_ERROR 80 SystemError LOG_TYPE.EXCEPTION 90 Exception -
2つのメソッドの提供
メソッド 説明 DEBUG_MODE=false DEBUG_MODE=true logEx.log(type, message, method) logs.Log の薄いラッパー。type=10 のみ抑制 Warning 以上のみ出力 全て出力 logEx.debug(message, method) デバッグ専用。Info(10)で出力 出力しない 出力する -
method パラメータの透過渡し
各メソッドの method 引数を logs.Log の method パラメータにそのまま渡せる。
JavaScript¶
対応バージョン¶
| 対応バージョン | 内容 |
|---|---|
| 1.4.12.0 以降 | 機能追加 |
