dok:audit

Auditierung

BPS führt ein umfangreiches Audit Log für alle relevanten Tabellen. Damit können Probleme im Datenbestand untersucht und die Entstehung nachvollzogen werden.

Die Auditierung ist standardmässig eingeschaltet nachdem die Datenbank mit dem Assistent für neue Datenbanken initialisiert wurde. Dasselbe trifft zu für Tabellen die während des Updates auf neue BPS Versionen verändert oder neu eingeführt werden.

Da die Auditierung namhafte Datenmengen in der Datenbank erzeugt und die Verarbeitung auf dem Datenbank-Server belastet ist es in intensiv genutzten Installationen angezeigt alte Audit Daten regelmässig zu löschen, oder die Auditierung sogar ganz auszuschalten um die Leistung zu erhalten. Das unten beschriebene Skript kann für solche Aktionen verwendet werden.

Die Mastertabelle aller Audit Operationen ist t_audits. In dieser Tabelle werden alle Operationen aufgezeichnet. Nebst eigentlichen Datenänderungen per Insert, Update und Delete Operationen wird in dieser Tabelle auch protokolliert wenn das Auditing von Tabellen aktiviert oder deaktiviert wird:


Für Insert, Update und Delete Operationen in Datentabellen existiert jeweils eine analoge Slave Audit Tabelle deren Name mit ta_ beginnt. In diesen wird jede Datenänderung im Detail aufgezeichnet. Zur komfortableren Auswertung von Datenänderungen existieren allerdings entsprechende Views deren Namen jeweils mit va_ beginnt, darin sind Audit Master- und Slave-Tabellen verknüpft:


Das Audit-Skript kann im BPS Installationsverzeichnis von der Kommandozeile aus gestartet werden. Mit dem Kommando bps audit -h kann die eingebaute Online-Hilfe angezeigt werden:

  C:\Program Files\IBK BPS 2.22.1\bin>bps audit -h
  SYNOPSYS
  
      bps audit CONNECTSTRING [AUDITNAME]... [OPTION]...
  
  BESCHREIBUNG
  
      Dieses Skript dient der Steuerung der Auditierung in der BPS Datenbank.
  
      HINWEISE
  
      - Geben Sie als CONNECTSTRING die Anmeldung des BPS Besitzers als
        BenutzerID/PIN@Verbindung an.
  
      - Geben Sie den Auditnamen als Parameter AUDITNAME ein.
        Der Auditname is der Tabellenname ohne den Präfix 't_'.
  
      BEISPIELE
  
        Zeige Status von actors und users:
  
      bps audit 0/1234@pgprod actors users -s
  
        Alle Auditierungen deaktivieren:
  
      bps audit 0/1234@pgprod -d -a
  
  
  OPTIONEN
  
      -a, --all
      Operation für alle Auditnamen ausführen.
  
      -d, --disable
      Auditierung deaktivieren.
  
      -e, --enable
      Auditierung aktivieren.
  
      -s, --status
      Aktuellen Status anzeigen.
  
      -P, --purgeall
      Alle Auditdatensätze löschen.
  
      -h, --help
      Hilfe anzeigen (diese).
  
      -p TAGE, --purge=TAGE
      Auditdatensätze älter als TAGE löschen.
  
  
  C:\Program Files\IBK BPS 2.22.1\bin>

Beachten Sie dass das Skript durch den Anwendungsbesitzer (BenutzerID = 0) ausgeführt werden muss, andernfalls fehlen gewisse Datenbankberechtigungen für die auszuführenden Operationen.

Hier einige Beispiele von typischen Aufgaben:

Datensätze löschen welche älter als 60 Tage sind

  C:\Program Files\IBK BPS 2.22.1\bin>bps audit 0/1234@oraprod -a -p 60
  actors                  2327 Datensätze gelöscht
  artattributes             45 Datensätze gelöscht
  articleattributes        123 Datensätze gelöscht
  articlebarcodes           16 Datensätze gelöscht
  .....

Auditierung komplett deaktivieren

  C:\Program Files\IBK BPS 2.22.1\bin>bps audit 0/1234@oraprod -a -d
  actors            deaktiviert
  artattributes     deaktiviert
  articleattributes deaktiviert
  articlebarcodes   deaktiviert
  articleclasses    deaktiviert
  .....

Alle Auditierungen einschalten

  C:\Program Files\IBK BPS 2.17.0\bin>bps audit 0/1234@oraprod -a -e
  actors            aktiviert
  artattributes     aktiviert
  articleattributes aktiviert
  articlebarcodes   aktiviert
  articleclasses    aktiviert
  .....
  • dok/audit.txt
  • Zuletzt geändert: 08.06.2021 15:28
  • von ibk