2. Event- und Journal-Einträge
Kapitel hinzufügen

Im laufenden Betrieb werden Programmeldungen (Event- und Journal-Logs) in der Datenbank protokolliert.

Bei den Event-Logs handelt es sich um verschiedene geloggte Aktionen, die in der Verwaltung des Lesesaales oder im Viewer auftreten.
Die Journale hingegen dienen ausschließlich zur Protokollierung von Dokumentbewegungen, d.h. Import, Export, Löschen und Ändern von Dokumenten.

Diese Event- und Journal-Einträge können über das Admin-Tool in Form von typisierten CSV-Dateien exportiert werden (siehe Ereignis und Journal).

Der prinzipielle Aufbau eines protokollierten Ereignisses folgt dabei einer Serie von 2er-Tupeln.

{feldname};{feldwert}

Beispiel:

"event.time";"1296346232165";
"event.description";"close session";
"event.type";"INFORMATION";
"event.action";"SESSION_CLOSE";
"event.source";"SESSION";
"sessionId"; "65e5f6ecb6ae78c107f5e3717012d7ce914490077dc";
"nodeId";"65e5f6ecb6ae78c107952e9890126d6d9d2ed008000"

2.1 Event-Einträge
Abschnitt hinzufügen

Alle Event-Einträge besitzen folgende Kopfdaten:

FeldnameFeldwert
event.time{milliseconds since 1970}
event.type[INFORMATION,ERROR,WARNING]
event.source[ACCOUNT,AUTHENTICATION,DOCUMENT,ENGINE,HOST,JOURNAL, LICENSE,SEARCH, SESSION]
event.action{event-specific}
event.description{unformatted output}

Je nach event.source werden weitere optionale Felder hinzugefügt, die im Folgenden beschrieben werden.

Hinweis: Beim Abruf der Eventeinträge über die SOAP Schnittstelle werden die obigen Kopfdaten in der Datenstruktur WsEventData als Attribute abgebildet. Die folgenden optionalen Felder sind dagegen in einer WsProperty Liste mit den aufgeführten Feldnamen verfügbar.

2.1.1 EventSource: ACCOUNT

EventAction:

  • ACCOUNT_ROLE_ADDED – Rolle hinzugefügt
  • ACCOUNT_ROLE_REMOVED – Rolle entfernt
  • ACCOUNT_ROLE_EDITED – Rolle bearbeitet
FeldnameFeldwert
sessionId{session id of the involved client}
roleId{role id of the role}
roleName{name of the role}
fullName{full name of the role}

EventAction:

  • ACCOUNT_USER_ADDED – Benutzer hinzugefügt
  • ACCOUNT_USER_REMOVED – Benutzer entfernt
  • ACCOUNT_USER_EDITED – Benutzer bearbeitet
FeldnameFeldwert
sessionId{session id of the involved client}
userId{user id of the user}
loginName{login name of the user}
fullName{full name of the user}
status{Enabled, Disabled, Pending, Unknown}

2.1.2 EventSource: AUTHENTICATION

EventAction:

  • AUTHENTICATION_LOGIN – Anmeldung eines Benutzers
  • AUTHENTICATION_LOGOUT – Abmeldung eines Benutzers
FeldnameFeldwert
userId{user id of the user}

2.1.3 EventSource: DOCUMENT

EventAction:

  • DOCUMENT_LOCK – Sperren eines Dokumentes
  • DOCUMENT_UNLOCK – Freigeben eines Dokumentes
FeldnameFeldwert
sessionId{session id of the involved client}
medianumber{medianumber of the document}
title{title of the document}
objectId{document id of the document}

EventAction:

  • DOCUMENT_PRINT – Drucken eines Dokumentes
FeldnameFeldwert
sessionId{session id of the involved client}
medianumber{medianumber of the document}
title{title of the document}
from{from page}
to{to page}

2.1.4 EventSource: ENGINE

EventAction:

  • ENGINE_STARTUP – Starten des MyBib el Servers
  • ENGINE_SHUTDOWN – Stoppen des MyBib el Servers
FeldnameFeldwert
<no extra fields><no extra fields>

2.1.5 EventSource: HOST

EventAction:

  • HOST_REGISTER – Registrierung einer Arbeitsstation
FeldnameFeldwert
host.address{ip address of client computer}
nodeId{unique node id of the client computer}

EventAction:

  • HOST_UNREGISTER – Deregistrierung einer Arbeitsstation
FeldnameFeldwert
nodeId{unique node id of the client computer}

2.1.6 EventSource: JOURNAL

EventAction:

  • JOURNAL_DOCUMENT_CHECKED_IN – Einchecken eines Dokuments
FeldnameFeldwert
medianumber{medianumber of the document}
title{title of the document}
identifier{identifier of the document}
pages{number of pages of the document}
copyCounter{copy counter}
viewCounter{view counter}
printCounter{print counter}

EventAction:

  • JOURNAL_DOCUMENT_EDITED
FeldnameFeldwert
medianumber{medianumber of the document}
title{title of the document}
identifier{identifier of the document}
copyCounter{copy counter}
viewCounter{view counter}
printCounter{print counter}

EventAction:

  • JOURNAL_DOCUMENT_DELETED ​ – Dokument wird aus dem Lesesaal gelöscht
  • JOURNAL_DOCUMENT_EXPORTED ​ – Dokument wird aus dem Lesesaal exportiert
FeldnameFeldwert
medianumber{medianumber of the document}
title{title of the document}
identifier{identifier of the document}

2.1.7 EventSource: LICENSE

EventAction:

  • LICENSE_ADDED – Hinzufügen einer Lizenz
  • LICENSE_REMOVED – Löschen einer Lizenz
  • LICENSE_CHANGED – Ändern einer Lizenz
FeldnameFeldwert
sessionId{session id of the involved client}
registrarName{name of the license}

2.1.8 EventSource: SEARCH

EventAction:

  • SEARCH_DOCUMENT – Suche nach einem Dokument
FeldnameFeldwert
sessionId{session id of the involved client}
query{the query string}

2.1.9 EventSource: SESSION

EventAction:

  • SESSION_OPENED – Beginn einer Sitzung
FeldnameFeldwert
sessionId{session id of the involved client}
nodeId{unique node of the client computer}
host.address{ip address of the client computer}
java.version{java version}
javawebstart.version{java webstart version}
java.maxmemory{maximum available memory for java}
os.name{name of the operating system}
os.version{version of the operating system}
system.cpucount{number of cpus}
system.computer.name{name of the client computer}
system.host.address{host address of the client computer}

EventAction:

  • SESSION_CLOSED – Ende einer Sitzung
  • SESSION_TIMEOUT – Ablauf einer Sitzung
FeldnameFeldwert
sessionId{session id of the involved client}
nodeId{unique node of the client computer}

2.2 Journal-Einträge
Abschnitt hinzufügen

Alle Journal-Einträge besitzen folgende Kopfdaten:

FeldnameFeldwert
journal.time{milliseconds since 1970}
journal.action[checkin,checkout,delete document,edit,counter data imported]
journal.description{unformatted output}
medianumber{medianumber of the document}
identifier{identifier of the document}
title{title of the document}

Je nach Journal Action werden weitere Felder hinzugefügt, die nachfolgend beschrieben werden.

Anmerkung: Da es sich bei den Journal-Einträgen um eine Untermenge der Ereignisse handelt, die sich auf die Dokumentbewegungen beziehen, entspricht die Liste der Journal-Einträge den unter Journal-Einträge gelisteten Events, der Aufbau der Einträge in den jeweiligen CSVs variiert jedoch.

JournalAction:

  • JOURNAL_DOCUMENT_CHECKED_IN – Einchecken eines Dokuments
FeldnameFeldwert
pages{number of pages of the document}
copyCounter{copy counter}
viewCounter{view counter}
printCounter{print counter}

JournalAction:

  • JOURNAL_DOCUMENT_EDITED
FeldnameFeldwert
copyCounter{copy counter}
viewCounter{view counter}
printCounter{print counter}

JournalAction:

  • JOURNAL_DOCUMENT_DELETED – Dokument aus der Datenbank löschen
  • JOURNAL_DOCUMENT_EXPORTED – Dokument exportieren
FeldnameFeldwert
<no extra fields><no extra fields>

Beispiele für Journal-Einträge (CSV)

"journal.time";"20161130-111657";"journal.action";"JOURNAL_DOCUMENT_CHECKED_IN";"journal.description";"Medianumber: 12345, Title: Mein Titel, CopyCount: 1, ViewCount: 1, PrintCount: 1";"medianumber";"12345";"identifier";"12345";"title";"Mein Titel";"pages";"100";"copycount";"1";"viewcount";"1";"printcount";"1"
"journal.time";"20161202-144420";"journal.action";"JOURNAL_DOCUMENT_EXPORTED";"journal.description";"Medianumber: 12345, Title: Mein Titel";"medianumber";"12345";"identifier";"12345";"title";"Mein Titel"
"journal.time";"20161202-144422";"journal.action";"JOURNAL_DOCUMENT_EDITED";"journal.description";"Medianumber: 12345, Mein Titel, CopyCount: 1, ViewCount: 1, PrintCount: 1";"medianumber";"12345";"identifier";"12345";"title";"Mein Titel";"copycount";"1";"viewcount";"1";"printcount";"1"
"journal.time";"20161219-115943";"journal.action";"JOURNAL_DOCUMENT_DELETED";"journal.description";"Medianumber: 12345, Title: Mein Titel";"medianumber";"12345";"identifier";"12345";"title";"Mein Titel"