다음을 통해 공유


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에 연결을 참조하세요.

참고 항목