SqlErrorLogFile 클래스
적용 대상: SQL Server
SQL Server 로그 파일에 대한 정보를 보기 위한 속성을 제공합니다.
구문
class SQLErrorLogFile
{
uint32ArchiveNumber;
stringInstanceName;
datetimeLastModified;
uint32LogFileSize;
stringName;
};
속성
SQLErrorLogFile 클래스는 다음 속성을 정의합니다.
속성 | 설명 |
---|---|
ArchiveNumber | 데이터 형식: uint32 액세스 형식: 읽기 전용 로그 파일의 보관 번호입니다. |
InstanceName | 데이터 형식: 문자열 액세스 형식: 읽기 전용 한정자: Key 로그 파일이 있는 SQL Server 인스턴스의 이름입니다. |
LastModified | 데이터 형식: datetime 액세스 형식: 읽기 전용 로그 파일이 마지막으로 수정된 날짜입니다. |
LogFileSize | 데이터 형식: uint32 액세스 형식: 읽기 전용 로그 파일의 크기(바이트)입니다. |
이름 | 데이터 형식: 문자열 액세스 형식: 읽기 전용 한정자: Key 로그 파일의 이름입니다. |
설명
Type | 속성 |
---|---|
MOF | - sqlmgmprovider.mof (SQL Server 2022(16.x) 이상 버전)- sqlmgmproviderxpsp2up.mof (SQL Server 2019(15.x) 및 이전 버전) |
DLL | sqlmgmprovider.dll |
네임스페이스 | \root\Microsoft\SqlServer\ComputerManagement10 |
예시
다음 예제에서는 지정된 SQL Server 인스턴스의 모든 SQL Server 로그 파일에 대한 정보를 검색합니다. 예제를 실행하려면 Instance_Name> 인스턴스의 이름(예: 'Instance1')으로 바꿉<다.
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 권한을 확인하는 방법에 대한 자세한 내용은 오프라인 로그 파일 보기 항목 의 보안 섹션을 참조하세요.
오류 로그가 포함된 폴더에 대한 읽기 권한입니다. 기본적으로 오류 로그는 다음 경로에 있습니다(여기서 <드라이브>는 SQL Server를 설치한 드라이브를 나타내고 <InstanceName>은 SQL Server 인스턴스의 이름임).
<드라이브>:\Program Files\Microsoft SQL Server\MSSQL11 .<InstanceName>\MSSQL\Log
방화벽을 통해 연결하는 경우 원격 대상 컴퓨터의 WMI에 대한 방화벽에 예외가 설정되어 있는지 확인합니다. 자세한 내용은 Windows Vista를 사용하여 원격으로 WMI에 연결을 참조하세요.