Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
SQL Server genera un evento Broker:Conversation per segnalare lo stato di avanzamento di una conversazione di Service Broker.
Colonne di dati della classe di evento Broker:Conversation
| Colonna di dati | TIPO | Descrizione | Numero di colonna | Filtrabile |
|---|---|---|---|---|
| ApplicationName | nvarchar |
Nome dell'applicazione client che ha creato la connessione a un'istanza di SQL Server. Questa colonna viene popolata con i valori passati dall'applicazione anziché con il nome visualizzato del programma. | 10 | Sì |
| ClientProcessID | int |
ID assegnato dal computer host al processo in cui è in esecuzione l'applicazione client. Questa colonna di dati viene popolata se l'ID del processo client viene fornito dal client. | 9 | Sì |
| DatabaseID | int |
ID del database specificato dall'istruzione USE database . Se non è stata eseguita alcuna istruzione USE database, l'ID del database predefinito. SQL Server Profiler visualizza il nome del database se la colonna di dati ServerName è acquisita nella traccia e il server è disponibile. Determinare il valore di un database usando la funzione DB_ID . | 3 | Sì |
| EventClass | int |
Tipo di classe di evento acquisito. Sempre 124 per Broker:Conversazione. | 27 | NO |
| EventSequence | int |
Numero di sequenza dell'evento. | 51 | NO |
| EventSubClass | nvarchar |
Tipo di sottoclasse dell'evento. Vengono fornite altre informazioni su ogni classe di evento. | 21 | Sì |
| GUID | uniqueidentifier |
ID della conversazione del dialogo. Questo identificatore viene trasmesso come parte del messaggio e viene condiviso tra entrambi i lati della conversazione. | 54 | NO |
| HostName | nvarchar |
Nome del computer in cui è in esecuzione il client. Questa colonna di dati viene popolata se il nome host viene fornito dal client. Per determinare il nome host, usare la funzione HOST_NAME . | 8 | Sì |
| IsSystem | int |
Indica se l'evento è stato generato per un processo di sistema o un processo utente. 0 = utente 1 = sistema |
60 | NO |
| LoginSid | image |
ID di sicurezza (SID) dell'utente connesso. Il SID è univoco per ogni account di accesso nel server. | 41 | Sì |
| NomeMetodo | nvarchar |
Gruppo di conversazioni a cui appartiene la conversazione. | 47 | NO |
| NTDomainName | nvarchar |
Dominio di Windows a cui appartiene l'utente. | 7 | Sì |
| NTUserName | nvarchar |
Nome dell'utente proprietario della connessione che ha generato questo evento. | 6 | Sì |
| ObjectName | nvarchar |
Identificativo del dialogo nella conversazione. | 34 | NO |
| Priorità | int |
Livello di priorità della conversazione | 5 | Sì |
| RoleName | nvarchar |
Ruolo del gestore delle conversazioni. Si tratta dell'iniziatore o della destinazione. | 38 | NO |
| Nome del Server | nvarchar |
Nome dell'istanza di SQL Server tracciata. | 26 | NO |
| Severità | int |
Gravità dell'errore di SQL Server, se questo evento segnala un errore. | 29 | NO |
| SPID | int |
ID del processo del server assegnato da SQL Server al processo associato al client. | 12 | Sì |
| StartTime | datetime |
Ora di avvio dell'evento, quando disponibile. | 14 | Sì |
| TextData | ntext |
Stato corrente della conversazione. Uno dei seguenti: COSÌ. Avvio in uscita. SQL Server ha elaborato una CONVERSAZIONE BEGIN per questa conversazione, ma non sono stati inviati messaggi. SI. Avvio in ingresso. Un'altra istanza del motore di database ha avviato una nuova conversazione con l'istanza corrente, ma l'istanza corrente non ha terminato di ricevere il primo messaggio. SQL Server potrebbe creare la conversazione in questo stato se il primo messaggio è frammentato o SQL Server riceve messaggi non in ordine. Tuttavia, SQL Server potrebbe creare la conversazione nello stato CO se la prima trasmissione ricevuta per la conversazione contiene il primo messaggio completo. CO. Conversare. La conversazione viene stabilita e entrambi i lati della conversazione possono inviare messaggi. La maggior parte delle comunicazioni per un servizio tipico si verifica quando la conversazione è in questo stato. DI. Disconnesso in ingresso. La parte remota della conversazione ha emesso un END CONVERSATION. La conversazione rimane in questo stato finché la parte locale non emette un END CONVERSATION. Un'applicazione può comunque ricevere messaggi per la conversazione. Poiché il lato remoto della conversazione ha terminato la conversazione, un'applicazione non può inviare messaggi in questa conversazione. Quando un'applicazione rilascia un oggetto END CONVERSATION, la conversazione passa allo stato Chiuso (CD). DO. Disconnessione in uscita La parte locale della conversazione ha pubblicato un END CONVERSATION. La conversazione rimane in questo stato finché il lato remoto della conversazione non riconosce il END CONVERSATION. Un'applicazione non può inviare o ricevere messaggi per la conversazione. Quando il lato remoto della conversazione riconosce , END CONVERSATIONla conversazione passa allo stato Chiuso (CD). ER. Errore. Si è verificato un errore in questo endpoint. Le colonne Error, Severity e State contengono informazioni sull'errore specifico che si è verificato. CD. Chiuso. L'endpoint di conversazione non è più in uso. |
1 | Sì |
| ID transazione | bigint |
ID assegnato dal sistema della transazione. | 4 | NO |
Nella tabella seguente sono elencati i valori della sottoclasse per questa classe di evento.
| Documento d'identità | Sottoclasse | Descrizione |
|---|---|---|
| 1 | SEND Messaggio | SQL Server genera un SEND evento Message quando il motore di database esegue un'istruzione SEND . |
| 2 | END CONVERSATION | SQL Server genera un END CONVERSATION evento quando il motore di database esegue un'istruzione END CONVERSATION che non include la clausola WITH ERROR. |
| 3 | END CONVERSATION CON ERRORE | SQL Server genera un END CONVERSATION evento WITH ERROR quando il motore di database esegue un'istruzione END CONVERSATION che include la clausola WITH ERROR. |
| 4 | Errore iniziato dal broker | SQL Server genera un evento Di errore avviato da Broker ogni volta che Service Broker crea un messaggio di errore. Ad esempio, quando Service Broker non riesce a instradare correttamente un messaggio per una finestra di dialogo, il broker crea un messaggio di errore per la finestra di dialogo e genera questo evento. SQL Server non genera questo evento quando un programma dell'applicazione termina una conversazione con un errore. |
| 5 | Termina finestra di dialogo | Service Broker ha terminato la finestra di dialogo. Service Broker termina i dialoghi in risposta a condizioni che impediscono la continuazione del dialogo, ma che non sono errori o la normale fine di una conversazione. Ad esempio, l'eliminazione di un servizio causa l'interruzione di tutte le finestre di dialogo per tale servizio. |
| 6 | Messaggio sequenziato ricevuto | SQL Server genera una classe di evento Received Sequenced Message quando SQL Server riceve un messaggio che contiene un numero di sequenza di messaggi. Tutti i tipi di messaggio definiti dall'utente sono messaggi sequenziati. Service Broker genera un messaggio non ordinato in due casi: I messaggi di errore generati da Service Broker non sono in sequenza. Le conferme dei messaggi potrebbero non essere ordinate. Per garantire l'efficienza, Service Broker include qualsiasi riconoscimento disponibile come parte di un messaggio sequenziato. Tuttavia, se un'applicazione non invia un messaggio sequenziato all'endpoint remoto entro un determinato periodo di tempo, Service Broker crea un messaggio non sequenziato per la conferma del messaggio. |
| 7 | Ricevuto END CONVERSATION | SQL Server genera un evento Received END CONVERSATION quando SQL Server riceve un messaggio End Dialog dall'altro lato della conversazione. |
| 8 | Ricevuto END CONVERSATION WITH ERROR | SQL Server genera un evento Received END CONVERSATION WITH ERROR quando SQL Server riceve un errore definito dall'utente dall'altro lato della conversazione. SQL Server non genera questo evento quando SQL Server riceve un errore definito dal broker. |
| 9 | Messaggio di errore del broker ricevuto | SQL Server genera un evento Messaggio di errore di Broker ricevuto quando Service Broker riceve un messaggio di errore definito dal broker dall'altro lato della conversazione. SQL Server non genera questo evento quando Service Broker riceve un messaggio di errore generato da un'applicazione. Ad esempio, se il database corrente contiene una route predefinita a un database di inoltro, Service Broker instrada un messaggio con un nome di servizio sconosciuto al database di inoltro. Se il database non è in grado di instradare il messaggio, il broker in tale database crea un messaggio di errore e restituisce il messaggio di errore al database corrente. Quando il database corrente riceve l'errore generato dal broker dal database di inoltro, il database corrente genera un evento Received Broker Error Message . |
| 10 | Ack ricevuto END CONVERSATION | SQL Server genera una classe di evento Received END CONVERSATION Ack quando l'altro lato di una conversazione riconosce un messaggio End Dialog o Error inviato da questo lato della conversazione. |
| 11 | AVVIA DIALOGO | SQL Server genera un evento BEGIN DIALOG quando il motore di database esegue un comando BEGIN DIALOG. |
| 12 | Finestra di dialogo Creata | SQL Server genera un evento Dialog Created quando Service Broker crea un endpoint per una finestra di dialogo. Service Broker crea un endpoint ogni volta che viene stabilita una nuova finestra di dialogo, indipendentemente dal fatto che il database corrente sia l'iniziatore o la destinazione della finestra di dialogo. |
| 13 | END CONVERSATION CON PULIZIA | SQL Server genera un END CONVERSATION EVENTO WITH CLEANUP quando il motore di database esegue un'istruzione END CONVERSATION che include la clausola WITH CLEANUP. |