記錄常式和宏
RDBSS 提供一些用於記錄的常式。 這些記錄設備一律存在。 定義 RDBSSLOG 宏時,會啟用已檢查組建上的記錄呼叫世代。 設定NO_RDBSSLOG時,會停用記錄呼叫。
記錄常式會建立儲存在迴圈緩衝區中的記錄檔記錄。 每筆記錄都會以記錄描述元系結在任一端。 此記錄描述元長度為四個位元組。
下表包含記錄常式。
常式傳回的值 | 描述 |
---|---|
呼叫此常式,將錯誤記錄至 I/O 錯誤記錄檔。 建議使用 RxLogFailure 或 RxLogEvent 宏,而不是直接呼叫此常式。 |
|
此常式會配置 I/O 錯誤記錄、填入記錄檔記錄,並將此記錄寫入 I/O 錯誤記錄檔。 |
|
此常式會配置 I/O 錯誤記錄、填入記錄檔記錄,並將此記錄寫入 I/O 錯誤記錄檔。 此常式會將行號和狀態編碼為儲存在 I/O 錯誤記錄檔記錄中的原始資料緩衝區。 建議使用 RxLogFailureWithBuffer 宏,而不是直接呼叫此常式。 |
|
此常式會採用格式字串和可變數目的參數,並在啟用記錄時,將輸出字串格式化為 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 呼叫。 |