Das Prüfprotokoll stellt eine Befehlszeilenschnittstelle zum
Verwalten und Anzeigen von Prüfprotokollen bereit. Prüfprotokolle
stellen den Verlauf von Änderungen an Objekten im System bereit. Sie
werden im Index "full-text" gespeichert.
Bei der Verwendung des Prüfprotokolls ersetzt die Protokollierung
für die verfolgten Objekte die Nachrichten, die andernfalls in
sichtbar wären.
Wichtig: Prüfprotokolle funktionieren nur in Verbindung
mit Operationen, die direkt auf einem laufenden System durchgeführt
werden. Sie funktionieren nicht bei Daten, die in das System
importiert wurden. Die Funktion "bfimport" aktualisiert die Datenbank
direkt und interagiert nicht mit der Prüfprotokollfunktion.
Prüfrichtlinie verwalten
Mithilfe der
Prüfrichtlinie wird der Umfang der Prüfung gesteuert. Er wird durch
die Einstellung für die Systemkonfiguration "Prüfrichtlinie"
festgelegt.
- KEINE
- Es werden keine Prüfinformationen aufgezeichnet.
- SICHERHEIT
- Nur sicherheitsrelevante Informationen werden aufgezeichnet. Beispiele: Zugriffsgruppenerstellung und Benutzersitzungsaktivität.
- BASIC
- Die ist die Standardeinstellung. Diese Einstellung wird auch dann
eingesetzt, wenn ein ungültiger Prüfrichtlinienwert vorliegt. Es
werden nur Mindestinformationen aufgezeichnet wie Benutzer,
Objekttyp, UUID und Aktion.
- DETAILED
- Zeichnet detaillierte Informationen über veränderte Eigenschaften
auf einschließlich den alten und den neuen Wert. Nicht alle Objekte
können diese Informationen bereitstellen. Bei Objekten, die das nicht
können, besteht zwischen den Richtlinien "BRIEF" und "DETAILED" kein
Unterschied. Die Einstellung der Systemkonfiguration "Maximale Länge
der Prüfzeichenfolge" kann verwendet werden, um den Umfang der
gespeicherten Daten zu beschränken.
Mit der
Einstellung der Systemkonfiguration "Maximale Länge der
Prüfzeichenfolge" kann gesteuert werden, wie viele Informationen für
die Änderung "DETAILED" aufgezeichnet werden können, indem die Länge
der Zeichenfolgendatenfelder begrenzt wird. Überschreitet das
Prüfelement diese Anzahl an Zeichen, wird ein SHA-Nachrichtenauszug
anstelle des Zeichenfolgenwerts gespeichert. Bei Feldern mit
sensiblen Informationen wie Kennwörtern wird der Nachrichtenauszug
ungeachtet der Zeichenfolgenlänge verwendet.
Prüfinformationen anzeigen
Dank einer
Befehlszeilenschnittstelle können Sie angeben, welche Informationen
angezeigt und wie diese formatiert werden sollen.
Die
Berechtigung "Alle Prüfprotokolle anzeigen" ist erforderlich.
Diese Berechtigung wird den Zugriffsgruppen "Sicherheit" und
"Buildentwickler" standardmäßig zugewiesen.
Usage: bfauditlog [connection-options][command-options][query]
Die ausführbare Literaldatei lautet folgendermaßen:
- Windows-Systeme: bfauditlog.bat
- UNIX- und Linux-Systeme: bfauditlog.sh
Verbindungsoptionen
- -H Hostname | --hostname=hostname
- Der ferne Hostname für die Verbindung. Der Standardwert lautet
localhost.
- -P port | --port=port
- Kommunikationsport für die Verbindung. Der Standard lautet 3966.
- -d Domäne | --domain=domain
- Die Domäne oder der Realm der Authentifizierung. Standard: none.
- -u login | --user=login
- Der für die Authentifizierung zu verwendende Benutzername. Der Standard
lautet root.
- -p Kennwort | --password=password
- Das Kennwort für den Benutzer der Authentifizierung. Der Standard
lautet root.
- -E Codierung | --encoding=encoding
- Die zu verwendende Codierung des Ausgabezeichensatzes. Wurde eine ungültige Codierung angegeben, werden alle verfügbaren Codierungen aufgelistet und das Programm wird beendet. Hinweis: Die Möglichkeit, Text in der angeforderten Codierung anzuzeigen, hängt von der Funktionalität der auf dem Client verwendeten Terminalsoftware ab. Die Standardeinstellung hängt vom Betriebssystem und von der JVM-Unterstützung ab.
Befehlsoptionen
- -h
- Hilfe anzeigen.
- -b | --bare
- Zeigen Sie in der Ausgabe weniger Informationen an (bare). Der
genaue Effekt hängt vom Ausgabeformat ab (siehe -t). In der
XML-Ausgabe werden die Öffnungs- und Endtags sowie die Zeilenanzahl
nicht angegeben. In der CSV-Datei werden die Zeilenanzahl und die
Spaltennamen nicht angegeben.
- -c auditClass[,auditClass ...] | --audit.class=class-list
- Gibt eine Liste von Prüfklassen an, die in der Abfrage verwendet
werden sollen. Trennen Sie mehrere Klassennamen mit Kommas. Falls mehrfach angegeben, wird die Vereinigung aller
angegebenen Prüfklassen verwendet. Falls die Option nicht angegeben ist, werden alle Prüfklassen verwendet, die der Benutzer angeben kann. Verwenden Sie die Option -L, um verfügbare Prüfklassen aufzulisten.
Die Standardeinstellung: Alle Prüfklassen, die der Benutzer anzeigen darf.
- -f field[,field ...] | --field=field-list
- Legt die Felder fest, die in der Ausgabe enthalten sein sollen. Trennen Sie mehrere Feldnamen mit Kommas. Verwenden Sie die Option -L, um verfügbare Felder aufzulisten.
- -s field[+|-][,field[+|-] ...] | --field=field-list
- Listen Sie die Felder auf, die zum Sortieren der Ausgabe
verwendet werden sollen. Die Ausgabe wird standardmäßig in
absteigender Reihenfolge des "audit.stamp" sortiert. Die Markierung
"+" gibt die aufsteigende Reihenfolge an. Die Markierung "-" gibt die
absteigende Reihenfolge an.
Trennen Sie mehrere Feldnamen mit Kommas. Der Standardwert lautet -audit.stamp.
- -l [offset,]count | --limit=[offset,]count
- Wird zum Paginieren der Ergebnisse verwendet. Der Offset und die
Zahl werden durch die Anzahl der Einträge angezeigt. Zum Beispiel
bedeutet "-l 100,50", dass Sie nach dem 100. Eintrag 50 Einträge
anzeigen sollen. Ausgabeformate, die nicht entblößt sind, enthalten
die Gesamtzahl der übereinstimmenden Einträge in der Ausgabe.
- -a user[,user ...] | --audit.user=user-list
- Schränkt die Ausgabe auf Einträge ein, die dem angegebenen
Benutzer oder den angegebenenen Benutzern zugewiesen werden. Trennen
Sie mehrere Benutzernamen mit Kommas. Wenn Sie mehrere Optionen -a verwenden,
verwendet der Befehl die Vereinigung aller in den Optionen angegebenen Benutzer.
Die Benutzer werden möglicherweise durch Anmelde-IDs oder UUIDs angegeben. Wenn -–audit-user ohne Benutzerargument angegeben wird, wird der zur Authentifizierung gewählte Benutzer verwendet.
- -t format | --format=format
- Das für die Ausgabe zu verwendende Format, zum Beispiel CSV, XML,
JSON oder TEXT.
Der Standard lautet TEXT.
- -L | --list
- Listet verfügbare Prüfklassen für den Benutzer auf. Auf mit einem Stern (*) markierte Prüfklassen kann der Benutzer zugreifen.
Falls mit -c verwendet (Liste der Prüfklassen), wird stattdessen eine Liste der für jede Klasse zur Verfügung stehenden Felder angezeigt. Andere Befehlsoptionen haben keine Auswirkungen, wenn diese Option angegeben ist. Benutzer mit der Berechtigung ViewAllAudits können Prüfprotokolle jeder (beliebigen) Klasse anzeigen. Andere Benutzer können mit der Option -a nur ihre eigenen Prüfprotokolle anzeigen.
Abfrage
Die Abfrage ist eine Zeichenfolge, die das häufig durch
Websuchmaschinen verwendete Format verwendet: eine durch Leerstelle
getrennte Liste von Spezifikationen. Spezifikationen werden im
Formular 'Feld:Wert' angegeben, um nach
Wert im angegebenen Feld zu suchen. Wenn keine Abfrage, jedoch zumindest eine andere Option angegeben ist, werden alle übereinstimmenden Prüfprotokolle angezeigt. Der Prüfbenutzer und die Prüfklasse können in der Abfrage nicht angegeben werden. Verwenden Sie die Befehlsoptionen, um sie anzugeben.
Anmerkung: Verwenden
Sie auf Windows-Systemen doppelte Anführungszeichen, auf UNIX- und
Linux-Systemen einfache Anführungszeichen.
Beispiele
- In diesem Beispiel werden alle bekannten Abfragefelder für die Prüfklassen "Projekt" und "Schritt" aufgelistet.
- Windows
$ bfauditlog.bat -c Project,Step -L
- UNIX und Linux
$ bfauditlog.sh -c Project,Step -L
- Dieses Beispiel zeigt die 10 neuesten Prüfprotokolle für Projekterstellungen an, die ein Ausgabeformat mit durch Kommas getrennten Variablen und ohne Spaltenüberschriften oder die Gesamtzeilenanzahl verwenden. Lediglich die eindeutige Kennung
und der Name des Projekts werden für jeden Datensatz angegeben.
- Windows
$ bfauditlog.bat -c Project -t CSV -f audit.target,
sxProjectName --bare -l 10 "audit.type:Create"
- UNIX und Linux
$ bfauditlog.sh -c Project -t CSV -f audit.target,
sxProjectName --bare -l 10 'audit.type:Create'
- In diesem Beispiel werden die 100 neuesten Prüfprotokolle von der Installation auf dem System 'buildforge.example.com' nach dem Anmelden abgerufen, wobei die Domäne, der Benutzername und das Kennwort angegeben sind.
- Dieses Beispiel ruft die Prüfprotokolle ab, die ab dem 23. Mai 2011 bis zum 27. Mai 2011 entsprechend der Zeitzoneneinstellungen
des Benutzers erfasst wurden, der die Verbindung authentifizierte.
- Dieses Beispiel ruft die Prüfprotokolle für Projekte ab, deren Zugriffsgruppenebenen
vom alten Wert 4, 5 oder 6 in den neuen Wert 3 geändert wurden. Beachten Sie, dass eckige Klammern zum Angeben eines inklusiven Bereichs verwendet werden. '[4 TO 6]' bedeutet also, dass die Werte 4 und 6 übereinstimmen. Beachten Sie außerdem,
dass die alten und neuen Werte für die Ebene nur für die Suche zur Verfügung stehen,
wenn die Prüfrichtlinie auf 'DETAILED' gesetzt wurde.
- Dieses Beispiel ruft die Prüfprotokolle für Projekte ab, deren Zugriffsgruppenebenen
vom alten Wert 4 oder 5 in den neuen Wert 2 oder 3 geändert wurden. Beachten Sie, dass geschweifte Klammern zum Angeben eines exklusiven Bereichs verwendet werden. '{3 TO 6}' bedeutet also, dass die Werte 3 und 6 nicht übereinstimmen.
Beachten Sie außerdem,
dass die alten und neuen Werte für die Ebene nur für die Suche zur Verfügung stehen,
wenn die Prüfrichtlinie auf 'DETAILED' gesetzt wurde.
- Dieses Beispiel
schränkt die Abfrage auf Ergebnisse für Prüfbenutzer
root und sv ein und produziert eine
Ausgabe in einer CSV-Datei. Es gibt Daten für die Klassen "Projekt"
und "Schritt" zurück und schließt Informationen für die Klasse, den
Typ, das Ziel, den Benutzer und die Zeitmarke ein:
- Windows
$ bfauditlog.bat -c Project,Step -f audit.class,
audit.type,audit.target,audit.user,audit.stamp
-a root,sv -l 10,5 -t CSV
- UNIX und Linux
$ bfauditlog.sh -c Project,Step -f audit.class,
audit.type,audit.target,audit.user,audit.stamp
-a root,sv -l 10,5 -t CSV
Klassen
Klassen sind Beschriftungen für Prüfprotokolleinträge.
Verwenden Sie die Option "-L", um die für Sie verfügbaren Klassen aufzulisten.
Felder
Felder repräsentieren Informationen,
die jedem Prüfprotokolldatensatz zugewiesen werden.
- audit.class: Projekt (Zeichenfolge)
- audit.stamp: Eine Zeitmarke (Ganzzahl)
- audit.stamp.localized: Eine lokaliserte Zeichenfolge, die den
ganzzahligen Wert audit.stamp repräsentiert.
- audit.type: Aktualisieren (Zeichenfolge)
- audit.target: Projekt-UUID (Zeichenfolge)
- audit.user: UUID des Benutzers, der die Aktualisierung durchführte
Einige Felder im Prüfprotokolldatensatz geben ihren Status wieder (o
für old (alt), n für new (neu), x für extended (erweitert)) sowie
ihren Datentyp (s für string (Zeichenfolge), i für integer
(Ganzzahl)). Beispiel:
soDescription: Alte
Projektbeschreibung (Zeichenfolge)
snDescription: Neue Projektbeschreibung (Zeichenfolge)
soSelectorUuid: Alte Selektor-UUID (Zeichenfolge)
snSelectorUuid: Neue Selektor-UUID (Zeichenfolge)
ioRunLimit: Altes Ausführungslimit (Ganzzahl)
inRunLimit: Neues Ausführungslimit (Ganzzahl)