SqlErrorLogEvent 클래스

지정된 SQL Server 로그 파일에서 이벤트를 보기 위한 속성을 제공합니다.

구문

class SQLErrorLogEvent 
{
   stringFileName;
   stringInstanceName;
   datetimeLogDate;
   stringMessage;
   stringProcessInfo;
};

속성

SQLErrorLogEvent 클래스는 다음과 같은 속성을 정의합니다.

FileName

데이터 형식: string

액세스 유형: 읽기 전용

 

오류 로그 파일의 이름입니다.

InstanceName

데이터 형식: string

액세스 유형: 읽기 전용

한정자: Key

로그 파일이 있는 SQL Server 인스턴스의 이름입니다.

LogDate

데이터 형식: datetime

액세스 유형: 읽기 전용

한정자: Key

 

이벤트가 로그 파일에 기록된 날짜와 시간입니다.

Message

데이터 형식: string

액세스 유형: 읽기 전용

 

이벤트 메시지입니다.

ProcessInfo

데이터 형식: string

액세스 유형: 읽기 전용

 

이벤트의 SPID(원본 서버 프로세스 ID)에 대한 정보입니다.

주의

MOF

Sqlmgmproviderxpsp2up.mof

DLL

Sqlmgmprovider.dll

네임스페이스

\root\Microsoft\SqlServer\ComputerManagement10

다음 예에서는 지정된 로그 파일에서 로깅된 모든 이벤트의 값을 검색하는 방법을 보여 줍니다. 예를 실행하려면 <Instance_Name>을 SQL Server 인스턴스의 이름(예: 'Instance1')으로 바꾸고 'File_Name'을 오류 로그 파일의 이름(예: 'ERRORLOG.1')으로 바꿉니다.

on error resume next
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" _
    & strComputer & "\root\MICROSOFT\SqlServer\ComputerManagement10")
set logEvents = objWmiService.ExecQuery("SELECT * FROM SqlErrorLogEvent WHERE InstanceName = '<Instance_Name>' AND FileName = 'File_Name'")
 
For Each logEvent in logEvents
WScript.Echo "Instance Name: " & logEvent.InstanceName & vbNewLine _
    & "Log Date: " & logEvent.LogDate & vbNewLine _
    & "Log File Name: " & logEvent.FileName & vbNewLine _
    & "Process Info: " & logEvent.ProcessInfo & vbNewLine _
    & "Message: " & logEvent.Message & vbNewLine _

Next

설명

WQL 문에서 InstanceName 또는 FileName을 제공하지 않은 경우 쿼리에서는 기본 인스턴스와 현재 SQL Server 로그 파일에 대한 정보를 반환합니다. 예를 들어 다음 WQL 문은 기본 인스턴스(MSSQLSERVER)의 현재 로그 파일(ERRORLOG)에서 모든 로그 이벤트를 반환합니다.

"SELECT * FROM SqlErrorLogEvent"

보안

WMI를 통해 SQL Server 로그 파일에 연결하려면 로컬 컴퓨터와 원격 컴퓨터 모두에 대해 다음과 같은 사용 권한이 있어야 합니다.

  • Root\Microsoft\SqlServer\ComputerManagement10 WMI 네임스페이스에 대한 읽기 권한. 기본적으로 모든 사용자는 계정 사용 권한으로 읽기 액세스합니다.

  • 오류 로그를 포함하는 폴더에 대한 읽기 권한. 기본적으로 오류 로그는 다음 경로에 있습니다. 여기서 <Drive>는 SQL Server를 설치한 드라이브를 나타내고 <InstanceName>은 SQL Server 인스턴스의 이름입니다.

    <Drive>:\Program Files\Microsoft SQL Server\MSSQL11.<InstanceName>\MSSQL\Log

방화벽을 통해 연결하는 경우 방화벽에 원격 대상 컴퓨터의 WMI에 대한 예외가 설정되어 있는지 확인합니다. 자세한 내용은 Windows Vista에서 원격으로 시작하여 WMI에 연결(Connecting to WMI Remotely Starting with Windows Vista)을 참조하십시오.

참고 항목

참조

SqlErrorLogFile 클래스

개념

오프라인 로그 파일 보기