SqlErrorLogFile 類別
提供屬性,用來檢視 SQL Server 記錄檔的相關資訊。
語法
class SQLErrorLogFile
{
uint32ArchiveNumber;
stringInstanceName;
datetimeLastModified;
uint32LogFileSize;
stringName;
};
屬性
SQLErrorLogFile 類別會定義下列屬性。
ArchiveNumber |
資料類型:uint32 存取類型:唯讀
記錄檔的封存數目。 |
InstanceName |
資料類型:string 存取類型:唯讀 限定詞:索引鍵
記錄檔所在的 SQL Server 執行個體名稱。 |
LastModified |
資料類型:datetime 存取類型:唯讀
上次修改記錄檔的日期。 |
LogFileSize |
資料類型:uint32 存取類型:唯讀
記錄檔的大小 (以位元組為單位)。 |
Name |
資料類型:string 存取類型:唯讀 限定詞:索引鍵
記錄檔的名稱。 |
備註
MOF |
Sqlmgmprovider xpsp2up.mof |
DLL |
Sqlmgmprovider.dll |
命名空間 |
\root\Microsoft\SqlServer\ComputerManagement10 |
範例
下列範例會擷取 SQL Server 的指定執行個體上所有 SQL Server 記錄檔的相關資訊。若要執行範例,請以執行個體名稱 (例如,'Instance1') 取代 <Instance_Name>。
on error resume next
set strComputer = "."
set objWMIService = GetObject("winmgmts:\\.\root\Microsoft\SqlServer\ComputerManagement10")
set LogFiles = objWmiService.ExecQuery("SELECT * FROM SqlErrorLogFile WHERE InstanceName = '<Instance_Name>'")
For Each logFile in LogFiles
WScript.Echo "Instance Name: " & logFile.InstanceName & vbNewLine _
& "Log File Name: " & logFile.Name & vbNewLine _
& "Archive Number: " & logFile.ArchiveNumber & vbNewLine _
& "Log File Size: " & logFile.LogFileSize & " bytes" & vbNewLine _
& "Last Modified: " & logFile.LastModified & vbNewLine _
Next
註解
當 WQL 陳述式中未提供 InstanceName 時,查詢將傳回預設執行個體的資訊。 例如,下列 WQL 陳述式將傳回來自預設執行個體 (MSSQLSERVER) 的所有記錄檔相關資訊。
"SELECT * FROM SqlErrorLogFile"
安全性
若要透過 WMI 連接到 SQL Server 記錄檔,您必須在本機和遠端電腦上具有下列權限:
Root\Microsoft\SqlServer\ComputerManagement10 WMI 命名空間的讀取權限。 根據預設,每個人都可從啟用帳戶權限取得讀取權限。
[!附註]
如需有關如何確認 WMI 權限的詳細資訊,請參閱<檢視離線記錄檔>主題的<安全性>一節。
包含錯誤記錄檔之資料夾的讀取權限。 根據預設,錯誤記錄檔會位於下列路徑 (其中 <Drive> 表示安裝 SQL Server 的磁碟機,而 <InstanceName> 則是 SQL Server 的執行個體名稱):
<磁碟機>:\Program Files\Microsoft SQL Server\MSSQL11.<InstanceName>\MSSQL\Log
如果透過防火牆連接,請確定您已在遠端目標電腦上的 WMI 防火牆中設定例外狀況。 如需詳細資訊,請參閱<從 Windows Vista 開始遠端連接到 WMI。