Documentation

The journal

The audit log and each project's preservation journal.

Preserving also means being able to say what was done, and when. The Journal screen (group Attest) has two tabs:

  • Audit Log: every action on the library, from the most recent to the oldest: who, what, when;
  • Project Preservation: the history of each project (import, archives, verifications, copies, certificates). It survives the deletion of the project.

The Journal screen, Audit Log tab: Search field, Period “Last 30 days”, Category “Integrity” and a dated audit

What is recorded

The audit log records in particular:

CategoryActions
ProjectsFolder imported, Folder relocated, Project deleted
ArchivesArchive created, Archive verified, Archive restored, Trusted key removed
IntegrityIntegrity audit completed, Integrity audit incomplete, Integrity audit failed, Integrity audit stopped
Storage MediaStorage medium added, Storage medium retired, Storage medium deleted
OffsiteOffsite copy sent, Offsite copy verified, Offsite copy failed verification, Restored from offsite, Offsite copy downloaded, Offsite transfer failed, Offsite destination changed
BackupsDatabase backed up, Database restored
CertificatesCertificate issued, Certificate revoked, Certificate verified, Signing key created, Signing key backed up, Signing key restored from its backup, Signing key retired, Signing key declared compromised, Certificate settings changed

Each line gives the date, the action and its detail (for example the archive’s name, its revision, the number of files, the destination). The detail can be selected to copy it. The database keeps the action and its values, never the sentence: a journal written in French reads in English if the interface switches to English.

A project’s preservation journal records its imports and rescans, its archives, their verifications and restores, and its certificates, with a type: Import, Archiving, Verification, Restore, Certificate…

An action that changes the library (removing or relocating a project, removing a trusted key, adding, retiring or deleting a medium, issuing or revoking a certificate, retiring a signing key or declaring it compromised) is written together with its journal entry: if the journal cannot be written, nothing changes and the error is shown. An action whose result is on disk (an archive created, verified or restored, a database backup, an import) stays done even if its journal entry cannot be written.

Search the journal

  • Search: one or more words (a project or archive name, a certificate number, an action’s name); each word is searched as the start of a word, ignoring case and accents (“helene” finds “Hélène”). The search runs when typing pauses, from two characters on;
  • Period: Last 7 days, Last 30 days, Last 12 months or All;
  • in the audit log, Category: Projects, Archives, Integrity, Storage Media, Offsite, Backups, Certificates;
  • in the preservation journal, Project and Type.

Clear Filters returns to the full list. The screen shows at most the 500 most recent events; narrow the filters to go further back.

A journal that cannot be rewritten

Both journals are written only by appending: the database refuses any change or deletion of a row. Each row also carries the SHA-256 fingerprint of the previous one, so a row changed or removed by going around Vault (by editing the database file) is spotted at the first check of the chain. An audit stopped before the end is recorded as such (“Integrity audit stopped”); it does not count as the last audit.

Deletions of library items (a project, a medium, a destination…) are recorded in an internal register, kept as long as the library exists: Vault never purges it.

The journal and the database backup

The journal is in the database. Restoring a database backup puts the journal back in the state of that backup (see Back up the database); the restore itself is recorded in the restored database.