Houdiniのロギングシステムは、ソースとシンクで構成されています。
ソースは、ログエントリーを生成して配布します。
シンクは、ソースからログエントリーを受け取り、それらのログエントリーを使って何か処理をします。
ソースはグローバルで、固有な名前の文字列で識別されます(例えば、ノードが生成したすべてのメッセージ、警告、エラーのログエントリーを生成するソースの名前はNode Errors
とかです)。
Houdiniセッション内にはいくつもシンクを作成することができ、各シンクは異なるソースセットに接続することができます。
そのため、すべてのノードエラーをファイルに送信するシンクを1つ作成し、すべてのレンダリングメッセージを別のファイルに送信するシンクをもう1つ作成し、最後にすべてのシンクで生成されたすべてのログエントリーをメモリに取り込むシンクを作成することができます(同じソースを複数のシンクに接続することができます)。
このシステムでは、ログエントリーの取り込み方法、各ログエントリーの処理方法を細かく制御することができます。
API ¶
-
ログエントリーをファイルに書き出すロギング先を表現します。
-
ソースからシンクへ送信される単一ログメッセージを表現します。
-
ログエントリーをメモリに保存するロギング先を表現します。
-
ロギング先を表現します。
-
Pythonで生成されたログエントリーを送信できるように新しいロギングソースを作成します。
-
現行Houdiniセッションが所有している共有メモリSinkオブジェクトを返します。
-
hou.logging.loadLogsFromFile()
JSONフォーマットで保存されたファイルからLogEntryオブジェクトのタプルを読み込みます。
-
ロギングシステムに接続されたすべてのログシンクにLogEntryオブジェクトを送信します。
-
hou.logging.renderLogVerbosity()
Karmaのロギング詳細レベルを返します。
-
LogEntryオブジェクトのタプルをJSON形式のファイルに保存します。
-
hou.logging.setRenderLogVerbosity()
Karmaのロギング詳細レベルを設定します。
-
利用可能なログソース名すべてのタプルを返します。