Handle BizTalk artifact collection via ExplorerOM
Build und Test / build (push) Has been cancelled

This commit is contained in:
2026-07-28 11:35:10 +02:00
parent d1e10920c9
commit b9d01339b0
9 changed files with 601 additions and 117 deletions
+25 -19
View File
@@ -41,9 +41,10 @@ Administrative cmd.exe
| +-- MSBTS_GroupSetting für Management SQL/DB
|
+-- BizTalkWmiCollector
| +-- ExplorerOM: vollständige Anwendungsliste
| +-- ExplorerOM: Anwendungen, Assemblies, Schemas,
| | Maps und Pipelines
| +-- root\MicrosoftBizTalkServer
| +-- optionale Artefakte, Adapter, Hosts und Handler
| +-- Orchestrierungen, Ports, Adapter, Hosts und Handler
| +-- optionaler SAP-Endpunkt-Fallback
|
+-- BindingExportCollector
@@ -104,8 +105,9 @@ SELECT Name,MgmtDbServerName,MgmtDbName FROM MSBTS_GroupSetting
Die vollständige Anwendungsliste wird anschließend über
`Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer` und integrierte
Windows-Authentifizierung aus der BizTalk Management Database gelesen. Es werden
keine ändernden ExplorerOM-Methoden aufgerufen. Die Connection String wird nicht
protokolliert.
keine ändernden ExplorerOM-Methoden aufgerufen. Die bereitgestellten Assemblies
und deren Schemas, Transforms/Maps und Pipelines werden aus denselben
Anwendungsobjekten gelesen. Die Connection String wird nicht protokolliert.
Dieser Aufbau vermeidet die nicht verlässlich vorhandene WMI-Klasse
`MSBTS_Application`, die je nach Installation mit `Invalid class` abbrechen kann.
@@ -114,7 +116,7 @@ ExplorerOM-Assemblyname, Version und Dateipfad werden protokolliert. Wenn
`--management-server`/`--management-database` ermittelte Datenbankziel weiterhin
für ExplorerOM verwendet werden.
### 3.3 Optionale BizTalk-WMI-Daten
### 3.3 BizTalk-WMI-Laufzeitdaten
Primärer Namespace:
@@ -122,31 +124,31 @@ Primärer Namespace:
root\MicrosoftBizTalkServer
```
Optionale beziehungsweise versionsabhängige Artefaktklassen:
Verwendete BizTalk-WMI-Klassen:
- `MSBTS_Orchestration`
- `MSBTS_SendPort`
- `MSBTS_SendPortGroup`
- `MSBTS_ReceivePort`
- `MSBTS_ReceiveLocation`
- `MSBTS_Assembly`
- `MSBTS_Schema`
- `MSBTS_Map`
- `MSBTS_Pipeline`
- `MSBTS_AdapterSetting`
- `MSBTS_ReceiveHandler`
- `MSBTS_SendHandler2` bzw. `MSBTS_SendHandler`
- `MSBTS_HostSetting`
- `MSBTS_HostInstance`
Eine fehlende optionale Klasse erzeugt einen Hinweis, verhindert aber nicht die
ExplorerOM-Anwendungsliste oder den Word-Bericht. Ist der gesamte BizTalk-WMI-
Namespace für diese Zusatzdaten nicht erreichbar, wird der WMI-Teil übersprungen;
die zuvor geladene Anwendungsliste bleibt erhalten.
`MSBTS_Assembly`, `MSBTS_Schema`, `MSBTS_Map` und `MSBTS_Pipeline` werden bewusst
nicht abgefragt: Sie waren auf ACC nicht registriert und gehören nicht zu den
dokumentierten WMI-Kernklassen. Die entsprechenden Daten stammen aus ExplorerOM.
Zum Schutz vor ungewöhnlich großen Artefaktmengen begrenzt `MaxArtifactDetailsPerType`
die aufgenommenen Detaildatensätze pro WMI-Klasse auf standardmäßig 5000. Die
Anwendungsliste selbst wird nicht begrenzt.
Eine fehlende optionale Laufzeitklasse erzeugt einen Hinweis, verhindert aber
nicht die ExplorerOM-Anwendungsliste oder den Word-Bericht. Ist der gesamte
BizTalk-WMI-Namespace für diese Zusatzdaten nicht erreichbar, wird der WMI-Teil
übersprungen; die zuvor geladene Anwendungsliste bleibt erhalten.
Zum Schutz vor ungewöhnlich großen Artefaktmengen begrenzt
`MaxArtifactDetailsPerType` die aufgenommenen Detaildatensätze je Artefakttyp auf
standardmäßig 5000. Die Anwendungsliste selbst wird nicht begrenzt.
### 3.4 BTSTask-Gruppenbinding
@@ -337,13 +339,16 @@ Das DR-Runbook muss mindestens enthalten:
- WMI-Timeout, WQL-, Laufzeit- und Datensatzprotokollierung
- vollständige Anwendungsliste über read-only ExplorerOM statt
`MSBTS_Application`
- Assemblies, Schemas, Maps und Pipelines über ExplorerOM statt nicht
registrierter WMI-Klassen
- Reflection unterstützt auch explizit implementierte ExplorerOM-Interfaces
- dynamische ExplorerOM-Auflösung aus GAC und BizTalk-Installationspfad
- WMI-Zusatzdaten dürfen nach erfolgreicher ExplorerOM-Erfassung ausfallen
- Prozess-Timeout für `BTSTask`
- live gespiegelte, secret-bereinigte BTSTask-Ausgabe
- WMI-Fallback für SAP-Endpunkte
- WMI-Fallback für SAP-Endpunkte ohne doppelte Port-Abfragen
- Offline-Bindingmodus
- optionale WMI-Klassen stoppen den Lauf nicht
- optionale Zugriffsfehler werden als Warnung protokolliert und stoppen den Lauf nicht
- begrenzte Dateisystemsuche
- Fehlerisolation bei Registry, Zertifikaten und Dateimetadaten
- XML-Parser ohne DTD/External Entities
@@ -420,6 +425,7 @@ Tests prüfen:
- SAP-Client, Host und `UseSnc`
- Anwendungszuordnung
- Diagnose-Logging mit HRESULT und innerer Reflection-Ausnahme
- ExplorerOM-Artefakte einschließlich expliziter Interface-Eigenschaften
- DOCX-Paketstruktur
- XML-Gültigkeit aller DOCX-Parts
- Ausschluss von Testkennwörtern