!--a11y-->
Erzeugung von Audit-Protokolleinträgen 
Sie können Einträge in die Audit-Protokolldatenbank schreiben.

uml_auditlog.wmf enthält das Klassendiagram in UML-Darstellung. Öffnen Sie hierzu Word und importieren Sie uml_auditlog.wmf als Grafik
Bevor Audit-Protokolleinträge geschrieben werden können, müssen Sie den AuditMessageKey erzeugen. Dieser Schlüssel wird aus der Message-ID des XI-Message-Objekts und der Richtung zusammengesetzt.
· Verwenden Sie AuditDirection.Inbound für Messages, die vom Adapter-Framework an den Adapter geleitet werden.
· Verwenden Sie AuditDirection.Outbound für Messages, die vom Adapter an das Adapter-Framework geleitet werden.

Die Verwendung der Begriffe Inbound und Outbound entspricht in diesem Fall nicht der üblichen Verwendung in der Process Integration.
Die Message-ID und Richtung bilden den Schlüssel in der Datenbanktabelle des Audit-Protokolls.
Der Log-Eintrag kann wie in dem folgenden Beispiel dargestellt geschrieben werden.

Öffnen Sie hierzu SPIManagedConnectionFactory.java und suchen Sie nach der Zeichenkette CS_TRAUD.
Falls eine der Methoden ohne den Eingabeparameter AuditMessageKey aufgerufen wird, dann werden folgende Schritte durchgeführt:
· Es wird genau eine Audit-Protokollinformation (perThread) ohne AuditMessageKey-Objekt intern in den Cache geschrieben.
· Sobald im selben Thread der Aufruf von addAuditLog() mit einem AuditMessageKey-Objekt zum ersten Mal erfolgt, dann werden die Informationen über die MessageID und Richtung dem im Cache gespeicherten Audit-Protokolleintrag hinzugefügt.
· Mit dem nächsten Aufruf von flushAuditLogEntries() werden alle im Cache gesammelten Einträge in die Audit-Protokolldatenbank geschrieben.

Ein Adapter darf flushAuditLogEntries() für synchrone Messages nicht verwenden, um unnötige Audit-Protokolleinträge zu vermeiden.