次の方法で共有


ログ記録用ルーチンとマクロ

RDBSS は、ログ記録用のルーチンを多数提供します。 これらのロギング機能は常に存在します。 RDBSSLOG マクロが定義されている場合、チェックされたビルドでのログ呼び出しの生成が有効になります。 NO_RDBSSLOG が設定されている場合、ロギング呼び出しは無効になります。

ロギング ルーチンは、循環バッファに保存されるログ レコードを作成します。 各レコードは、レコード記述子によって両側が境界付けされます。 このレコード記述子の長さは 4 バイトです。

次の表には、ロギング ルーチンが含まれています。

ルーチンによって返される値 説明

RxLogEventDirect

このルーチンは、エラーを I/O エラー ログに記録するために呼び出されます。

It is recommended that the RxLogFailure または RxLogEvent このルーチンを直接呼び出す代わりにマクロを使用してください。

RxLogEventWithAnnotation

このルーチンは、I/O エラー ログ レコードを割り当て、ログ レコードを埋め、このレコードを I/O エラー ログに書き込みます。

RxLogEventWithBufferDirect

このルーチンは、I/O エラー ログ レコードを割り当て、ログ レコードを埋め、このレコードを I/O エラー ログに書き込みます。 このルーチンは、行番号とステータスを、I/O エラー ログ レコードに保存される生データ バッファにエンコードします。

推奨されるのは、RxLogFailureWithBuffer このルーチンを直接呼び出す代わりにマクロを使用してください。

_RxLog

このルーチンは、フォーマット文字列と可変数のパラメーターを受け取り、ロギングが有効な場合、I/O エラー ログ エントリとして記録するために出力文字列をフォーマットします。

推奨されるのは、RxLog このルーチンを直接呼び出す代わりにマクロを使用してください。

このルーチンは、Windows Server 2003、Windows XP、および Windows 2000 上の RDBSS のチェック済みビルドでのみ使用できます。

次のマクロは、前の表にリストされているルーチンを呼び出す rxlog.h および rxprocs.h ヘッダー ファイルで定義されています。 これらのマクロは通常、これらのルーチンを直接呼び出す代わりに使用されます。

マクロ 説明

RxLog(Args)

チェックされたビルドでは、このマクロは _RxLog ルーティーンを呼び出します。

製品版のビルドでは、このマクロは何も行いません。

RxLog への引数は、ロギングをオフにする必要がある場合に null 呼び出しへの変換を可能にするために、追加のかっこで囲む必要があることに注意してください。

RxLogEvent (_DeviceObject, _OriginatorId, _EventId, _Status)

このマクロは RxLogEventDirect ルーティーンを呼び出します。

RxLogFailure (_DeviceObject, _OriginatorId, _EventId, _Status)

このマクロは RxLogEventDirect ルーティーンを呼び出します。

RxLogFailureWithBuffer (_DeviceObject, _OriginatorId, _EventId, _Status, _Buffer, _Length)

このマクロはRxLogEventWithBufferDirect ルーティーンを呼び出します。

RxLogRetail(Args)

チェックされたビルドでは、このマクロは _RxLog ルーティーンを呼び出します。

製品版のビルドでは、このマクロは何も行いません。

RxLogRetail への引数は、ロギングをオフにする必要がある場合に null 呼び出しへの変換を可能にするために、追加のかっこで囲む必要があることに注意してください。