Allgemeines zu Anwendungsprotokollen

Protokolle basieren immer auf dem Basis-Protokoll, welches in die Datenbanktabelle Basis.Protokoll geschrieben wird.
Alle Protokolle, die davon abgeleitet sind und die Protokollierung erweitern, haben daher ebenfalls sämtliche Basisdaten aus dieser Tabelle und darüber hinaus ggf. weitere Daten (Spalten) in deren eigene Tabellen.
Möchte man also ein bestimmtes erweitertes Protokoll konfigurieren kann man entweder die erweiterte Tabelle oder – wenn es nur auf den Inhalt des Protokolls, aber nicht auf die zusätzlichen Felder ankommt – die Basis-Tabelle benutzen. Der eigentliche Inhalt wird in einzelne Teildatensätze geschrieben.
Eine Ansicht, welche konfiguriert ist, um mit Basis.Protokoll zu arbeiten, zeigt daher immer sämtliche Protokolle an. (Also die Basis-Protokolle und alle die davon abgeleitet sind.) Wohingegen eine Ansicht die konfiguriert ist um z.B. nur mit Prozess.Protokoll zu arbeiten auch nur diese Art von Protokollen anzeigt und keine anderen.

Automatisches Löschen alter Anwendungsprotokolle

In den Anwendungseinstellungen kann bei Bedarf ein Intervall in Tagen eingestellt werden. Täglich löscht ein Hintergrundprozess dann Anwendungsprotokolle, die älter sind als dieses Intervall.

Protokolle konfigurieren

Um Protokolle zu sehen werden eine Ansicht sowie eine Maske benötigt, welche wiederum beide eine Navigation brauchen.

Das spezielle Masken-Steuerlelement „Ereignisse in Anwendungsprotokoll” wird in der Maske verwendet, um die Teildatensätze mit den einzelnen Protokolleinträgen anzuzeigen. Viele andere Informationen können berechnet werden.

Information Berechnung
Prozessname Process.Text
Titel Title
Start ToStr(Created)
Ende ToStr(Iif([LogEvents].Exists(), [LogEvents].Max([Time]), Created))
Anzahl Warnungen [LogEvents][Level.ValueGuid=={6C37B1FA-7907-4D58-892A-3B0ED5AD095E}].Count()
Anzahl Fehler [LogEvents][Level.ValueGuid=={715A487C-1B0C-4481-A094-FF9C277DDC07}].Count()

Für die Protokoll-Ansicht wird festgelegt, dass Datensätze in der zuvor konfigurierten Maske geöffnet werden. Folgende Spalten können in der Ansicht verwendet werden:

Datenspalte Steuerelement Beschreibung
OrmType Wert aus Auswahlliste (Referenz), Anzeigeart: Nur Bild Spalte mit Icons.
Process Wert aus Auswahlliste (Referenz) Für die Anzeige des Prozessnamens.
Title Text Für die Anzeige des Protokolltitels.
End Berechnet BAToCurrentTimeZone(LastEventTime)

Am Ende muss nur noch dafür gesorgt werden, dass die Protokoll-Ansicht in einer (Haupt-)Navigation aufrufbar gemacht wird.