Broker:Conversation 이벤트 클래스
SQL Server 는 Broker:Conversation 이벤트를 생성하여 Service Broker 대화의 진행을 보고합니다.
Broker:Conversation 이벤트 클래스 데이터 열
데이터 열 | Type | Description | 열 번호 | 필터 가능 |
---|---|---|---|---|
ApplicationName | nvarchar |
SQL Server인스턴스에 연결한 클라이언트 애플리케이션의 이름입니다. 이 열은 프로그램의 표시 이름이 아니라 애플리케이션에서 전달한 값으로 채워집니다. | 10 | 예 |
ClientProcessID | int |
클라이언트 애플리케이션이 실행 중인 프로세스에 대해 호스트 컴퓨터가 할당한 ID입니다. 클라이언트가 클라이언트 프로세스 ID를 제공하면 이 데이터 열이 채워집니다. | 9 | 예 |
DatabaseID | int |
USE database 문에서 지정된 데이터베이스의 ID입니다. 실행된 USE database문이 없는 경우 기본 데이터베이스의 ID입니다. SQL Server Profiler ServerName 데이터 열이 추적에서 캡처되고 서버를 사용할 수 있으면 에 데이터베이스 이름이 표시됩니다. 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 | 예 |
우선 순위 | int |
대화의 우선 순위 수준입니다. | 5 | 예 |
RoleName | nvarchar |
대화 핸들의 역할입니다. 이 역할은 시작자 또는 대상입니다. | 38 | 예 |
데이터 열이 추적에서 캡처되고 서버를 사용할 수 있으면 | nvarchar |
추적되는 SQL Server 인스턴스의 이름입니다. | 26 | 예 |
심각도 | int |
이 이벤트에서 오류를 보고하는 경우 SQL Server 오류 심각도입니다. | 29 | 예 |
SPID | int |
SQL Server 가 클라이언트와 관련된 프로세스에 할당한 서버 프로세스 ID입니다. | 12 | 예 |
StartTime | datetime |
이벤트가 시작된 시간입니다(사용 가능한 경우). | 14 | 예 |
TextData | ntext |
대화의 현재 상태입니다. 다음 중 하나 SO. 아웃바운드가 시작되었습니다. SQL Server 가 이 대화에 대해 BEGIN CONVERSATION을 처리했지만 메시지가 전송되지 않았습니다. SI. 인바운드가 시작되었습니다. 데이터베이스 엔진 의 다른 인스턴스에서 현재 인스턴스와 새 대화를 시작했지만 현재 인스턴스가 첫 번째 메시지를 완전히 받지 못했습니다. SQL Server 에서 순서가 잘못된 메시지를 받는 경우 SQL Server 는 대화를 이 상태로 만들 수 있습니다. 그러나 대화에 대해 받은 첫 번째 전송에 첫 번째 메시지가 모두 포함된 경우 SQL Server 는 대화를 CO 상태로 만들 수 있습니다. CO. 대화 중입니다. 대화가 설정되고 대화의 양쪽 모두 메시지를 보낼 수 있습니다. 일반 서비스에 대한 통신의 대부분은 대화가 이 상태일 때 수행됩니다. DI. 인바운드 연결이 끊어졌습니다. 원격 대화 상대가 END CONVERSATION을 실행했습니다. 로컬 대화 상대가 END CONVERSATION을 실행할 때까지 대화는 이 상태로 유지됩니다. 애플리케이션은 계속해서 대화 메시지를 받을 수 있습니다. 원격 대화 상대가 대화를 종료했기 때문에 애플리케이션에서 이 대화 메시지를 보낼 수는 없습니다. 애플리케이션이 END CONVERSATION을 실행하면 대화가 CD(닫힘) 상태로 전환됩니다. DO. 아웃바운드 연결이 끊어졌습니다. 로컬 대화 상대가 END CONVERSATION을 실행했습니다. 원격 대화 상대가 END CONVERSATION을 승인할 때까지 대화는 이 상태로 유지됩니다. 애플리케이션에서 대화 메시지를 보내거나 받을 수 없습니다. 원격 대화 상대가 END CONVERSATION을 승인하면 대화가 CD(닫힘) 상태로 전환됩니다. ER. 오류. 이 엔드포인트에서 오류가 발생했습니다. 오류, 심각도 및 상태 열은 발생한 특정 오류에 대한 정보를 포함합니다. CD. 종료되었습니다. 대화 엔드포인트는 더 이상 사용되지 않습니다. |
1 | 예 |
Transaction ID | bigint |
시스템이 할당한 트랜잭션 ID입니다. | 4 | 예 |
다음 표에서는 이 이벤트 클래스에 대한 하위 클래스 값을 나열합니다.
ID | 하위 클래스 | Description |
---|---|---|
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 는 가 오류 메시지를 만들 때마다 Broker Initiated Error Service Broker 이벤트를 생성합니다. 예를 들어 Service Broker 에서 대화에 대한 메시지를 성공적으로 라우팅하지 못하는 경우 Broker는 대화에 대해 오류 메시지를 만들고 이 이벤트를 생성합니다. SQL Server 는 애플리케이션이 오류로 인해 대화를 종료하는 경우 이 이벤트를 생성하지 않습니다. |
5 | Terminate Dialog | Service Broker 는 대화를 종료했습니다. Service Broker 는 대화가 지속될 수 없는 조건에 따라 대화를 종료하지만 이러한 조건에는 오류 또는 정상적인 대화 종료가 포함되지 않습니다. 예를 들어 서비스를 삭제하면 Service Broker 가 해당 서비스에 대한 모든 대화를 종료합니다. |
6 | Received Sequenced Message | SQL Server 는 에서 메시지 시퀀스 번호가 포함된 메시지를 수신할 때 Received Sequenced Message SQL Server 이벤트 클래스를 생성합니다. 모든 사용자 정의 메시지 유형은 순차화된 메시지입니다. Service Broker 는 다음과 같은 두 경우에 순차화되지 않은 메시지를 생성합니다. Service Broker 에 의해 생성된 오류 메시지가 순차화되지 않습니다. 메시지 승인이 순차화되지 않을 수 있습니다. 효율성을 높이기 위해 Service Broker 에는 가능한 경우 순차화된 메시지의 일부로 메시지 승인이 포함됩니다. 그러나 애플리케이션에서 특정 기간 내에 순차화된 메시지를 원격 엔드포인트에 보내지 않으면 Service Broker 가 메시지 승인에 대해 순차화되지 않은 메시지를 만듭니다. |
7 | Received END CONVERSATION | SQL Server 는 SQL Server 가 대화 상대로부터 End Dialog 메시지를 수신할 때 Received END CONVERSATION 이벤트를 생성합니다. |
8 | Received END CONVERSATION WITH ERROR | SQL Server 는 가 대화 상대로부터 사용자 정의 오류를 수신할 때 Received END CONVERSATION WITH ERROR SQL Server 이벤트를 생성합니다. SQL Server 가 Broker 정의 오류를 수신할 때는 SQL Server 에서 이 이벤트를 생성하지 않습니다. |
9 | Received Broker Error Message | SQL Server 는 가 대화 상대로부터 Broker 정의 오류 메시지를 수신할 때 Received Broker Error Message Service Broker 이벤트를 생성합니다. 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 가 대화의 엔드포인트를 만들 때 에서는 Dialog Created Service Broker 이벤트를 생성합니다. Service Broker 는 새 대화가 구성될 때마다 현재 데이터베이스가 대화의 시작자 또는 대상인지에 관계없이 엔드포인트를 만듭니다. |
13 | END CONVERSATION WITH CLEANUP | SQL Server 는 데이터베이스 엔진 이 WITH CLEANUP 절이 포함된 END CONVERSATION 문을 실행할 때 END CONVERSATION WITH CLEANUP 이벤트를 생성합니다. |