独自拡張 xAIML独自のタグです。
<log>
で囲んだ内容をログに出力します。
<log>
は開発者がシナリオの動作確認や、デバッグなどに利用するログ情報を出力する際に使用します。また、ログ出力の際に
log_level
属性を指定すると、用途に応じてログの出力有無を制御できます。
1 2 3 4 5 6 7 |
<category> <pattern>こんにちは</pattern> <template> <log key="userText" log_level="INFO">ユーザ発話:<get name="input"/></log> こんにちは! </template> </category> |
ご注意
<think>
と同様に、タグで囲んだ処理は通常通り動作しますが、出力が抑制されます。属性
名称 | 型 | 必須 | デフォルト | 説明 |
---|---|---|---|---|
key |
string |
〇 |
- |
ログ(JSON )上のキーを指定します。 |
log_level |
string |
- |
INFO |
ログレベルを指定します。 |
key
ログ(JSON
)上のキーを指定します。
Example
キーにtest
を指定した場合のログ出力例です。
1 2 3 4 5 6 7 8 9 10 11 |
{ "host": "xx.xx.xx.xx", "scenario_log_seq": "x", "logs": [{ "bot_id": "xxx", "user_id": "xxx", "timestamp": "2019-06-03 09:07:29", "log_level": "INFO", "test": "log-message" }] } |
log_level
ログのレベルを指定します。
ログは自身のlog_level
属性の値が、ボットプロパティに登録されたlog_level
以上の場合のみ出力されます。
この動きを利用して、開発用のログにDEBUG
、ボット公開後も必要なログにはINFO
などを指定し、ボットプロパティと組み合わせることで、シナリオの変更無しに必要なログのみを出力することができます。
また、ボットプロパティのlog_level
が未登録の場合、INFO
をデフォルト値として動作します。
そのため、未登録の場合はDEBUG
レベルの<log>
が出力されません。必要に応じてボットプロパティを登録してください。
指定可能なレベルと、出力されるレベルの組み合わせは下表をご覧ください。
log_level 属性 |
ボットプロパティ(log_level ) |
||||
---|---|---|---|---|---|
DEBUG |
INFO |
WARN |
ERROR |
FATAL |
|
FATAL |
◯ | ◯ | ◯ | ◯ | ◯ |
ERROR |
◯ | ◯ | ◯ | ◯ | – |
WARN |
◯ | ◯ | ◯ | – | – |
INFO |
◯ | ◯ | – | – | – |
DEBUG |
◯ | – | – | – | – |
子要素
<template>
と同様です。