Custom microservices

Uit Wiki Memorix Archieven

Archivematica is opgebouwd uit microservices. Een microservice is een programmaonderdeel dat één taak van de ingest procedure voor zijn rekening neemt. Een paar voorbeelden van standaard microservices die in Archivematica zitten zijn

  • het herkennen van bestandsformaten
  • het scannen op virussen
  • het maken van een METS bestand met informatie over de stappen die tijdens de ingest zijn uitgevoerd
  • et cetera, et cetera

Alle microservices gezamenlijk vormen de procedure voor transfer en ingest. Het mooie van zo'n opzet in microservices, is dat je vrij eenvoudig nieuwe microservices kan toevoegen (of overbodige stappen kan overslaan).

Picturae heeft, in samenwerking met haar gebruikers, een aantal extra microservices ontwikkeld voor het ondersteunen van de procedure van ingest. Dit zijn:

  • Validate RIP/ToPX against schemas: controleert of de ToPX XML die onderdeel is van de Transfer, valideert tegen het RIP/ToPX Schema.
  • Validate ToPX hierarchical relations: controleert of de hiërarchische verwijzingen in het ToPX bestand (zoals de verwijzing van een record naar het bovenliggende dossier) kloppen.
  • Validate RIP/ToPX against Memorix Archives. Controleert of er in Memorix Archieven een archief bestaat waar de ingest aan gekoppeld kan worden. Deze microservice controleert ook of de bestanddelen (recorde in ToPX) niet reeds bestaan in Memorix Archieven.
  • Validate RIP/ToPX package contents: controleert of voor elk bestand dat in de ToPX genoemd wordt, ook een bestand aanwezig is in de upload directory. Omgekeerd wordt ook gecontroleerd, of voor elk bestand in de upload directory een verwijzing bestaat in het ToPX bestand.
  • Validate files checksums with ToPX: berekent voor elk aangeleverd bestand de checksum en controleert deze met de checksum van dat bestand in de ToPX metadata.
  • Validate ToPX duplicate id: controleert of de ToPX geen dubbele identifiers bevat.

Deze microservices worden uitgevoerd aan het begin van de transfer, als onderdeel van de stap Verify transfer compliance. Als één van deze controles faalt, wordt de transfer afgebroken en wordt een e-mail verstuurd naar de beheerder.

Een microservice die faalt, wordt rood getoond in het Dashboard. Als je op het tandwieltje achter de microservice klikt, krijg je een pagina te zien met de uitkomst van die microservice. Als één van de custom microservices faalt, wordt die wel altijd afgemaakt. Dus als in een ToPX bestand meerdere bestanden ontbreken, zal de microservice "Validate RIP/ToPX package contents" alle ontbrekende bestanden rapporteren.


  • checkTopXFileValidity.pdf
  • checkDIPMemorixArchives.pdf
  • checkToPXChecksums.pdf
  • checkToPXDuplicateId.pdf
  • checkToPXHierarchicalRelations.pdf