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.