Broker:Conversation 이벤트 클래스
SQL Server는 Broker:Conversation 이벤트를 생성하여 Service Broker 대화의 진행을 보고합니다.
Broker:Conversation 이벤트 클래스 데이터 열
데이터 열 | 유형 | 설명 | 열 번호 | 필터 가능 |
---|---|---|---|---|
ApplicationName |
nvarchar |
SQL Server 인스턴스에 연결한 클라이언트 응용 프로그램의 이름입니다. 이 열은 프로그램의 표시 이름이 아니라 응용 프로그램에서 전달한 값으로 채워집니다. |
10 |
예 |
ClientProcessID |
int |
클라이언트 응용 프로그램이 실행 중인 프로세스에 대해 호스트 컴퓨터가 할당한 ID입니다. 클라이언트가 클라이언트 프로세스 ID를 제공하면 이 데이터 열이 채워집니다. |
9 |
예 |
DatabaseID |
int |
USE database 문으로 지정한 데이터베이스 ID이거나 지정한 인스턴스에 대해 실행된 USE database 문이 없는 경우 기본 데이터베이스 ID입니다. ServerName 데이터 열이 추적에서 캡처되고 서버를 사용할 수 있는 경우 SQL Server 프로파일러는 데이터베이스 이름을 표시합니다. DB_ID 함수를 사용하여 데이터베이스에 대한 값을 결정합니다. |
3 |
예 |
EventClass |
int |
캡처된 이벤트 클래스 유형입니다. Broker:Conversation의 경우 항상 124입니다. |
27 |
아니요 |
EventSequence |
int |
이 이벤트의 시퀀스 번호입니다. |
51 |
아니요 |
EventSubClass |
nvarchar |
각 이벤트 클래스에 대한 자세한 정보를 제공하는 이벤트 하위 클래스 유형입니다. |
21 |
예 |
GUID |
uniqueidentifier |
대화 상자의 대화 ID입니다. 이 식별자는 메시지의 일부로 전송되며 양쪽 대화 상대 간에 공유합니다. |
54 |
아니요 |
HostName |
nvarchar |
클라이언트를 실행 중인 컴퓨터의 이름입니다. 클라이언트가 호스트 이름을 제공하면 이 데이터 열이 채워집니다. 호스트 이름을 확인하려면 HOST_NAME 함수를 사용하십시오. |
8 |
예 |
IsSystem |
int |
이벤트가 시스템 프로세스에서 발생했는지 아니면 사용자 프로세스에서 발생했는지를 나타냅니다. 0 = 사용자 1 = 시스템 |
60 |
아니요 |
LoginSid |
image |
로그인한 사용자의 SID(보안 ID)입니다. 각 SID는 서버의 각 로그인마다 고유합니다. |
41 |
예 |
MethodName |
nvarchar |
대화가 속한 대화 그룹입니다. |
47 |
아니요 |
NTDomainName |
nvarchar |
사용자가 속한 Windows 도메인입니다. |
7 |
예 |
NTUserName |
nvarchar |
이 이벤트를 생성한 연결을 소유하고 있는 사용자의 이름입니다. |
6 |
예 |
ObjectName |
nvarchar |
대화 상자의 대화 핸들입니다. |
34 |
아니요 |
RoleName |
nvarchar |
대화 핸들의 역할입니다. 이 역할은 시작자 또는 대상입니다. |
38 |
아니요 |
ServerName |
nvarchar |
추적 중인 SQL Server 인스턴스의 이름입니다. |
26 |
아니요 |
Severity |
int |
이 이벤트에서 오류를 보고하는 경우 SQL Server 오류 심각도입니다. |
29 |
아니요 |
SPID |
int |
SQL Server가 클라이언트와 관련된 프로세스에 할당한 서버 프로세스 ID입니다. |
12 |
예 |
StartTime |
datetime |
이벤트가 시작된 시간입니다(사용 가능한 경우). |
14 |
예 |
TextData |
ntext |
대화의 현재 상태입니다. 다음 중 하나입니다.
|
1 |
예 |
Transaction ID |
bigint |
시스템이 할당한 트랜잭션 ID입니다. |
4 |
아니요 |
다음 표에서는 이 이벤트 클래스에 대한 하위 클래스 값을 나열합니다.
ID | 하위 클래스 | 설명 |
---|---|---|
1 |
SEND Message |
SQL Server는 데이터베이스 엔진이 SEND 문을 실행할 때 SEND Message 이벤트를 생성합니다. |
2 |
END CONVERSATION |
SQL Server는 데이터베이스 엔진이 WITH ERROR 절이 포함되지 않은 END CONVERSATION 문을 실행할 때 END CONVERSATION 이벤트를 생성합니다. |
3 |
END CONVERSATION WITH ERROR |
SQL Server는 데이터베이스 엔진이 WITH ERROR 절이 포함된 END CONVERSATION 문을 실행할 때 END CONVERSATION WITH ERROR 이벤트를 생성합니다. |
4 |
Broker Initiated Error |
SQL Server는 Service Broker가 오류 메시지를 만들 때마다 Broker Initiated Error 이벤트를 생성합니다. 예를 들어 Service Broker에서 대화에 대한 메시지를 성공적으로 라우팅하지 못하는 경우 Broker는 대화에 대해 오류 메시지를 만들고 이 이벤트를 생성합니다. SQL Server는 응용 프로그램이 오류로 인해 대화를 종료하는 경우 이 이벤트를 생성하지 않습니다. |
5 |
Terminate Dialog |
Service Broker가 대화를 종료했습니다. Service Broker는 대화가 지속될 수 없는 조건에 따라 대화를 종료하지만 이러한 조건에는 오류 또는 정상적인 대화 종료가 포함되지 않습니다. 예를 들어 서비스를 삭제하면 Service Broker가 해당 서비스에 대한 모든 대화를 종료합니다. |
6 |
Received Sequenced Message |
SQL Server는 SQL Server에서 메시지 시퀀스 번호가 포함된 메시지를 수신할 때 Received Sequenced Message 이벤트 클래스를 생성합니다. 모든 사용자 정의 메시지 유형은 순차화된 메시지입니다. Service Broker는 다음과 같은 두 경우에 순차화되지 않은 메시지를 생성합니다.
|
7 |
Received END CONVERSATION |
SQL Server는 SQL Server가 대화 상대로부터 End Dialog 메시지를 수신할 때 Received END CONVERSATION 이벤트를 생성합니다. |
8 |
Received END CONVERSATION WITH ERROR |
SQL Server는 SQL Server가 대화 상대로부터 사용자 정의 오류를 수신할 때 Received END CONVERSATION WITH ERROR 이벤트를 생성합니다. SQL Server가 Broker 정의 오류를 수신할 때는 SQL Server에서 이 이벤트를 생성하지 않습니다. |
9 |
Received Broker Error Message |
SQL Server는 Service Broker가 대화 상대로부터 Broker 정의 오류 메시지를 수신할 때 Received Broker Error Message 이벤트를 생성합니다. SQL Server는 Service Broker에서 응용 프로그램에 의해 생성된 오류 메시지를 수신할 때 이 이벤트를 생성하지 않습니다. 예를 들어 현재 데이터베이스에 전진 데이터베이스에 대한 기본 경로가 포함된 경우 Service Broker는 알 수 없는 서비스 이름이 포함된 메시지를 전진 데이터베이스에 라우팅합니다. 이 데이터베이스에서 메시지를 라우팅할 수 없으면 이 데이터베이스에 있는 Broker에서 오류 메시지를 만들고 이 오류 메시지를 현재 데이터베이스에 반환합니다. 현재 데이터베이스가 전진 데이터베이스에서 Broker 생성 오류를 수신하면 현재 데이터베이스가 Received Broker Error Message 이벤트를 생성합니다. |
10 |
Received END CONVERSATION Ack |
SQL Server는 대화 상대가 대화의 이 쪽에서 보낸 End Dialog 또는 Error 메시지를 승인할 때 Received END CONVERSATION Ack 이벤트 클래스를 생성합니다. |
11 |
BEGIN DIALOG |
SQL Server는 데이터베이스 엔진이 BEGIN DIALOG 명령을 실행할 때 BEGIN DIALOG 이벤트를 생성합니다. |
12 |
Dialog Created |
SQL Server는 Service Broker가 대화의 끝점을 만들 때 Dialog Created 이벤트를 생성합니다. Service Broker는 새 대화가 구성될 때마다 현재 데이터베이스가 대화의 시작자 또는 대상인지 여부에 관계없이 끝점을 만듭니다. |
13 |
END CONVERSATION WITH CLEANUP |
SQL Server는 데이터베이스 엔진이 WITH CLEANUP 절이 포함된 END CONVERSATION 문을 실행할 때 END CONVERSATION WITH CLEANUP 이벤트를 생성합니다. |
참고 항목
관련 자료
Service Broker 소개
대화(Conversation) 아키텍처