MochiOS開発記@デバッグログ強化検討
MochiKernelのデバッグログは下記情報を持っている。
・ログ出力したモジュール-サブモジュール(つまりひとつのソースファイル)のID
・ログ出力した行数
・文字列
デバッグログ種別やレベルなどは持たせていなくて、好き勝手していた。
いざ不具合があると情報が足りなくなるし、不具合がないと不要なログで埋め尽くされて見たいものが見れなくなる、ということに悩まされてきたので、種別の概念を追加することにする。
大体、世の中のシステムログ種別は以下のような感じか(超適当)
| 種別 | 概要 |
|---|---|
| emergency | システムが使用できなくなった系 |
| alert | 対処しないとまずい系 |
| critical | 致命的で対処しようがない系 |
| error | エラー全般 |
| warning | 警告全般 |
| notice | エラーでも警告でもないがちょっとあやしい系 |
| informational | なんか処理したよ系 |
| debug | プログラムデバッグ情報系 |
参考にしてこんな感じにしよう。(全然参考にしてない)
| 種別 | 概要 |
|---|---|
| abort | あぼーと。もう何もできない。死んだ。 |
| error | 想定外のエラー。処理を続けられないので中断。 |
| warning | 想定内のエラー。処理を続けられないので中断。 |
| info | なんか処理した。頻度低(HW割込みとかタスクスイッチ系はダメ)。 |
| trace | コードここ通ったよ。頻度低(HW割込みとかタスクスイッチ系はダメ)。 |
| temp | デバッグ中に使う専用。残さない。 |
種別ごとに有効化マクロ定義しとこ。
コメント
コメントを投稿