Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Managed Instance
Verktyget ssbdiagnose rapporterar problem i Service Broker-konversationer eller konfigurationen av Service Broker-tjänster. Konfigurationskontroller kan göras för antingen två tjänster eller en enda tjänst. Problem rapporteras antingen i kommandotolken som text som kan läsas av människor eller som formaterad XML som kan omdirigeras till en fil eller ett annat program.
Syntax
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 ]
[ -N encryption_option ]
[ -i hostname_in_certificate ]
[ -C ]
Kommandoradsalternativ
-XML
Anger att ssbdiagnose-utdata genereras som formaterad XML. Dessa utdata kan omdirigeras till en fil eller till ett annat program. Om -XML inte anges formateras ssbdiagnose-utdata som text som kan läsas av människor.
-LEVEL { ERROR | VARNING | INFO }
Anger nivån på meddelanden som ska rapporteras.
| Värde | Beskrivning |
|---|---|
ERROR |
Rapportera endast felmeddelanden. |
WARNING (standardinställning) |
Rapportera fel- och varningsmeddelanden. |
INFO |
Rapportera fel, varningsmeddelanden och informationsmeddelanden. |
-IGNORERA error_id
Anger att fel eller meddelanden som har den angivna error_id inte tas med i rapporter. Du kan ange -IGNORE flera gånger för att utelämna flera meddelande-ID:t.
<basanslutningsalternativ>
Anger basanslutningsinformationen som används av ssbdiagnose när anslutningsalternativ inte ingår i en specifik sats. Anslutningsinformationen som anges i en specifik sats åsidosätter baseconnectionoption informationen. Detta utförs separat för varje parameter. Om till exempel både -S och -d anges i baseconnectionoptions, och endast -d anges i toconnectionoptions, använder -S från baseconnectionoptions och -d från toconnectionoptions.
KONFIGURATION
Begär en rapport över konfigurationsfel mellan ett par Service Broker-tjänster eller för en enda tjänst.
FRÅN TJÄNST service_name
Anger den tjänst som initierar konversationer.
<frånanslutningsalternativ>
Anger den information som krävs för att ansluta till databasen som innehåller initierartjänsten. Om fromconnectionoptions inte anges använder ssbdiagnose anslutningsinformationen från baseconnectionoptions för att ansluta till initierardatabasen. Om fromconnectionoptions anges måste den innehålla databasen som innehåller initierartjänsten. Om fromconnectionoptions inte anges, måste baseconnectionoptions specificera initierardatabasen.
TO SERVICE service_name [ , broker_id ]
Anger den tjänst som är målet för konversationerna.
service_name: anger namnet på måltjänsten.
broker_id: anger service broker-ID:t som identifierar måldatabasen. broker_id är en GUID. Du kan köra följande fråga i måldatabasen för att hitta den:
SELECT service_broker_guid
FROM sys.databases
WHERE database_id = DB_ID();
<anslutningsalternativ>
Anger den information som krävs för att ansluta databasen som innehåller måltjänsten. Om toconnectionoptions inte anges använder ssbdiagnose anslutningsinformationen från baseconnectionoptions för att ansluta till måldatabasen.
SPEGEL
Anger att den associerade Service Broker-tjänsten finns i en speglad databas.
ssbdiagnose verifierar att vägen till tjänsten är en speglad väg, där MIRROR_ADDRESS angavs på CREATE ROUTE.
<alternativ för speglingsanslutning>
Anger den information som krävs för att ansluta till speglingsdatabasen. Om mirrorconnectionoptions inte anges använder ssbdiagnose anslutningsinformationen från baseconnectionoptions för att ansluta till speglingsdatabasen.
PÅ KONTRAKT contract_name
Begäranden som ssbdiagnose kontrollerar endast konfigurationer som använder det angivna kontraktet. Om ON CONTRACT inte har angetts, rapporterar ssbdiagnose på kontraktet med namnet DEFAULT.
KRYPTERING { PÅ | AV | ANONYM }
Begär verifiering av att dialogrutan är korrekt konfigurerad för den angivna krypteringsnivån:
ON:Standardinställningen. Fullständig dialogsäkerhet har konfigurerats. Certifikat har distribuerats på båda sidor av dialogrutan, en fjärrtjänstbindning finns och instruktionenGRANT SENDför måltjänsten har angett initierarens användare.OFF: Ingen dialogsäkerhet har konfigurerats. Inga certifikat har distribuerats, ingen fjärrtjänstbindning har skapats ochGRANT SENDför initierartjänsten angavs den offentliga rollen.ANONYMOUS: Anonym dialogsäkerhet har konfigurerats. Ett certifikat har distribuerats, fjärrtjänstbindningen angav det anonyma villkoret ochGRANT SENDför måltjänsten angavs rollen offentlig.
Körtid
Begär en rapport över problem som orsakar körningsfel för en Service Broker-konversation. Om varken -NEW eller -ID anges, övervakar ssbdiagnose alla konversationer i alla databaser som anges i anslutningsalternativen. Om -NEW eller -ID anges skapar ssbdiagnose en lista över de ID:er som anges i parametrarna.
Medan ssbdiagnose körs registrerar den alla SQL Server Profiler-händelser som indikerar körningsfel. Den registrerar de händelser som inträffar för de angivna ID:na plus händelser på systemnivå. Om körningsfel påträffas kör ssbdiagnose en konfigurationsrapport om den associerade konfigurationen.
Som standard ingår inte körningsfel i utdatarapporten, bara resultatet av konfigurationsanalysen. Använd -SHOWEVENTS för att inkludera körningsfelen i rapporten.
-SHOWEVENTS
Anger att ssbdiagnose rapporterar SQL Server Profiler-händelser under en RUNTIME rapport. Endast händelser som anses vara feltillstånd rapporteras. Som standard övervakar ssbdiagnose endast felhändelser. den rapporterar dem inte i utdata.
-
-NEW: Begär driftövervakning av den första konversationen som börjar när ssbdiagnose körs. -
-ID: Begär körningsövervakning av de angivna konversationselementen. Du kan ange-IDflera gånger.
Om du anger ett konversationshandtag rapporteras endast händelser som är associerade med den associerade konversationsslutpunkten. Om du anger ett konversations-ID rapporteras alla händelser för konversationen och dess initierare och målslutpunkter. Om ett konversationsgrupp-ID anges rapporteras alla händelser för alla konversationer och slutpunkter i konversationsgruppen.
conversation_handle
En unik identifierare som identifierar en konversationsslutpunkt i ett program. Konversationshandtag är unika för en slutpunkt i en konversation, initieraren och målslutpunkten har separata konversationshandtag.
Konversationshandtag returneras till applikationer av parametern @dialog_handle i BEGIN DIALOG-instruktionen, och av conversation_handle-kolumnen i resultatuppsättningen för en RECEIVE-instruktion.
Konversationshandtag rapporteras i conversation_handle-kolumnen i katalogvyerna sys.transmission_queue och sys.conversation_endpoints.
conversation_group_id
Den unika identifierare som identifierar en konversationsgrupp.
Konversationsgrupp-ID returneras till applikationer med parametern @conversation_group_id i GET CONVERSATION GROUP-instruktionen och conversation_group_id-kolumnen i resultatuppsättningen för en RECEIVE-instruktion.
Konversationsgrupps-ID:t rapporteras i kolumnerna conversation_group_id i katalogvyerna sys.conversation_groups och sys.conversation_endpoints .
conversation_id
Den unika identifierare som identifierar en konversation. Konversations-ID:t är desamma för både initieraren och målslutpunkterna för en konversation.
Konversations-ID:n rapporteras i conversation_id-kolumnen i sys.conversation_endpoints-katalogvyn.
-TIMEOUT timeout_interval
Anger hur många sekunder en RUNTIME rapport ska köras. Om -TIMEOUT inte anges körs körningsrapporten på obestämd tid.
-TIMEOUT används endast i RUNTIME rapporter, inte CONFIGURATION rapporter. Använd ctrl + C för att avsluta ssbdiagnose om -TIMEOUT inte angavs eller för att avsluta en körrapport innan tidsgränsen går ut.
timeout_interval måste vara ett tal mellan 1 och 2 147 483 647.
<alternativ för körningstidanslutning>
Anger anslutningsinformationen för de databaser som innehåller de tjänster som är associerade med konversationselement som övervakas. Om alla tjänster finns i samma databas behöver du bara ange en CONNECT TO sats. Om tjänsterna finns i separata databaser måste du ange en CONNECT TO sats för varje databas. Om runtimeconnectionoptions inte anges använder ssbdiagnose anslutningsinformationen från baseconnectionoptions.
-E
Öppna en Windows-autentiseringsanslutning till en instans av databasmotorn med ditt aktuella Windows-konto som inloggnings-ID. Inloggningen måste vara medlem i den fasta serverrollen sysadmin.
Alternativet -E ignorerar användar- och lösenordsinställningarna för SQLCMDUSER miljövariablerna och SQLCMDPASSWORD .
Om antingen -E eller -U inte anges använder ssbdiagnose värdet från SQLCMDUSER miljövariabeln. Om SQLCMDUSER inte har angetts använder ssbdiagnose Windows-autentisering.
Om alternativet -E används tillsammans med alternativet -U eller alternativet -P genereras ett felmeddelande.
-U login_id
Öppna en SQL Server-autentiseringsanslutning med det angivna inloggnings-ID:t. Inloggningen måste vara medlem i den fasta serverrollen sysadmin.
Om varken -E eller -U anges använder ssbdiagnose värdet från miljövariabeln SQLCMDUSER. Om SQLCMDUSER inte heller har angetts försöker ssbdiagnose ansluta med hjälp av Windows-autentiseringsläge baserat på Windows-kontot för användaren som kör ssbdiagnose.
Om alternativet -U används tillsammans med alternativet -E genereras ett felmeddelande. Om alternativet -U följs av fler än ett argument genereras ett felmeddelande och programmet avslutas.
-P lösenord
Anger lösenordet för -U inloggnings-ID:t. Lösenord är skiftlägeskänsliga. Om alternativet -U används och -P alternativet inte används använder ssbdiagnose värdet från SQLCMDPASSWORD miljövariabeln. Om SQLCMDPASSWORD inte heller har angetts uppmanar ssbdiagnose användaren att ange ett lösenord.
Försiktighet
När du skriver ett SET SQLCMDPASSWORD kommando visas lösenordet för alla som kan se din skärm.
Om alternativet -P anges utan lösenord använder ssbdiagnose standardlösenordet (NULL).
Viktigt!
Använd inte ett tomt lösenord. Använd ett starkt lösenord. Mer information finns i Starka lösenord.
Lösenordsprompten visas genom att skriva ut lösenordsprompten till konsolen på följande sätt: Password:
Användarindata är dolda. Det innebär att ingenting visas och markören förblir på plats.
Om alternativet -P används med alternativet -E genereras ett felmeddelande.
Om alternativet -P följs av fler än ett argument genereras ett felmeddelande.
-S server_name[\instance_name]
Anger instansen av databasmotorn som innehåller de Service Broker-tjänster som ska analyseras.
Ange server_name för att ansluta till standardinstansen av databasmotorn på servern. Ange <server_name>\<instance_name> för att ansluta till en namngiven instans av databasmotorn på servern. Om -S inte anges använder ssbdiagnose värdet för SQLCMDSERVER miljövariabeln. Om SQLCMDSERVER inte heller anges ansluter ssbdiagnose till standardinstansen av databasmotorn på den lokala datorn.
-d database_name
Anger den databas som innehåller de Service Broker-tjänster som ska analyseras. Om databasen inte finns genereras ett felmeddelande. Om -d inte anges är standardvärdet den databas som anges i standarddatabasegenskapen för din inloggning.
-Jag login_timeout
Anger antalet sekunder innan ett försök att ansluta till en server överskrider tidsgränsen. Om -l inte anges använder ssbdiagnose värdet som angetts för SQLCMDLOGINTIMEOUT miljövariabeln. Om SQLCMDLOGINTIMEOUT inte heller anges är standardtidsgränsen 30 sekunder. Tidsgränsen för inloggning måste vara ett tal mellan 0 och 65534. Om det angivna värdet inte är numeriskt eller inte tillhör det intervallet genererar ssbdiagnose ett felmeddelande. Värdet 0 anger att tidsgränsen är oändlig.
-N encryption_option
Anger att anslutningen är krypterad. Möjliga värden är Optional, Mandatoryoch Strict. Det angivna värdet representerar önskad och minimal krypteringsnivå. Standardvärdet är Mandatory.
När Mandatory kryptering har valts bör du använda ett certifikat från en betrodd certifikatutfärdare. Mer information finns i certifikatkrav för SQL Server.
Om du vill använda strikt kryptering måste SQL Server Database Engine konfigureras med ett TLS-certifikat signerat av en betrodd rotcertifikatutfärdare.
-Jag hostname_in_certificate
Anger ett annat, förväntat eget namn (CN) eller alternativt ämnesnamn (SAN) i servercertifikatet som ska användas under verifieringen av servercertifikatet. Utan det här alternativet säkerställer certifikatverifiering att CN eller SAN i certifikatet matchar servernamnet som du ansluter till. Den här parametern kan fyllas i när servernamnet inte matchar CN eller SAN, till exempel när du använder DNS-alias.
-C
Anger att anslutningen litar på servercertifikatet och kringgår verifiering av servercertifikat. Det här alternativet krävs inte när betrodda servercertifikat används.
-?
Visar hjälp om kommandoraden.
Anmärkningar
Använd ssbdiagnose för att göra följande:
Bekräfta att det inte finns några konfigurationsfel i ett nyligen konfigurerat Service Broker-program.
Bekräfta att det inte finns några konfigurationsfel när du har ändrat konfigurationen av ett befintligt Service Broker-program.
Bekräfta att det inte finns några konfigurationsfel när en Service Broker-databas har kopplats från och sedan kopplas tillbaka till en ny instans av databasmotorn.
Undersöka om det finns konfigurationsfel när meddelanden inte överförs mellan tjänster.
Hämta en rapport om eventuella fel som inträffar i en uppsättning service broker-konversationselement.
Konfigurationsrapportering
Om du vill analysera konfigurationen som används av en konversation korrekt kör du en ssbdiagnose-konfigurationsrapport som använder samma alternativ som används av konversationen. Om du anger en lägre nivå av alternativ för ssbdiagnose än vad som används av konversationen kanske ssbdiagnose inte rapporterar villkor som krävs av konversationen. Om du anger en högre nivå av alternativ för ssbdiagnose kan det rapportera objekt som inte krävs av konversationen. Till exempel kan en konversation mellan två tjänster i samma databas köras med ENCRYPTION OFF. Om du kör ssbdiagnose för att verifiera konfigurationen mellan de två tjänsterna, men använder standardinställningen ENCRYPTION ON , rapporterar ssbdiagnose att databasen saknar en huvudnyckel. En huvudnyckel krävs inte för konversationen.
Konfigurationsrapporten för ssbdiagnose analyserar bara en Service Broker-tjänst eller ett enda par tjänster varje gång den körs. Om du vill rapportera om flera par Service Broker-tjänster skapar du en .cmd kommandofil som anropar ssbdiagnose flera gånger.
Körningsrapportering
När -RUNTIME har angetts söker ssbdiagnose igenom alla databaser som anges i runtimeconnectionoptions och baseconnectionoptions för att skapa en lista över Service Broker-ID:t. Den fullständiga listan över skapade ID:t beror på vad som anges för -NEW och -ID:
Om varken
-NEWeller-IDanges innehåller listan alla konversationer för alla databaser som anges i anslutningsalternativen.Om
-NEWanges innehåller ssbdiagnose elementen för den första konversationen som startar efter att ssbdiagnose har körts . Detta inkluderar konversations-ID:t och konversationshandtagen för både mål- och initierarkonversationens slutpunkter.Om
-IDanges med ett konversationshandtag inkluderas endast den referensen i listan.Om
-IDanges med ett konversations-ID läggs konversations-ID:t och handtagen för båda dess konversationsslutpunkter till i listan.Om
-IDanges med ett konversationsgrupps-ID läggs alla konversations-ID:t och konversationshandtagen i gruppen till i listan.
Listan innehåller inte element från databaser som inte omfattas av anslutningsalternativen. Anta till exempel att du använder -ID för att ange ett konversations-ID, men endast ange en runtimeconnectionoptions sats för initierardatabasen och inte måldatabasen.
ssbdiagnose innehåller inte målkonversationshandtaget i listan över ID:er, bara konversations-ID:t och initierarkonversationshandtaget.
ssbdiagnose övervakar SQL Server Profiler-händelser från de databaser som omfattas av runtimeconnectionoptions och baseconnectionoptions. Denna sökning letar efter Service Broker-händelser som indikerar att ett fel påträffades av ett eller flera Service Broker-ID:n i körlistan.
ssbdiagnose söker också efter felhändelser på systemnivå för Service Broker som inte är associerade med någon konversationsgrupp.
Om ssbdiagnose hittar konversationsfel försöker verktyget rapportera om rotorsaken till händelserna genom att även köra en konfigurationsrapport. ssbdiagnose använder metadata i databaserna för att försöka fastställa de instanser, Service Broker-ID:t, databaser, tjänster och kontrakt som används av konversationen. Den kör sedan en konfigurationsrapport med all tillgänglig information.
Som standard rapporterar ssbdiagnose inte felhändelser. Den rapporterar bara de underliggande problem som hittades under konfigurationskontrollen. Detta minimerar mängden information som rapporteras och hjälper dig att fokusera på de underliggande konfigurationsproblemen. Du kan ange -SHOWEVENTS för att se de felhändelser som påträffas av ssbdiagnose.
Problem som rapporterats av ssbdiagnose
ssbdiagnose rapporterar tre klasser av problem. I XML-utdatafilen rapporteras varje problemklass som en separat typ av elementet Problem. De tre typerna av problem som rapporteras av ssbdiagnose är följande:
Diagnosis: Rapporterar ett konfigurationsproblem. Detta inkluderar problem som upptäckts antingen när enCONFIGURATIONrapport körs eller under konfigurationsfasen för enRUNTIMErapport. ssbdiagnose rapporterar varje konfigurationsproblem en gång.Event: Rapporterar en SQL Server Profiler-händelse som indikerar att ett problem påträffades av en konversation som övervakades under enRUNTIMErapport. ssbdiagnose rapporterar händelser varje gång de genereras. Händelser kan rapporteras flera gånger om flera konversationer stöter på problemet.Problem: Rapporterar ett problem som hindrar ssbdiagnose från att slutföra en konfigurationsanalys eller från att övervaka konversationer.
SQLCMD-miljövariabler
Ssbdiagnose-verktyget stöder SQLCMDSERVERmiljövariablerna , SQLCMDUSER, SQLCMDPASSWORDoch SQLCMDLOGINTIMEOUT som också används av sqlcmd-verktyget. Du kan ange miljövariablerna antingen med kommandotolken SET eller genom att använda setvar kommandot i Transact-SQL skript som du kör med hjälp av sqlcmd. Mer information om hur du använder setvar i sqlcmd finns i sqlcmd – Använd med skriptvariabler.
Behörigheter
I varje connectionoptions klausul måste inloggningen som anges med antingen -E eller -U vara medlem i fast server-roll sysadmin i den instans som anges i -S.
Exempel
Det här avsnittet innehåller exempel på hur du använder ssbdiagnose i en kommandotolk.
A. Kontrollera konfigurationen av två tjänster i samma databas
I följande exempel visas hur du begär en konfigurationsrapport när följande är sant.
Initieraren och måltjänsten finns i samma databas.
Databasen finns i standardinstansen av databasmotorn.
Instanserna finns på samma dator där ssbdiagnose körs.
Verktyget ssbdiagnose rapporterar den konfiguration som använder DEFAULT-kontraktet eftersom ON CONTRACT inte har specificerats.
ssbdiagnose -E -d MyDatabase CONFIGURATION FROM SERVICE /test/initiator TO SERVICE /test/target
B. Kontrollera konfigurationen av två tjänster på separata datorer som använder en inloggning
I följande exempel visas hur du begär en konfigurationsrapport när initieraren och måltjänsten finns på separata datorer, men kan nås med samma Windows-autentiseringsinloggning.
ssbdiagnose -E CONFIGURATION FROM SERVICE /text/initiator -S InitiatorComputer -d InitiatorDatabase TO SERVICE /test/target -S TargetComputer -d TargetDatabase ON CONTRACT TestContract
C. Kontrollera konfigurationen av två tjänster på separata datorer som använder separata inloggningar
I följande exempel visas hur du begär en konfigurationsrapport när initieraren och måltjänsten finns på separata datorer, och separata SQL Server-autentiseringsinloggningar krävs för varje instans av databasmotorn.
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. Kontrollera speglade tjänstkonfigurationer på separata datorer med anonym kryptering
I följande exempel visas hur du begär en konfigurationsrapport när initieraren och måltjänsten finns på separata datorer och initieraren speglas till en namngiven instans. Rapporten verifierar också att tjänsterna är konfigurerade att använda anonym kryptering.
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. Kontrollera konfigurationen av två kontrakt
I följande exempel visas hur du skapar en kommandofil som begär konfigurationsrapporter när följande är sant:
Initieraren och måltjänsten finns i samma databas.
Databasen finns i standardinstansen av databasmotorn.
Instansen finns på samma dator där ssbdiagnose körs.
Varje gång ssbdiagnose körs rapporterar den konfigurationen för ett annat kontrakt mellan samma tjänster.
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. Övervaka statusen för en specifik konversation på den lokala datorn med en tidsgräns
I följande exempel visas hur du övervakar en specifik konversation där initieraren och måltjänsterna finns i samma databas i standardinstansen av samma dator som kör ssbdiagnose. Tidsgränsintervallet är inställt på 20 sekunder.
ssbdiagnose -E -d TestDatabase RUNTIME -ID D68D77A9-B1CF-41BF-A5CE-279ABCAB140D -TIMEOUT 20
G. Övervaka statusen för en konversation som sträcker sig över två datorer
I följande exempel visas hur du övervakar en specifik konversation där initieraren och måltjänsterna finns på separata datorer.
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. Övervaka status för en konversation i två databaser i samma instans
I följande exempel visas hur du övervakar en specifik konversation där initieraren och måltjänsterna finns i separata databaser i samma instans av databasmotorn. I exemplet används baseconnectionoptions för att ange instans- och inloggningsinformation samt två CONNECT TO satser för att ange databaserna.
-SHOWEVENTS anges så att alla körningshändelser inkluderas i rapportens utdata.
ssbdiagnose -E -S TestComputer/DevTestInstance RUNTIME -SHOWEVENTS
-ID 5094d4a7-e38c-4c37-da37-1d58b1cb8455 -TIMEOUT 10 CONNECT TO
-d InitiatorDatabase CONNECT TO -d TargetDatabase
Jag. Övervaka status för två konversationer mellan två databaser
I följande exempel visas hur du övervakar två konversationer där initieraren och måltjänsterna finns i separata databaser i samma instans av databasmotorn. I exemplet används baseconnectionoptions för att ange instans- och inloggningsinformation samt två CONNECT TO satser för att ange databaserna.
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. Övervaka statusen för alla konversationer mellan två databaser
I följande exempel visas hur du övervakar alla konversationer mellan två databaser i samma instans av databasmotorn. I exemplet används baseconnectionoptions för att ange instans- och inloggningsinformation samt två CONNECT TO satser för att ange databaserna.
ssbdiagnose -E -S TestComputer/DevTestInstance RUNTIME
-TIMEOUT 10 CONNECT TO -d InitiatorDatabase CONNECT TO
-d TargetDatabase
K. Ignorera specifika fel
I följande exempel visas hur du ignorerar kända fel (303 och 304) i hur aktiveringen för närvarande konfigureras i ett testsystem.
ssbdiagnose -IGNORE 303 -IGNORE 304 -E -d TestDatabase
CONFIGURATION FROM SERVICE /test/initiator TO SERVICE /test/target
ON CONTRACT TextContract
L. Omdirigera ssbdiagnose XML-utdata
I följande exempel visas hur du begär att ssbdiagnose ska generera utdata som en XML-fil som omdirigeras till en fil. Den TestDiag.xml filen kan sedan öppnas av ett program för att analysera eller rapportera ssbdiagnose XML-filer. Du kan också visa den från en allmän XML-redigerare, till exempel XML-anteckningar.
ssbdiagnose -XML -E -d MyDatabase CONFIGURATION FROM SERVICE
/test/initiator TO SERVICE /test/target > c:\MyDiagnostics\TestDiag.xml
M. Använda en miljövariabel
I följande exempel anges SQLCMDSERVER först miljövariabeln som ska innehålla servernamnet och kör sedan ssbdiagnose utan att -Sange .
SET SQLCMDSERVER=MyComputer
ssbdiagnose -XML -E -d MyDatabase CONFIGURATION FROM SERVICE
/test/initiator TO SERVICE /test/target
Relaterat innehåll
- Tjänstemäklare
- STARTA DIALOGKONVERSATION (Transact-SQL)
- SKAPA BROKER PRIORITY (Transact-SQL)
- SKAPA CERTIFIKAT (Transact-SQL)
- SKAPA KONTRAKT (Transact-SQL)
- SKAPA SLUTPUNKT (Transact-SQL)
- SKAPA HUVUDNYCKEL (Transact-SQL)
- SKAPA MEDDELANDETYP (Transact-SQL)
- SKAPA KÖ (Transact-SQL)
- SKAPA FJÄRRTJÄNSTBINDNING (Transact-SQL)
- SKAPA VÄG (Transact-SQL)
- SKAPA TJÄNST (Transact-SQL)
- TA EMOT (Transact-SQL)
- sys.transmission_queue (Transact-SQL)
- sys.conversation_endpoints (Transact-SQL)
- sys.conversation_groups (Transact-SQL)