メインコンテンツへスキップ
検索

OpenVOS でシステムログメッセージ (ハードウェア、セキュリティ、syserr など) が生成されると、syserr パーティションに送られ、イベントが通知されます。TheOverseer という名前のプロセスが、他の多くのイベントと一緒にそのイベントを待っています。

このイベントを処理するために、TheOverseer はパーティションからメッセージを読み込み、ユーザヒープに保存します。その後、モジュールのコンソール端末にメッセージを書き込み、指定されたログに書き込み、ユーザヒープから削除します。2つの書き込みのいずれかが失敗した場合、メッセージはユーザヒープに残り、後で再試行されます。

パーティションのサイズには制限があります。ユーザヒープには、指定された数のログメッセージしか格納されません。これらの領域のいずれかがオーバーフローした場合、指定されたログファイルが他のプロセスによって書き込まれるようにロックされた場合、あるいはコンソールターミナルが壊れた場合、フラグが設定されます。これにより、既存のメッセージが上書きされ、TheOverseer は **Log Messages Lost** を syserr_log とコンソールに出力します。

TheOverseerには多くのタスクがあります。その中には、プロセスの作成や破棄、通信トラフィックのsend_message型などがあり、かなりの時間と処理が必要になります。このプロセスが忙しければ、syserrイベント機構のサービスを頻繁に行わなくなり、syserrのラップアラウンドにつながる可能性があります。

大量のメッセージが syserr パーティションに置かれる原因となるモジュールイベント (例: 一度に多くのプロセスを停止する、ユーザアプリケーションが syserr に書き込むなど) は、パーティションが一杯になる原因となります。この理由から、ユーザアプリケーションが syserr_log メカニズムを使用してサイト固有のログ情報を保持することは推奨しません。ユーザアプリケーションは、アプリケーション固有のロギング情報を保持するために、独自のメカニズムを使用すべきです。

メニューを閉じる

© 2024 Stratus Technologies.