BizTalk Audit Logs (Wer? Wann? Wo?)

Im Support erhält man oft Tickets, dass Nachrichten nicht mehr ankommen oder nicht mehr übertragen werden können. Der erste Schritt ist immer zu überprüfen, ob die Endpunkte passen. Sollten die Endpunkte nicht passen, stellt sich immer die Frage, wer hat wann diese Einstellungen geändert und vor allem warum.

Bisher konnte man die Fragen wer und wann nicht mit BizTalk Bordmitteln beantworten.(Es gibt Tools wie BizTalk360, die das anbieten.) Seit BizTalk 2020 kann man Audit Logs konfigurieren. Dann ist es möglich folgende Events zu loggen:

  • Ports (Neuanlegen, Updates oder Löschen)
  • Service Instanzen (Suspend, Resume, Terminate)
  • Bindings (Import)

Audit Logs konfigurieren

Hier müssen die Audit Logs konfiguriert werden:

Nach diesen Einstellungen werden alle oben genannten Aktionen geloggt (Default max. 10.000).

Audit Logs auslesen

Um  die Logs auszulesen kann man mit jedem HTTP-Client (Postman, SOAP UI, sogar dem Browser) die Logs auslesen. Hierzu ruft man einfach folgende URL mit GET auf http://[Server]/BizTalkOperationalDataService/AuditLogs
Dann erhält man eine JSON mit allen Logs.

Möchte man die Logs eingrenzen kann man mit den query Parametern fromDate und/oder toDate die Abfrage machen
http://[Server]/BizTalkOperationalDataService/AuditLogs?fromDate=2020-12-20T01:00:00&toDate=2020-12-21T01:00:00

Damit können die Fragen wer, wann und wo beantwortet werden. Jedoch muss die Frage des Warum immer noch von dem Benutzer selbst beantwortet werden