ssbdiagnose-Hilfsprogramm (Service Broker)ssbdiagnose Utility (Service Broker)

Das Hilfsprogramm ssbdiagnose meldet Probleme in Service BrokerService Broker -Konversationen oder der Konfiguration von Service BrokerService Broker -Diensten.The ssbdiagnose utility reports issues in Service BrokerService Broker conversations or the configuration of Service BrokerService Broker services. Konfigurationsüberprüfungen können entweder für zwei Dienste oder für einen einzelnen Dienst ausgeführt werden.Configuration checks can be made for either two services or a single service. Probleme werden entweder im Eingabeaufforderungsfenster als für den Benutzer lesbarer Text oder als formatierte XML, die in eine Datei oder ein anderes Programm umgeleitet werden kann, gemeldet.Issues are reported either in the command prompt window as human-readable text, or as formatted XML that can be redirected to a file or another program.

SyntaxSyntax


ssbdiagnose   
[ [ -XML ]  
    [ -LEVEL { ERROR | WARNING | INFO } ]  
  [-IGNORE error_id ] [ ...n]  
    [ <baseconnectionoptions> ]  
  { <configurationreport> | <runtimereport> }  
]  
| -?  

<configurationreport> ::=  
    CONFIGURATION  
  { [ FROM SERVICE service_name  
      [ <fromconnectionoptions> ]  
      [ MIRROR <mirrorconnectionoptions> ]  
    ]  
    [ TO SERVICE service_name[, broker_id ]  
      [ <toconnectionoptions> ]  
      [ MIRROR <mirrorconnectionoptions> ]  
    ]  
  }  
    ON CONTRACT contract_name  
  [ ENCRYPTION { ON | OFF | ANONYMOUS } ]  

<runtime_report> ::=  
    RUNTIME  
    [-SHOWEVENTS ]  
        [ -NEW  
         [ -ID { conversation_handle  
                | conversation_group_id  
                 | conversation_id  
                  }  
        ] [ ...n]  
        ]  
    [ -TIMEOUT timeout_interval ]  
    [ <runtimeconnectionoptions> ]  

<baseconnectionoptions> ::=  
  <connectionoptions>  

<fromconnectionoptions> ::=  
  <connectionoptions>  

<toconnectionoptions> ::=  
  <connectionoptions>  

<mirrorconnectionoptions> ::=  
  <connectionoptions>  

<runtimeconnectionoptions> ::=  
  [ CONNECT TO <connectionoptions> ] [ ...n]  

<connectionoptions> ::=  
    [ –E | { -U login_id [ -P password ] } ]  
  [ -S server_name[\instance_name] ]  
  [ -d database_name ]  
  [ -l login_timeout ]  

BefehlszeilenoptionenCommand Line Options

-XML-XML
Gibt an, dass die Ausgabe von ssbdiagnose als formatierte XML generiert wird.Specifies that the ssbdiagnose output be generated as formatted XML. Dieses kann in eine Datei oder in eine andere Anwendung umgeleitet werden.This can be redirected to a file or to another application. Wenn -XML nicht angegeben ist, wird die Ausgabe von ssbdiagnose als für den Benutzer lesbarer Text formatiert.If -XML is not specified, the ssbdiagnose output is formatted as human-readable text.

-LEVEL { ERROR | WARNING | INFO}-LEVEL { ERROR | WARNING | INFO}
Gibt die Ebene der Meldungen an, die gemeldet werden sollen.Specifies the level of messages to report.

ERROR: Nur Fehler werden gemeldet.ERROR: report only error messages.

WARNING: Fehler und Warnungen werden gemeldet.WARNING: report error and warning messages.

INFO: Fehler, Warnungen und Informationsmeldungen werden gemeldet.INFO: report error, warning, and informational messages.

Die Standardeinstellung ist WARNING.The default setting is WARNING.

-IGNORE Fehler-ID-IGNORE error_id
Gibt an, dass Fehler oder Meldungen mit der angegebenen Fehler-ID in Berichten nicht eingeschlossen werden.Specifies that errors or messages that have the specified error_id not be included in reports. Sie können -IGNORE mehrmals angeben, um mehrere Meldungs-IDs zu unterdrücken.You can specify -IGNORE multiple times to suppress multiple message IDs.

<Baseconnectionoptions ><baseconnectionoptions>
Gibt die grundlegenden Verbindungsinformationen an, die von ssbdiagnose verwendet werden, wenn eine bestimmte Klausel keine Verbindungsoptionen enthält.Specifies the base connection information that is used by ssbdiagnose when connection options are not included in a specific clause. Die in einer bestimmten Klausel angegebenen Verbindungsinformationen überschreiben die Informationen von baseconnectionoption .The connection information that is given in a specific clause overrides the baseconnectionoption information. Dieser Vorgang wird für jeden Parameter separat ausgeführt.This is performed separately for each parameter. Beispiel: Wenn sowohl -S als auch -d in baseconnectionoptionsangegeben sind und nur -d in toconnectionoptionsangegeben ist, verwendet ssbdiagnose „-S“ aus baseconnectionoptions und „-d“ aus toconnectionoptions.For example, if both -S and -d are specified in baseconnetionoptions, and only -d is specified in toconnetionoptions, ssbdiagnose uses -S from baseconnetionoptions and -d from toconnetionoptions.

CONFIGURATIONCONFIGURATION
Fordert einen Bericht über Konfigurationsfehler für ein Paar von Service BrokerService Broker -Diensten oder für einen einzelnen Dienst an.Requests a report of configuration errors between a pair of Service BrokerService Broker services, or for a single service.

FROM SERVICE DienstnameFROM SERVICE service_name
Gibt den Dienst an, der Konversationen initiiert.Specifies the service that initiates conversations.

<Fromconnectionoptions ><fromconnectionoptions>
Gibt die Informationen an, die erforderlich sind, um eine Verbindung mit der Datenbank herzustellen, die den Initiatordienst enthält.Specifies the information that is required to connect to the database that holds the initiator service. Wenn fromconnectionoptions nicht angegeben ist, verwendet ssbdiagnose die Verbindungsinformationen aus baseconnectionoptions , um eine Verbindung mit der Initiatordatenbank herzustellen.If fromconnectionoptions is not specified, ssbdiagnose uses the connection information from baseconnectionoptions to connect to the initiator database. Wenn fromconnectionoptions angegeben ist, muss darin die Datenbank angegeben sein, die den Initiatordienst enthält.If fromconnectionoptions is specified it must include the database that contains the initiator service. Wenn fromconnectionoptions nicht angegeben wird, muss baseconnectionoptions die Initiatordatenbank angeben.If fromconnectionoptions is not specified, the baseconnectionoptions must specify the initiator database.

TO SERVICE Dienstname[, Broker-ID ]TO SERVICE service_name[, broker_id ]
Gibt den Dienst an, der das Ziel für die Konversationen darstellt.Specifies the service that is the target for the conversations.

Dienstname: Gibt den Namen des Zieldiensts an.service_name: specifies the name of the target service.

Broker-ID: Gibt die Service BrokerService Broker -ID für die Zieldatenbank an.broker_id: specifies the Service BrokerService Broker ID that identifies the target database. DieBroker-ID ist eine GUID.broker_id is a GUID. Sie können die folgende Abfrage in der Zieldatenbank ausführen, um diese zu finden:You can run the following query in the target database to find it:

SELECT service_broker_guid  
FROM sys.databases  
WHERE database_id = DB_ID();  

<Toconnectionoptions ><toconnectionoptions>
Gibt die Informationen an, die erforderlich sind, um eine Verbindung mit der Datenbank herzustellen, die den Zieldienst enthält.Specifies the information that is required to connect the database that holds the target service. Wenn toconnectionoptions nicht angegeben ist, verwendet ssbdiagnose die Verbindungsinformationen aus baseconnectionoptions , um eine Verbindung mit der Zieldatenbank herzustellen.If toconnectionoptions is not specified, ssbdiagnose uses the connection information from baseconnectionoptions to connect to the target database.

MIRRORMIRROR
Gibt an, dass der dazugehörige Service BrokerService Broker -Dienst in einer gespiegelten Datenbank gehostet wird.Specifies that the associated Service BrokerService Broker service is hosted in a mirrored database. ssbdiagnose überprüft, dass die Route zum Dienst eine gespiegelte Route ist, bei der MIRROR_ADDRESS für CREATE ROUTE angegeben wurde.ssbdiagnose verifies that the route to the service is a mirrored route, where MIRROR_ADDRESS was specified on CREATE ROUTE.

<Mirrorconnectionoptions ><mirrorconnectionoptions>
Gibt die Informationen an, die erforderlich sind, um eine Verbindung mit der Spiegeldatenbank herzustellen.Specifies the information that is required to connect to the mirror database. Wenn mirrorconnectionoptions nicht angegeben ist, verwendet ssbdiagnose die Verbindungsinformationen aus baseconnectionoptions , um eine Verbindung mit der Spiegeldatenbank herzustellen.If mirrorconnectionoptions is not specified, ssbdiagnose uses the connection information from baseconnectionoptions to connect to the mirror database.

ON CONTRACT VertragsnameON CONTRACT contract_name
Fordert an, dass ssbdiagnose nur Konfigurationen überprüft, die den angegebenen Vertrag verwenden.Requests that ssbdiagnose only check configurations that use the specified contract. Wenn ON CONTRACT nicht angegeben ist, berichtet ssbdiagnose über den Vertrag mit dem Namen DEFAULT.If ON CONTRACT is not specified, ssbdiagnose reports on the contract named DEFAULT.

ENCRYPTION { ON | OFF | ANONYMOUS }ENCRYPTION { ON | OFF | ANONYMOUS }
Fordert an, dass überprüft wird, ob der Dialog für die angegebene Ebene der Verschlüsselung ordnungsgemäß konfiguriert ist:Requests verification that the dialog is correctly configured for the specified level of encryption:

ON: Standardeinstellung.ON: Default setting. Vollständige Dialogsicherheit wird konfiguriert.Full dialog security is configured. Auf beiden Seiten des Dialogs wurden Zertifikate bereitgestellt, eine Remotedienstbindung ist vorhanden, und in der GRANT SEND-Anweisung für den Zieldienst wurde der Initiatorbenutzer angegeben.Certificates have been deployed on both sides of the dialog, a remote service binding is present, and the GRANT SEND statement for the target service specified the initiator user.

OFF: Es wird keine Dialogsicherheit konfiguriert.OFF: No dialog security is configured. Es wurden keine Zertifikate bereitgestellt, keine Remotedienstbindung erstellt, und in der GRANT SEND-Anweisung für den Initiatordienst wurde die public -Rolle angegeben.No certificates have been deployed, no remote service binding was created, and the GRANT SEND for the initiator service specified the public role.

ANONYMOUS: Die anonyme Dialogsicherheit wird konfiguriert.ANONYMOUS: Anonymous dialog security is configured. Ein Zertifikat wurde bereitgestellt, die Remotedienstbindung wurde in der ANONYMOUS-Klausel angegeben, und in der GRANT SEND-Anweisung für den Zieldienst wurde die public -Rolle angegeben.One certificate has been deployed, the remote service binding specified the anonymous clause, and the GRANT SEND for the target service specified the public role.

RUNTIMERUNTIME
Fordert einen Bericht über Probleme an, die Laufzeitfehler in einer Service BrokerService Broker -Konversation verursachen.Requests a report of issues that cause runtime errors for a Service BrokerService Broker conversation. Wenn weder -NEW noch -ID angegeben ist, überwacht ssbdiagnose alle Konversationen in allen in den Verbindungsoptionen angegebenen Datenbanken.If neither -NEW or -ID are specified, ssbdiagnose monitors all conversations in all databases specified in the connection options. Wenn -NEW oder -ID angegeben ist, erstellt ssbdiagnose eine Liste der in den Parametern angegebenen IDs.If -NEW or -ID are specified, ssbdiagnose builds a list of the IDs specified in the parameters.

Solange ssbdiagnose ausgeführt wird, werden alle SQL Server ProfilerSQL Server Profiler -Ereignisse aufgezeichnet, die Laufzeitfehler angeben.While ssbdiagnose is running, it records all SQL Server ProfilerSQL Server Profiler events that indicate runtime errors. Es werden die Ereignisse, die für die angegebenen IDs auftreten, sowie Ereignisse auf Systemebene aufgezeichnet.It records the events that occur for the specified IDs, plus system-level events. Wenn Laufzeitfehler auftreten, führt ssbdiagnose einen Konfigurationsbericht über die zugeordnete Konfiguration aus.If runtime errors are encountered, ssbdiagnose runs a configuration report on the associated configuration.

Standardmäßig werden keine Laufzeitfehler, sondern nur die Ergebnisse der Konfigurationsanalyse in den Ausgabebericht aufgenommen.By default, runtime errors are not included in the output report, only the results of the configuration analysis. Verwenden Sie -SHOWEVENTS , um die Laufzeitfehler in den Bericht aufzunehmen.Use -SHOWEVENTS to have the runtime errors included in the report.

-SHOWEVENTS-SHOWEVENTS
Gibt an, dass ssbdiagnose in einem RUNTIME-Bericht SQL Server ProfilerSQL Server Profiler -Ereignisse melden soll.Specifies that ssbdiagnose report SQL Server ProfilerSQL Server Profiler events during a RUNTIME report. Nur Ereignisse, die als Fehlerbedingungen erachtet werden, werden gemeldet.Only events that are considered error conditions are reported. Standardmäßig überwacht ssbdiagnose Fehlerereignisse nur, meldet sie jedoch in der Ausgabe nicht.By default, ssbdiagnose only monitors error events; it does not report them in the output.

-NEW-NEW
Fordert die Laufzeitüberwachung der ersten Konversation an, die beginnt, nachdem ssbdiagnose gestartet wurde.Requests runtime monitoring of the first conversation that begins after ssbdiagnose starts running.

-ID-ID
Fordert die Laufzeitüberwachung der angegebenen Konversationselemente an.Requests runtime monitoring of the specified conversation elements. Sie können -ID mehrmals angeben.You can specify -ID multiple times.

Wenn Sie ein Konversationshandle angeben, werden nur Ereignisse für den zugeordneten Konversationsendpunkt gemeldet.If you specify a conversation handle, only events associated with the associated conversation endpoint are reported. Wenn Sie eine Konversations-ID angeben, werden alle Ereignisse für diese Konversation sowie für deren Endpunkte für den Initiator und das Ziel gemeldet.If you specify a conversation ID, all events for that conversation and its initiator and target endpoints are reported. Wenn Sie eine Konversationsgruppen-ID angeben, werden alle Ereignisse für alle Konversationen und Endpunkte in der Konversationsgruppe gemeldet.If a conversation group ID is specified, all events for all conversations and endpoints in the conversation group are reported.

conversation_handleconversation_handle
Ein eindeutiger Bezeichner, der einen Konversationsendpunkt in einer Anwendung identifiziert.A unique identifier that identifies a conversation endpoint in an application. Konversationshandles sind für einen Endpunkt einer Konversation eindeutig, d. h., die Endpunkte für den Initiator und das Ziel weisen unterschiedliche Konversationshandles auf.Conversation handles are unique to one endpoint of a conversation, the initiator and target endpoints have separate conversation handles.

Konversationshandles werden durch den @dialog_handle -Parameter der BEGIN DIALOG -Anweisung und die Spalte conversation_handle im Resultset einer RECEIVE -Anweisung an Anwendungen zurückgegeben.Conversation handles are returned to applications by the @dialog_handle parameter of the BEGIN DIALOG statement, and the conversation_handle column in the result set of a RECEIVE statement.

Konversationshandles werden in der Spalte conversation_handle der Katalogsichten sys.transmission_queue und sys.conversation_endpoints gemeldet.Conversation handles are reported in the conversation_handle column of the sys.transmission_queue and sys.conversation_endpoints catalog views.

conversation_group_idconversation_group_id
Der eindeutige Bezeichner, der eine Konversationsgruppe identifiziert.The unique identifier that identifies a conversation group.

Konversationsgruppen-IDs werden durch den @conversation_group_id -Parameter der GET CONVERSATION GROUP -Anweisung und die Spalte conversation_group_id im Resultset einer RECEIVE -Anweisung an Anwendungen zurückgegeben.Conversation group IDs are returned to applications by the @conversation_group_id parameter of the GET CONVERSATION GROUP statement and the conversation_group_id column in the result set of a RECEIVE statement.

Konversationsgruppen-IDs werden in der Spalte conversation_group_id der Katalogsichten sys.conversation_groups und sys.conversation_endpoints gemeldet.Conversation group IDs are reported in the conversation_group_id columns of the sys.conversation_groups and sys.conversation_endpoints catalog views.

conversation_idconversation_id
Der eindeutige Bezeichner, der eine Konversation identifiziert.The unique identifier that identifies a conversation. Konversations-IDs sind für die Endpunkte für den Initiator und das Ziel einer Konversation identisch.Conversation IDs are the same for both the initiator and target endpoints of a conversation.

Konversations-IDs werden in der Spalte conversation_id der Katalogsicht und sys.conversation_endpoints gemeldet.Conversation IDs are reported in the conversation_id column of the sys.conversation_endpoints catalog view.

-TIMEOUT Timeoutintervall-TIMEOUT timeout_interval
Gibt die Anzahl der Sekunden für die Ausführung eines RUNTIME -Berichts an.Specifies the number of seconds for a RUNTIME report to run. Wenn -TIMEOUT nicht angegeben ist, wird der Laufzeitbericht ohne zeitliche Begrenzung ausgeführt.If -TIMEOUT is not specified the runtime report runs indefinitely. -TIMEOUT wird nur für RUNTIME -Berichte und nicht für CONFIGURATION -Berichte verwendet.-TIMEOUT is used only on RUNTIME reports, not CONFIGURATION reports. Mit STRG+C können Sie ssbdiagnose beenden, wenn -TIMEOUT nicht angegeben wurde, oder Sie können einen Laufzeitbericht vor Ablauf des Timeoutintervalls beenden.-Use ctrl + C to quit ssbdiagnose if -TIMEOUT was not specified or to end a runtime report before the time-out interval expires. DasTimeoutintervall muss eine Zahl zwischen 1 und 2.147.483.647 sein.timeout_interval must be a number between 1 and 2,147,483,647.

<Runtimeconnectionoptions ><runtimeconnectionoptions>
Gibt die Verbindungsinformationen für die Datenbanken an, in denen die den überwachten Konversationselementen zugeordneten Dienste enthalten sind.Specifies the connection information for the databases that contain the services associated with conversation elements being monitored. Wenn alle Dienste in der gleichen Datenbank enthalten sind, müssen Sie nur eine CONNECT TO -Klausel angeben.If all the services are in the same database, you only have to specify one CONNECT TO clause. Wenn sich die Dienste in unterschiedlichen Datenbanken befinden, müssen Sie für jede dieser Datenbanken eine CONNECT TO -Klausel angeben.If the services are in separate databases you must supply a CONNECT TO clause for each database. Wenn runtimeconnectionoptions nicht angegeben ist, verwendet ssbdiagnose die Verbindungsinformationen aus baseconnectionoptions.If runtimeconnectionoptions is not specified, ssbdiagnose uses the connection information from baseconnectionoptions.

–E–E
Öffnen Sie mithilfe der Windows-Authentifizierung eine Verbindung mit einer Instanz von DatenbankmodulDatabase Engine . Verwenden Sie dazu das aktuelle Windows-Konto als Anmelde-ID.Open a Windows Authentication connection to an instance of the DatenbankmodulDatabase Engine by using your current Windows account as the login ID. Die Anmeldung muss Mitglied der festen Serverrolle sysadmin sein.The login must be a member of the sysadmin fixed-server role.

Die Option "-E" ignoriert die Benutzer- und Kennworteinstellungen der Umgebungsvariablen SQLCMDUSER und SQLCMDPASSWORD.The -E option ignores the user and password settings of the SQLCMDUSER and SQLCMDPASSWORD environment variables.

Wenn weder -E noch -U angegeben ist, verwendet ssbdiagnose den Wert aus der Umgebungsvariablen SQLCMDUSER.If neither -E nor -U is specified, ssbdiagnose uses the value from the SQLCMDUSER environment variable. Wenn SQLCMDUSER auch nicht festgelegt ist, verwendet ssbdiagnose die Windows-Authentifizierung.If SQLCMDUSER is not set either, ssbdiagnose uses Windows Authentication.

Wird die Option -E zusammen mit der Option -U oder der Option -P verwendet, wird eine Fehlermeldung generiert.If the -E option is used together with the -U option or the -P option, an error message is generated.

-U Anmelde-ID-U login_id
Öffnen Sie mit der angegebenen Anmelde-ID eine Verbindung mit der SQL ServerSQL Server -Authentifizierung.Open a SQL ServerSQL Server Authentication connection by using the specified login ID. Die Anmeldung muss Mitglied der festen Serverrolle sysadmin sein.The login must be a member of the sysadmin fixed-server role.

Wenn weder -E noch -U angegeben ist, verwendet ssbdiagnose den Wert aus der Umgebungsvariablen SQLCMDUSER.If neither -E nor -U is specified, ssbdiagnose uses the value from the SQLCMDUSER environment variable. Wenn SQLCMDUSER auch nicht festgelegt ist, versucht ssbdiagnose , eine Verbindung unter Verwendung des Windows-Authentifizierungsmodus herzustellen. Dabei wird das Windows-Konto des Benutzers verwendet, der ssbdiagnoseausführt.If SQLCMDUSER is not set either, ssbdiagnose tries to connect by using Windows Authentication mode based on the Windows account of the user who is running ssbdiagnose.

Wird die Option -U zusammen mit der Option -E verwendet, wird eine Fehlermeldung generiert.If the -U option is used together with the -E option, an error message is generated. Werden nach der Option -U mehrere Argumente angegeben, wird eine Fehlermeldung generiert und das Programm beendet.If the –U option is followed by more than one argument, an error message is generated and the program exits.

-P Kennwort-P password
Gibt das Kennwort für die Anmelde-ID -U an.Specifies the password for the -U login ID. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case sensitive. Wenn die Option -U verwendet wird, nicht aber die Option -P , verwendet ssbdiagnose den Wert aus der Umgebungsvariablen SQLCMDPASSWORD.If the -U option is used and the -P option is not used, ssbdiagnose uses the value from the SQLCMDPASSWORD environment variable. Wenn SQLCMDPASSWORD auch nicht festgelegt ist, fordert ssbdiagnose den Benutzer zur Eingabe eines Kennworts auf.If SQLCMDPASSWORD is not set either, ssbdiagnose prompts the user for a password.

Wichtig

Wenn Sie einen SET SQLCMDPASSWORD-Befehl eingeben, kann das Kennwort von jeder Person gelesen werden, die auf den Bildschirm schauen kann.When you type a SET SQLCMDPASSWORD command, your password will be visible to anyone who can see your monitor.

Wenn die Option -P ohne Kennwort angegeben ist, verwendet ssbdiagnose das Standardkennwort (NULL).If the -P option is specified without a password ssbdiagnose uses the default password (NULL).

Wichtig

Verwenden Sie kein leeres Kennwort.Do not use a blank password. Verwenden Sie ein sicheres Kennwort.Use a strong password.Weitere Informationen finden Sie unter Strong Passwords. For more information, see Strong Passwords.

Die Aufforderung zur Eingabe des Kennworts wird folgendermaßen an der Konsole ausgegeben: Password:The password prompt is displayed by printing the password prompt to the console, as follows: Password:

Die Benutzereingabe bleibt verborgen,User input is hidden. d. h. es erfolgt keine Anzeige, und der Cursor bleibt an der Anfangsposition.This means that nothing is displayed and the cursor stays in position.

Wird die Option -P zusammen mit der Option -E verwendet, wird eine Fehlermeldung generiert.If the -P option is used with the -E option, an error message is generated.

Wird nach der Option -P mehr als ein Argument angegeben, wird eine Fehlermeldung generiert.If the -P option is followed by more than one argument, an error message is generated.

-S Servername[\Instanzname]-S server_name[\instance_name]
Gibt die Instanz von DatenbankmodulDatabase Engine an, die die zu analysierenden Service BrokerService Broker -Dienste enthält.Specifies the instance of the DatenbankmodulDatabase Engine that holds the Service BrokerService Broker services to be analyzed.

Geben Sie Servername an, um eine Verbindung mit der Standardinstanz von DatenbankmodulDatabase Engine auf diesem Server herzustellen.Specify server_name to connect to the default instance of the DatenbankmodulDatabase Engine on that server. Geben Sie Servername\Instanzname an, um eine Verbindung mit der Standardinstanz von DatenbankmodulDatabase Engine auf diesem Server herzustellen.Specify server_name\instance_name to connect to a named instance of the DatenbankmodulDatabase Engine on that server. Wenn -S nicht angegeben ist, verwendet ssbdiagnose den Wert der Umgebungsvariablen SQLCMDSERVER.If -S is not specified, ssbdiagnose uses the value of the SQLCMDSERVER environment variable. Wenn SQLCMDSERVER auch nicht festgelegt ist, stellt ssbdiagnose eine Verbindung mit der Standardinstanz von DatenbankmodulDatabase Engine auf dem lokalen Computer her.If SQLCMDSERVER is not set either, ssbdiagnose connects to the default instance of the DatenbankmodulDatabase Engine on the local computer.

-d Datenbankname-d database_name
Gibt die Datenbank an, die die zu analysierenden Service BrokerService Broker -Dienste enthält.Specifies the database that holds the Service BrokerService Broker services to be analyzed. Wenn die Datenbank nicht vorhanden ist, wird eine Fehlermeldung generiert.If the database does not exist, an error message is generated. Wenn -d nicht angegeben ist, wird standardmäßig die Datenbank verwendet, die in der Standarddatenbank-Eigenschaft Ihrer Anmeldung angegeben ist.If -d is not specified, the default is the database specified in the default-database property for your login.

-l Anmeldungstimeout-l login_timeout
Gibt die Anzahl von Sekunden an, die verstreichen, ehe für den Versuch einer Verbindung mit einem Server ein Timeout eintritt.Specifies the number of seconds before an attempt to connect to a server times out. Wenn -l nicht angegeben ist, verwendet ssbdiagnose den für die Umgebungsvariable SQLCMDLOGINTIMEOUT festgelegten Wert.If -l is not specified, ssbdiagnose uses the value set for the SQLCMDLOGINTIMEOUT environment variable. Wenn SQLCMDLOGINTIMEOUT auch nicht festgelegt ist, beträgt der Standardwert für das Timeout dreißig Sekunden.If SQLCMDLOGINTIMEOUT is not set either, the default time-out is thirty seconds. Der Timeoutwert für den Anmeldungszeitraum muss eine Zahl zwischen 0 und 65534 sein.The login time-out must be a number between 0 and 65534. Wenn der angegebene Wert kein numerischer Wert ist oder außerhalb dieses Bereichs liegt, generiert ssbdiagnose eine Fehlermeldung.If the value that is supplied is not numeric or does not fall into that range, ssbdiagnose generates an error message. Mit dem Wert 0 wird eine unbegrenzte Wartezeit festgelegt.A value of 0 specifies time-out to be infinite.

-?-?
Zeigt die Hilfe zur Befehlszeile an.Displays command line help.

HinweiseRemarks

Verwenden Sie ssbdiagnose , um folgende Aufgaben auszuführen:Use ssbdiagnose to do the following:

  • Bestätigen, dass in einer neu konfigurierten Service BrokerService Broker -Anwendung keine Konfigurationsfehler vorhanden sind.Confirm that there are no configuration errors in a newly configured Service BrokerService Broker application.

  • Bestätigen, dass keine Konfigurationsfehler vorhanden sind, nachdem Sie die Konfiguration einer vorhandenen Service BrokerService Broker -Anwendung geändert haben.Confirm that there are no configuration errors after changing the configuration of an existing Service BrokerService Broker application.

  • Bestätigen, dass keine Konfigurationsfehler vorhanden sind, nachdem eine Service BrokerService Broker -Datenbank getrennt und dann an eine neue Instanz von DatenbankmodulDatabase Engineangefügt wurde.Confirm that there are no configuration errors after a Service BrokerService Broker database is detached and then reattached to a new instance of the DatenbankmodulDatabase Engine.

  • Überprüfen, ob Konfigurationsfehler vorhanden sind, wenn Nachrichten nicht erfolgreich zwischen Diensten übertragen werden.Research whether there are configuration errors when messages are not successfully transmitted between services.

  • Abrufen eines Berichts über Fehler, die in einer Gruppe von Service BrokerService Broker -Konversationselementen auftreten.Get a report of any errors that occur in a set of Service BrokerService Broker conversation elements.

KonfigurationsberichteConfiguration Reporting

Führen Sie einen ssbdiagnose -Konfigurationsbericht aus, für den die gleichen Optionen wie für die Konversation verwendet werden, um die von einer Konversation verwendete Konfiguration ordnungsgemäß zu analysieren.To correctly analyze the configuration used by a conversation, run a ssbdiagnose configuration report that uses the same options that are used by the conversation. Wenn Sie für ssbdiagnose weniger Optionen angeben, als für die Konversation verwendet werden, meldet ssbdiagnose möglicherweise keine Bedingungen, die für die Konversation erforderlich sind.If you specify a lower level of options for ssbdiagnose than are used by the conversation, ssbdiagnose might not report conditions that are required by the conversation. Wenn Sie für ssbdiagnosemehr Optionen angeben, werden möglicherweise Elemente gemeldet, die für die Konversation nicht erforderlich sind.If you specify a higher level of options for ssbdiagnose, it might report items that are not required by the conversation. So kann z. B. eine Konversation zwischen zwei Diensten in der gleichen Datenbank mit ENCPRYPTION OFF ausgeführt werden.For example, a conversation between two services in the same database can be run with ENCPRYPTION OFF. Wenn Sie ssbdiagnose ausführen, um die Konfiguration zwischen den beiden Diensten zu überprüfen, dabei jedoch die Standardeinstellung ENCRYPTION ON verwenden, meldet ssbdiagnose , dass in der Datenbank ein Hauptschlüssel fehlt.If you run ssbdiagnose to validate the configuration between the two services, but use the default ENCRYPTION ON setting, ssbdiagnose reports that the database is missing a master key. Ein Hauptschlüssel ist für die Konversation nicht erforderlich.A master key is not required for the conversation.

Der ssbdiagnose -Konfigurationsbericht analysiert bei jeder Ausführung nur einen einzelnen Service BrokerService Broker -Dienst oder ein einzelnes Paar von Diensten.The ssbdiagnose configuration report analyzes only one Service BrokerService Broker service or a single pair of services every time it is run. Wenn mehrere Paare von Service BrokerService Broker -Diensten im Bericht berücksichtigt werden sollen, erstellen Sie eine CMD-Befehlsdatei, die ssbdiagnose mehrmals aufruft.To report on multiple pairs of Service BrokerService Broker services, build a .cmd command file that calls ssbdiagnose multiple times.

LaufzeitberichteRuntime Reporting

Wenn -RUNTIME angegeben ist, durchsucht ssbdiagnose alle in runtimeconnectionoptions und baseconnectionoptions angegebenen Datenbanken, um eine Liste der Service BrokerService Broker -IDs zu erstellen.When -RUNTIME is specified, ssbdiagnose searches all databases specified in runtimeconnectionoptions and baseconnectionoptions to build a list of Service BrokerService Broker IDs. Wie die vollständige Liste von IDs aussieht, hängt davon ab, was für - NEW und - ID angegeben wird:The full list of IDs built depends on what is specified for -NEW and -ID:

  • Wenn weder -NEW noch -ID angegeben ist, enthält die Liste alle Konversationen für alle in den Verbindungsoptionen angegebenen Datenbanken.If neither -NEW or -ID are specified, the list includes all conversations for all databases specified in the connection options.

  • Wenn -NEW angegeben ist, schließt ssbdiagnose die Elemente für die erste Konversation ein, die gestartet wird, nachdem ssbdiagnose gestartet wurde.If -NEW is specified, ssbdiagnose includes the elements for the first conversation that starts after ssbdiagnose is run. Hierzu zählen die Konversations-ID und die Konversationshandles für die Konversationsendpunkte für den Initiator und das Ziel.This includes the conversation ID and the conversation handles for both the target and initiator conversation endpoints.

  • Wenn -ID mit einem Konversationshandle angegeben ist, wird nur dieses Handle in die Liste aufgenommen.If -ID is specified with a conversation handle, only that handle is included in the list.

  • Wenn -ID mit einer Konversations-ID angegeben ist, werden die Konversations-ID und die Handles für beide Konversationsendpunkte der Liste hinzugefügt.If -ID is specified with a conversation ID, the conversation ID and the handles for both of its conversation endpoints are added to the list.

  • Wenn -ID mit einer Konversationsgruppen-ID angegeben ist, werden alle in der Gruppe enthaltenen Konversations-IDs und Konversationshandles der Liste hinzugefügt.If -ID is specified with a conversation group ID, all the conversation IDs and conversation handles in that group are added to the list.

    Die Liste enthält keine Elemente aus Datenbanken, die in den Verbindungsoptionen nicht angegeben wurden.The list does not include elements from databases that are not covered by the connection options. Beispiel: Angenommen, Sie verwenden -ID , um eine Konversations-ID anzugeben, geben jedoch nur für die Initiatordatenbank eine runtimeconnectionoptions -Klausel an, nicht für die Zieldatenbank.For example, assume that you use -ID to specify a conversation ID, but only provide a runtimeconnectionoptions clause for the initiator database and not the target database. ssbdiagnose schließt das Zielkonversationshandle in diesem Fall nicht in die Liste der IDs ein, sondern nur die Konversations-ID und das Initiatorkonversationshandle.ssbdiagnose will not include the target conversation handle in its list of IDs, only the conversation ID and the initiator conversation handle.

    ssbdiagnose überwacht die SQL Server ProfilerSQL Server Profiler -Ereignisse in den von runtimeconnectionoptions und baseconnectionoptionsabgedeckten Datenbanken.ssbdiagnose monitors the SQL Server ProfilerSQL Server Profiler events from the databases covered by runtimeconnectionoptions and baseconnectionoptions. Das Hilfsprogramm sucht Service BrokerService Broker -Ereignisse, die angeben, dass von einer oder mehreren der Service BrokerService Broker -IDs in der Laufzeitliste ein Fehler gefunden wurde.It searches for Service BrokerService Broker events that indicate an error was encountered by one or more of the Service BrokerService Broker IDs in the runtime list. ssbdiagnose sucht auch nach Service BrokerService Broker -Fehlerereignissen auf Systemebene, die nicht explizit mit einer bestimmten Konversationsgruppe verknüpft sind.ssbdiagnose also searches for system-level Service BrokerService Broker error events not specifically associated with any conversation group.

    Wenn ssbdiagnose Konversationsfehler feststellt, versucht das Hilfsprogramm, die Ursache der Ereignisse zurückzugeben, indem zusätzlich ein Konfigurationsbericht ausgeführt wird.If ssbdiagnose finds conversation errors, the utility will attempt to report on the root cause of the events by also running a configuration report. ssbdiagnose ermittelt anhand der Metadaten in den Datenbanken die von der Konversation verwendeten Instanzen, Service BrokerService Broker -IDs, Datenbanken, Dienste und Verträge.ssbdiagnose uses the metadata in the databases to try to determine the instances, Service BrokerService Broker IDs, databases, services, and contracts used by the conversation. Anschließend wird ein Konfigurationsbericht mit allen verfügbaren Informationen ausgeführt.It then runs a configuration report using all available information.

    Standardmäßig meldet ssbdiagnose keine Fehlerereignisse.By default, ssbdiagnose does not report error events. Es werden nur die während der Konfigurationsüberprüfung gefundenen eigentlichen Probleme gemeldet.It only reports the underlying issues found during the configuration check. Dadurch wird die Menge gemeldeter Informationen minimiert, und Sie können sich besser auf die eigentlichen Konfigurationsprobleme konzentrieren.This minimizes the amount of information reported and helps you focus on the underlying configuration issues. Sie können -SHOWEVENTS angeben, um die von ssbdiagnosegefundenen Fehlerereignisse anzuzeigen.You can specify -SHOWEVENTS to see the error events encountered by ssbdiagnose.

Von "ssbdiagnose" gemeldete ProblemeIssues Reported by ssbdiagnose

ssbdiagnose meldet drei Klassen von Problemen.ssbdiagnose reports three classes of issues. In der XML-Ausgabedatei wird jede Klasse von Problemen als gesonderter Typ des Issue-Elements gemeldet.In the XML output file, each class of issue is reported as a separate type of the Issue element. Folgende drei Typen von Problemen werden von ssbdiagnose gemeldet:The three types of issues reported by ssbdiagnose are as follows:

DiagnosisDiagnosis
Meldet ein Konfigurationsproblem.Reports a configuration issue. Hierunter fallen Probleme, die entweder bei der Ausführung eines CONFIGURATION -Berichts oder in der Konfigurationsphase eines RUNTIME -Berichts gefunden werden.This includes issues found either a CONFIGURATION report is running, or during the configuration phase of a RUNTIME report. ssbdiagnose meldet jedes Konfigurationsproblem nur einmal.ssbdiagnose reports each configuration issue one time.

EreignisEvent
Meldet ein SQL Server ProfilerSQL Server Profiler -Ereignis, das auf ein Problem bei einer überwachten Konversation während eines RUNTIME -Berichts hindeutet.Reports a SQL Server ProfilerSQL Server Profiler event that indicates a problem was encountered by a conversation being monitored during a RUNTIME report. ssbdiagnose meldet jedes generierte Ereignis.ssbdiagnose reports events every time they are generated. Ereignisse können mehrmals gemeldet werden, wenn das Problem in mehreren Konversationen auftritt.Events can be reported multiple times if several conversations encounter the problem.

ProblemProblem
Meldet ein Problem, das ssbdiagnose daran hindert, eine Konfigurationsanalyse abzuschließen oder Konversationen zu überwachen.Reports an issue that is preventing ssbdiagnose from completing a configuration analysis or from monitoring conversations.

Umgebungsvariablen von "sqlcmd"sqlcmd Environment Variables

Das Hilfsprogramm ssbdiagnose unterstützt die Umgebungsvariablen SQLCMDSERVER, SQLCMDUSER, SQLCMDPASSWORD und SQLCMDLOGINTIMOUT, die auch von dem Hilfsprogramm sqlcmd verwendet werden.The ssbdiagnose utility supports the SQLCMDSERVER, SQLCMDUSER, SQLCMDPASSWORD, and SQLCMDLOGINTIMOUT environment variables that are also used by the sqlcmd utility. Sie können zum Festlegen der Umgebungsvariablen entweder den SET-Befehl an der Eingabeaufforderung oder den setvar -Befehl in Transact-SQLTransact-SQL -Skripts verwenden, die Sie mit sqlcmdausführen.You can set the environment variables either by using the command prompt SET command, or by using the setvar command in Transact-SQLTransact-SQL scripts that you run by using sqlcmd. Weitere Informationen zum Verwenden von setvar in sqlcmdfinden Sie unter Verwenden von sqlcmd mit Skriptvariablen.For more information about how to use setvar in sqlcmd, see Use sqlcmd with Scripting Variables.

BerechtigungenPermissions

In jeder connectionoptions -Klausel muss der mit -E oder -U angegebene Anmeldename Mitglied der festen Serverrolle sysadmin in der in -Sangegebenen Instanz sein.In each connectionoptions clause, the login specified with either -E or -U must be a member of the sysadmin fixed-server role in the instance specified in -S.

BeispieleExamples

Dieser Abschnitt enthält Beispiele für die Verwendung von ssbdiagnose an einer Eingabeaufforderung.This section contains examples of using ssbdiagnose at a command prompt.

A.A. Überprüfen der Konfiguration von zwei Diensten in der gleichen DatenbankChecking the Configuration of Two Services in the Same Database

Im folgenden Beispiel wird gezeigt, wie ein Konfigurationsbericht angefordert wird, wenn folgende Bedingungen erfüllt sind:The following example shows how to request a configuration report when the following are true;

  • Der Initiator- und der Zieldienst befinden sich in der gleichen Datenbank.The initiator and target service are in the same database.

  • Die Datenbank befindet sich in der Standardinstanz von DatenbankmodulDatabase Engine.The database is in the default instance of the DatenbankmodulDatabase Engine.

  • Die Instanz befindet sich auf dem Computer, auf dem ssbdiagnose ausgeführt wird.The instances is on the same computer on which ssbdiagnose is run.

    Das Hilfsprogramm ssbdiagnose meldet die Konfiguration, die den DEFAULT-Vertrag verwendet, weil ON CONTRACT nicht angegeben ist.The ssbdiagnose utility reports the configuration that uses the DEFAULT contract because ON CONTRACT is not specified.

ssbdiagnose -E -d MyDatabase CONFIGURATION FROM SERVICE /test/initiator TO SERVICE /test/target  

B.B. Überprüfen der Konfiguration von zwei Diensten auf unterschiedlichen Computern, die einen Anmeldenamen verwendenChecking the Configuration of Two Services on Separate Computers That Use One Login

Das folgende Beispiel zeigt, wie ein Konfigurationsbericht angefordert wird, wenn sich der Initiator- und der Zieldienst auf unterschiedlichen Computern befinden, der Zugriff auf diese jedoch mit dem gleichen Anmeldenamen für die Windows-Authentifizierung erfolgt.The following example shows how to request a configuration report when the initiator and target service are on separate computers, but can be accessed by using the same Windows Authentication login.

ssbdiagnose -E CONFIGURATION FROM SERVICE /text/initiator -S InitiatorComputer -d InitiatorDatabase TO SERVICE /test/target -S TargetComputer -d TargetDatabase ON CONTRACT TestContract  

C.C. Überprüfen der Konfiguration von zwei Diensten auf unterschiedlichen Computern, die unterschiedliche Anmeldenamen verwendenChecking the Configuration of Two Services on Separate Computers That Use Separate Logins

Das folgende Beispiel zeigt, wie ein Konfigurationsbericht angefordert wird, wenn sich der Initiator- und der Zieldienst auf unterschiedlichen Computern befinden und für jede Instanz von SQL ServerSQL Server ein separater Anmeldename für die DatenbankmodulDatabase Engine-Authentifizierung erforderlich ist.The following example shows how to request a configuration report when the initiator and target service are on separate computers, and separate SQL ServerSQL Server Authentication logins are required for each instance of the DatenbankmodulDatabase Engine.

ssbdiagnose CONFIGURATION FROM SERVICE /text/initiator   
-S InitiatorComputer -U InitiatorLogin -p !wEx23Dvb   
-d InitiatorDatabase TO SERVICE /test/target -S TargetComputer   
-U TargetLogin -p ER!49jiy -d TargetDatabase ON CONTRACT TestContract  

D.D. Überprüfen der Konfigurationen gespiegelter Dienste auf separaten Computern mit anonymer VerschlüsselungChecking Mirrored Service Configurations on Separate Computers With Anonymous Encryption

Das folgende Beispiel zeigt, wie ein Konfigurationsbericht angefordert wird, wenn sich der Initiator- und der Zieldienst auf unterschiedlichen Computern befinden und der Initiator auf eine benannte Instanz gespiegelt ist.The following example shows how to request a configuration report when the initiator and target service are on separate computers and the initiator is mirrored to a named instance. Mit dem Bericht wird auch überprüft, ob die Dienste für die anonyme Verschlüsselung konfiguriert sind.The report also verifies that the services are configured to use anonymous encryption.

ssbdiagnose -E CONFIGURATION FROM SERVICE /text/initiator   
-S InitiatorComputer -d InitiatorDatabase MIRROR   
-S MirrorComputer/MirrorInstance TO SERVICE /test/target   
-S TargetComputer -d TargetDatabase ON CONTRACT TestContract ENCRYPTION ANONYMOUS  

E.E. Überprüfen der Konfiguration von zwei VerträgenChecking the Configuration of Two Contracts

Im folgenden Beispiel wird gezeigt, wie eine Befehlsdatei erstellt wird, mit der Konfigurationsberichte angefordert werden, wenn folgende Bedingungen erfüllt sind:The following example shows how to build a command file that requests configuration reports when the following are true:

  • Der Initiator- und der Zieldienst befinden sich in der gleichen Datenbank.The initiator and target service are in the same database.

  • Die Datenbank befindet sich in der Standardinstanz von DatenbankmodulDatabase Engine.The database is in the default instance of the DatenbankmodulDatabase Engine.

  • Die Instanz befindet sich auf dem Computer, auf dem ssbdiagnose ausgeführt wird.The instance is on the same computer on which ssbdiagnose is run.

    Bei jeder Ausführung von ssbdiagnose wird die Konfiguration für einen anderen Vertrag zwischen den gleichen Diensten gemeldet.Each time ssbdiagnose is run it reports the configuration for a different contract between the same services.

ssbdiagnose -E -d MyDatabase CONFIGURATION FROM SERVICE   
/test/initiator TO SERVICE /test/target ON CONTRACT PayRaiseContract  
ssbdiagnose -E -d MyDatabase CONFIGURATION FROM SERVICE /test/initiator   
TO SERVICE /test/target ON CONTRACT PromotionContract  

F.F. Überwachen des Status einer bestimmten Konversation auf dem lokalen Computer mit einem TimeoutMonitor the status of a specific conversation on the local computer with a time out

Das folgende Beispiel zeigt, wie eine bestimmte Konversation überwacht wird, wenn sich der Initiator- und der Zieldienst in der gleichen Datenbank in der Standardinstanz auf dem gleichen Computer befinden, auf dem auch ssbdiagnoseausgeführt wird.The following example shows how to monitor a specific conversation where the initiator and target services are in the same database in the default instance of the same computer that is running ssbdiagnose. Das Timeoutintervall ist auf 20 Sekunden festgelegt.The time-out interval is set to 20 seconds.

ssbdiagnose -E -d TestDatabase RUNTIME -ID D68D77A9-B1CF-41BF-A5CE-279ABCAB140D -TIMEOUT 20  

G.G. Überwachen des Status einer Konversation, die zwei Computer umfasstMonitor the status of a conversation that spans two computers

Das folgende Beispiel zeigt, wie eine bestimmte Konversation überwacht wird, wenn sich der Initiator- und der Zieldienst auf unterschiedlichen Computern befinden.The following example shows how to monitor a specific conversation where the initiator and target services are on separate computers.

ssbdiagnose RUNTIME -ID D68D77A9-B1CF-41BF-A5CE-279ABCAB140D   
-TIMEOUT 10 CONNECT TO -E -S InitiatorComputer/InitiatorInstance   
-d InitiatorDatabase CONNECT TO -E -S TargetComputer/TargetInstance   
-d TargetDatabase  

H.H. Überwachen des Status einer Konversation in zwei Datenbanken in der gleichen InstanzMonitor the status of a conversation in two databases in the same instance

Das folgende Beispiel zeigt, wie eine bestimmte Konversation überwacht wird, wenn sich der Initiator- und der Zieldienst in unterschiedlichen Datenbanken in der gleichen Instanz von DatenbankmodulDatabase Enginebefinden.The following example shows how to monitor a specific conversation where the initiator and target services are in separate databases in the same instance of the DatenbankmodulDatabase Engine. In diesem Beispiel wird baseconnectionoptions verwendet, um die Instanz und die Anmeldeinformationen anzugeben, und es werden zwei CONNECT TO-Klauseln zum Angeben der Datenbanken verwendet.The example uses the baseconnectionoptions to specify the instance and login information, and two CONNECT TO clauses to specify the databases. -SHOWEVENTS wird angegeben, damit alle Laufzeitereignisse in der Berichtsausgabe enthalten sind.-SHOWEVENTS is specified so that all runtime events are included in the report output.

ssbdiagnose -E -S TestComputer/DevTestInstance RUNTIME -SHOWEVENTS   
-ID 5094d4a7-e38c-4c37-da37-1d58b1cb8455 -TIMEOUT 10 CONNECT TO   
-d InitiatorDatabase CONNECT TO -d TargetDatabase  

I.I. Überwachen des Status von zwei Konversationen zwischen zwei DatenbankenMonitor the status of two conversations between two databases

Das folgende Beispiel zeigt, wie zwei Konversationen überwacht wenn, bei denen sich der Initiator- und der Zieldienst in unterschiedlichen Datenbanken in der gleichen Instanz von DatenbankmodulDatabase Enginebefinden.The following example shows how to monitor two conversations where the initiator and target services are in separate databases in the same instance of the DatenbankmodulDatabase Engine. In diesem Beispiel wird baseconnectionoptions verwendet, um die Instanz und die Anmeldeinformationen anzugeben, und es werden zwei CONNECT TO-Klauseln zum Angeben der Datenbanken verwendet.The example uses the baseconnectionoptions to specify the instance and login information, and two CONNECT TO clauses to specify the databases.

ssbdiagnose -E -S TestComputer/DevTestInstance RUNTIME   
-ID 5094d4a7-e38c-4c37-da37-1d58b1cb8455   
-ID 9b293be9-226b-4e22-e169-1d2c2c15be86 -TIMEOUT 10 CONNECT TO   
-d InitiatorDatabase CONNECT TO -d TargetDatabase  

J.J. Überwachen des Status aller Konversationen zwischen zwei DatenbankenMonitor the status of all conversations between two databases

Das folgende Beispiel zeigt, wie alle Konversationen zwischen zwei Datenbanken in der gleichen Instanz von DatenbankmodulDatabase Engineüberwacht werdenThe following example shows how to monitor all the conversation between two databases in the same instance of the DatenbankmodulDatabase Engine. In diesem Beispiel wird baseconnectionoptions verwendet, um die Instanz und die Anmeldeinformationen anzugeben, und es werden zwei CONNECT TO-Klauseln zum Angeben der Datenbanken verwendet.The example uses the baseconnectionoptions to specify the instance and login information, and two CONNECT TO clauses to specify the databases.

ssbdiagnose -E -S TestComputer/DevTestInstance RUNTIME   
-TIMEOUT 10 CONNECT TO -d InitiatorDatabase CONNECT TO   
-d TargetDatabase  

K.K. Ignorieren bestimmter FehlerIgnore Specific Errors

Das folgende Beispiel zeigt, wie bekannte Fehler (303 und 304) in der aktuellen Konfiguration der Aktivierung in einem Testsystem ignoriert werden.The following example shows how to ignore known errors (303 and 304) in how activation is currently configured in a test system.

ssbdiagnose -IGNORE 303 -IGNORE 304 -E -d TestDatabase   
CONFIGURATION FROM SERVICE /test/initiator TO SERVICE /test/target   
ON CONTRACT TextContract  

L.L. Umleiten der XML-Ausgabe von ssbdiagnoseRedirecting ssbdiagnose XML Output

Das folgende Beispiel zeigt, wie die Anforderung erstellt wird, dass die Ausgabe von ssbdiagnose als XML-Datei generiert werden soll, die in eine Datei umgeleitet wird.The following example shows how to request that ssbdiagnose generate its output as an XML file that is redirected to a file. Die Datei „TestDiag.xml“ kann dann von einer Anwendung geöffnet werden, um ssbdiagnose -XML-Dateien zu analysieren oder zu melden.The TestDiag.xml file can then be opened by an application to analyze or report ssbdiagnose XML files. Die Anzeige ist auch in einem allgemeinen XML-Editor wie XML Editor möglich.Or, you can view it from a general XML editor such as XML Notepad.

ssbdiagnose -XML -E -d MyDatabase CONFIGURATION FROM SERVICE   
/test/initiator TO SERVICE /test/target > c:\MyDiagnostics\TestDiag.xml  

M.M. Verwenden einer UmgebungsvariablenUsing an Environment Variable

Im folgenden Beispiel wird zunächst die SQLCMDSERVER-Umgebungsvariable für den Servernamen festgelegt, und anschließend wird ssbdiagnose ohne Angabe von -Sausgeführt.The following example first sets the SQLCMDSERVER environment variable to hold the server name, and then runs ssbdiagnose without specifying -S.

SET SQLCMDSERVER=MyComputer  
ssbdiagnose -XML -E -d MyDatabase CONFIGURATION FROM SERVICE   
/test/initiator TO SERVICE /test/target  

Siehe auchSee Also

SQL Server Service Broker SQL Server Service Broker
BEGIN DIALOG CONVERSATION ( Transact-SQL ) BEGIN DIALOG CONVERSATION (Transact-SQL)
Erstellen Sie die BROKERPRIORITÄT ( Transact-SQL ) CREATE BROKER PRIORITY (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL) CREATE CERTIFICATE (Transact-SQL)
Erstellen Sie Vertrag ( Transact-SQL ) CREATE CONTRACT (Transact-SQL)
CREATE ENDPOINT (Transact-SQL) CREATE ENDPOINT (Transact-SQL)
CREATE MASTER KEY (Transact-SQL) CREATE MASTER KEY (Transact-SQL)
Erstellen Sie NACHRICHTENTYP ( Transact-SQL ) CREATE MESSAGE TYPE (Transact-SQL)
CREATE QUEUE (Transact-SQL) CREATE QUEUE (Transact-SQL)
CREATE REMOTE SERVICE BINDING (Transact-SQL) CREATE REMOTE SERVICE BINDING (Transact-SQL)
CREATE ROUTE (Transact-SQL) CREATE ROUTE (Transact-SQL)
CREATE SERVICE (Transact-SQL) CREATE SERVICE (Transact-SQL)
Empfangen von ( Transact-SQL ) RECEIVE (Transact-SQL)
Sys. transmission_queue ( Transact-SQL ) sys.transmission_queue (Transact-SQL)
Sys. conversation_endpoints ( Transact-SQL ) sys.conversation_endpoints (Transact-SQL)
Sys. conversation_groups ( Transact-SQL )sys.conversation_groups (Transact-SQL)