Eksportere Asta5-baser med Ingest

Sist oppdatert for: Ingest 1.63

 

Asta ingest er et verktøy som eksporterer data fra Asta5 til Asta7. Verktøyet kan hente ut arkivenheter, magasinstruktur, bestillinger (best å gjøre i én operasjon) og filer i hele baser, eller eksportere ut enkeltarkiver.

Ingest konfigureres opp mot en kjørende Oracle-database og Jboss server for å få tilgang til data. For å kunne hente ut filer, må Ingest bruke en tilgjengelig brukers innlogging (se Application.yml ).

Ingest krever java 17 eller nyere. Dersom en annen versjon av java ligger i java path, må det spesifiseres at ingest skal kjøre i en annen versjon av java som er installert (se run.sh ).

Legg godt merke til tekst merket med rødt!

 

Innhold

Ingest kommer i en .zip-fil som inneholder:

  • Application.yml

  • Asta-ingest.versjon.jar

  • Run.bat

  • Run.sh

ingest-1.png

 

Mappen log dukker opp etter første eksport og inneholder loggfiler fra eksportene. Her vil man finne en del problematisk metadata som ingest fanger opp.

  • Feilmeldinger (ERROR) vil dukke opp i grensesnittet under eksporten. (Se Statusvindu)

  • Advarsler (WARN) vil dukke opp i loggen, men ikke i grensesnittet. Disse kan være like problematiske for importen på grunn av feilverdier som blir generert fra disse feilene.

 

Asta-ingest.versjon.jar

Selve applikasjonen.

 

Application.yml

Konfigureringsfil, inneholder følgende:

 

Linje 8 settes til enabled : true

Linje 10 er Jboss-serverens adresse og port – kan slås opp i fila \ASTA5\klient\innstillinger.properties

 

Linje 11 endres til en gyldig innlogging med tilgang til filer dersom det skal hentes ut filer fra fillageret. Bruk brukere med sysadm-brukergruppe her.

Syntaks er: DEPOTINST:BRUKER:PASSORD

For å legge inn innlogging til flere brukere samtidig, for eksempel ved uthenting av filer i flere depotinstitusjoner brukes komma-separering:

DEPOTINST:BRUKER:PASSORD,DEPOTINST:BRUKER:PASSORD,DEPOTINST:BRUKER:PASSORD

 

Linje 13 er databasens adresse – kan slås opp i fila \ASTA5\jboss-as-7.2.0.Final\standalone\configuration\standalone-full.xml (NB! i denne fila vil databasenavnet alltid stå med : foran)

 

Hvis basen er en pluggable database i en container database (multitenant setup), bruk kolon : i stedet for skråstrek / før databasenavnet i application.yml

/basenavn (normal)

:basenavn (pluggable)

 

Run.sh

Shell script med referanse til Java.

 

Dersom en eldre versjon enn Java17 eller nyere allerede er installert og ligger i Java path, eller at java ikke finnes, må referansen java endres til en Java.exe-fil, med full sti:

 

Run.bat

Starter applikasjonen og må kjøre hele tiden så lenge man skal bruke Ingest. Prosessen har startet opp når den nevner at AstaIngestApplication ble startet på X sekunder.

Grensesnitt

Når prosessen har startet opp og vinduet til Run.bat viser «Started AstaIngestApplication in X seconds» åpner du en nettleser og går til adresse http://localhost:7000.

 Trykk deretter på Export from Asta5. Du får opp dette vinduet:

Avhengig av hvilke knapper som skrus av og på, vil man få litt ulike felter å jobbe med.

 

 

Archive units

er arkivenheter på alle nivåer av strukturen (innhold i tabellen ARKIVENHET i Asta5)

  • Archive units må være på for at repository og requisition skal kunne hente ut noe data (grensesnittet tillater at kun repository er skrudd på, men den vil da hente ut tomme XML-filer. Se repository.)

  • Asta5 institute lar deg sortere ut innholdet fra én av depotinstitusjonene som finnes i basen.

  • Dersom Archive units er på, og feltet Archive Identifiers er tom, vil Ingest hente ut alle arkivene i basen.

  • Dersom det fylles inn gyldige identifikatorer i Archive Identifiers, vil Ingest kun hente ut disse. Det må trykkes enter for å legge til en identifikator, slik at det blir en liten boks:

NB! – Ingest validerer ikke disse, så identifikatorer som ikke finnes i basen vil fremdeles eksporteres, men da som tomme XML-filer.

Ved eksportering av enkeltarkiver, må modusen Single Archive benyttes. Enkeltarkiver mangler en referanse til rotnode dersom dette gjøres med Archive units-eksport. Dette gjør at de ikke kan importeres med høyreklikk → importer enkeltarkiv.

 

Prepend Institute ID with Archive Identifier legger til depotinstitusjonsID som prefiks på arkivenes identifikator. Arkiv A-1000 i depotinstitusjon ASTA blir da til ASTA-A-1000. Dette er for institusjoner som har operert med flere separate depotinstitusjoner i basen, og skal samle innholdet i én base.

 

Single Archive

henter ut ett enkeltarkiv man har en identifikator til. I denne modusen går det ikke an å trykke enter for å legge inn identifikator.

 

Files

henter ut filer fra fillageret Jackrabbit-2.2. Hvor fillageret ligger er definert i \ASTA5\jboss-as-7.2.0.Final\standalone\configuration\standalone-full.xml. Dersom man ikke har en gyldig innlogging i application.yml, vil forsøkene på å eksportere filene få litt ulike feilkoder avhengig av hva som er feil:

  • 401 Unauthorized from GET – Brukernavn og/eller passord er feil

  • No bean named 'asta5WebClient.XXX' available (der XXX er depotinstitusjonskode) – Depotinstitusjonen er feil

  • 404 Not Found from GET - fila eksisterer ikke lenger i fillageret, men ligger som som referanse i datasettet

Andre problemer gis gjerne en uspesifisert 500 error og en forklaring på at Ingest ikke kunne hente ut innholdet.

  

Repository

henter ut magasinstyringsmodulen. Den legger til feltene Organization Name, Project ID og Asta7 URL. Organization Name og Project ID må fylles ut for å starte eksporten, men informasjonen i disse feltene kan overstyres i importen til Asta7.

XML-filene for magasinstyringen havner i mappe data\repository i datapakken.

 

 

Requisition

henter ut bestillinger og aktiverer de samme tilleggsfeltene som repository, men krever ikke at disse er fylt ut for å starte eksporten.

Dersom Archive Units ikke er på, vil ikke Requisition kunne skrus på.

XML-filene for bestillinger havner i mappe data\requisition i datapakken.

 

Statusvindu

Vinduet viser prosentvis fremgang, antall eksporterte arkivenheter og totalt antall arkivenheter som eksporteres, samt tidsbruk. Eventuelle feilmeldinger listes opp under Failures. (Antallet opplistede feil vil ikke alltid samsvare med telleverket her)

Nedlastingsknappen til høyre kopierer alle feilmeldingene til utklippstavle.

 

Kritiske feil

(Introdusert i versjon 1.58)

Dersom ingest oppdager problemer med dataintegriteten som vil forhindre import til Asta7, vil den stanse importen og gi en feilmelding med en forklaring og noen ganger en SQL-spørring for å finne problemet i Oracle-basen. Eksempler på ting ingest sjekker er:

  • Leading og trailing zeros i magasinstyringen

  • Datatype i magasinstyring (skal kun være integers)

  • Padded whitespacing

  • Inkonsistens mellom hyller og lagringsenheter

  • Orphans eller referanser til slettede rader

Merk at noen problemer kan være så like at de utløser en bestemt feilmelding, men at feilmeldingens spørring ikke finner noen rader i databasen. Ved slike tilfeller kreves en grundigere undersøkelse av hva som er galt med datasettet. Ingest kan ikke utvikles til å kjenne igjen og løse alle typer problemer, men de som oftest dukker opp kan tas hensyn til.

 

Problemer med tilkoblingsprotokoll vil også kunne forhindre en eksport. Feilmeldingen vil være:

Selected protocol version TLSXX is not accepted by client preferences

For å løse denne, gå til fila java.security som ligger i java-installasjonens mappe \conf\security\ og finn følgende linje:

jdk.tls.disabledAlgorithms=SSLv3,TLSv1, TLSv1.1 RC4, DES, MD5withRSA, \
DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL

Tekst markert med rødt fjernes. Lagre fila.

Eksportfil

(Datostempling kom i versjon 1.63)

Når eksport er ferdig, sendes nedlastingsfil som .zip med navnet asta7-data.yyyyDDmm-klokkeslett til nedlastingsmappa.

 

Hvis eksporten er veldig stor, kan det hende det tar veldig lang tid å få fila sendt til nedlastinger. Den kan da hentes manuelt i temp-mappe for den brukeren man er logget inn som:

C:\Users\BRUKER\AppData\Local\Temp\

Filnavnet er en streng på 18 forskjellige tall:

Fila inneholder mapper med XML-filer avhengig av hvilke moduser man har aktivert:

 

 

  • Content inneholder arkivenheter, aktører, aksesjoner og relatert metadata

  • Digital-file inneholder filer som er hentet ut fra fillageret

  • Repository inneholder magasinstyringen

  • Requsition inneholder bestillinger

 

XML-filene importeres inn i et prosjekt med sys-admin via admin → prosjekt → importer filer.

 

Import til Asta7

  • Installer siste versjon av Asta 7

  • Laste opp siste eksport av alt fra Asta 5 til Asta 7 instansen (på Docker vertsmaskin)

  • Endre passord på sys_admin og admin

  • Slette testbruker

  • Rotere nøkler

  • Endre app secrets

  • Legge inn rett URL for redirects

  • Omstart for å oppdatere secrets

  • Legge inn siste ISAD(G) template

  • Opprett organisasjon - F.eks. Min Organisasjon

  • Opprette isadg prosjekt og kjør init - Prosjekt navn: Min Organisasjon/isadg

  • Importere standard kodetabeller

  • Importer GUI innstillinger

  • Importer innhold

  • Legge inn tilpassede restriksjoner ved behov

  • Importer filer - cp fungerer ikke på stort innhold benytt - sudo rsync -avzh --inplace /data/uploads/data/digital-file/ /data/am-import-folder/am-project/isadg/hot/digital-file/

  • Importere bestillingshistorikk

  • Importere magasinstrying

  • Sette opp SSO