Hallo zusammen,
ich bin gerade dabei ein Identity Management Tool zu schreiben. Eine Notesanwendung die alle Benutzerdaten enthält
und je nach der zugewiesenen Stelle (bzw. Rollen und Gruppen) werden der Person Berechtigungen zugeteilt. Die Meta-
daten und Zugriffsrechte werden dann auch prompt in die jeweiligen Zielsysteme (Active Direcotry, Novell, LDAP, NAB, SQL
und diverse andere) übertragen und sind auch gleich wirksam...
Bei der ganzen Sache sind eine Reihe von Systemen beteiligt. Die Notesanwendung steht dabei im Vordergrund und
"gibt den Ton an".
Die Systeme teilen mir Ihre Events, Messages und Fehler auf verschiedensten Wegen mit - per Webservice, per E-Mail
und per Agent. Mein Ziel ist es all diese Informationen in ein gemeinsames Log zu bringen - ähnlich dem Domino Konsolen-
log. Ein Dokument mit RichTextfeld mit den Nachrichten eines gewissen Zeitraums.
Verschiedene Varianten habe ich schon druchgedacht - die Optimale war noch nicht dabei... Hier ein paar Ideen:
Einfach direkt ins Dokument schreiben
Es passiert mit Sicherheit das mehrere Prozesse gleichzeitig ins Log schreiben möchten.
NotesLog Klasse
Entweder Dateien auf der Platte (mag ich nich) oder für jeden Eintrag ein einzelnes Dokument (mag ich auch nicht -
könnt ich aber, wenn auch nur schweren Herzens und mit ordentlicher Archivierung, damit leben). Bei OpenLog ists
ähnlich.
JavaAddIn Task
Ein Serveraddin das alles entgegennimmt, cached und dann sporadisch ins Dokument schreibt. (Kanonen auf Spatzen?)
"Logging Service"
Gefällt mir bisher am besten : Ich leite alles per Webservice an die "Logging Anwendung" um. Wird der Provider nun
gleichzeitig mehrmals aufgerufen wartet dieser bis seine anderen Instanzen fertig sind. Jedoch entsteht hier ein Nadelöhr
das man im Auge behalten sollte...
Standet Ihr schonmal vor einem ähnlichen Problem? Wie habt Ihr das Ganze gelöst?
Plan B ist für jedes Zielsystem einen eigenes Log zu schreiben - minimiert zumindest das Risiko von gleichzeitigen
Zugriffen. Dies würde aber das Verfolgen von Abläufen für den Anwender schwieriger machen...
Achja, der Dominoserver ist exklusiv für das Identitymanagement abgestellt. Keine MailDBs und keine anderen Applikationen.
lg Tim