Changes between Version 11 and Version 12 of Documentatie/Beheerder/Modules/Grouper


Ignore:
Timestamp:
Aug 16, 2012 11:53:38 AM (14 years ago)
Author:
adriaan
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentatie/Beheerder/Modules/Grouper

    v11 v12  
    8787}}} 
    8888   Voer het wachtwoord (als er een is) voor de server key in als dit commando er om vraagt. Verplaats dit bestand naar de OpenAC certificaten directory. 
     89 
     90= Grouper Test Script = 
     91 
     92De naam van dit script is {{{ping-grouper}}}. 
     93 
     94 
     95Dit script test de communicatie met de Grouper van DBC Onderhoud en maakt onderdeel uit van de test-fase van de [wiki:Documentatie/Onderwerpen/DOT aansluiting op de Grouper]. Daarnaast kan het helpen bij het debuggen van communicatieproblemen met de Grouper. De informatie die geldt voor gewone [Documentatie/Beheershandleiding/Scripts scripts] (manier van opstarten, parameters en configuratieinstellingen) geldt ook voor dit script. 
     96 
     97Het script neemt een of meer namen van test-stappen aan en voert die test-stappen uit. De speciale naam ''alle'' zorgt ervoor dat alle zinvolle teststappen uitgevoerd worden, een achter de ander. Het is mogelijk om alleen sommige stappen uit te voeren door (bijvoorbeeld) ''key test0'' als argumenten mee te geven. 
     98 
     99De verschillende test-stappen worden hieronder beschreven. 
     100 
     101 - ''cert'' Controleer of het server-certificaat voor de Grouper correct is geinstalleerd. 
     102 - ''https'' Gebruik een standaard HTTPS verbinding, met de proxy-instellingen van OpenAC, om een verbinding met de Grouper te maken en de webpagina op te vragen. 
     103 - ''openssl'' Gebruik OpenSSL om, buiten OpenAC om en zonder de proxy instellingen te gebruiken, een verbinding met de Grouper te maken. 
     104 - ''key'' Vraag de hash-code sleutel aan de Grouper. Dit vereist wel dat er communicatie mogelijk is en dat de certificaten goed zijn geinstalleerd. 
     105 - ''test0'' Teststap 0 uit de formele test-procedure voor aansluiting op de Grouper. Hiermee wordt nogmaals het HL7-versie3 protocol getest en de beschikbaarheid van de Grouper. 
     106 - ''test0.5'' Dient een enkel financieel traject (subtraject) in bij de Grouper en leidt een product af. 
     107 - ''test1'' Teststap 1 uit de formele test-proceudre voor aansluiting op de Grouper. Er worden standaard-voorbeeld casussen aan de Grouper aangeboden. Deze testen of de gegevens (URA, UZI) in OpenAC goed zijn ingevuld, of de communicatie goed verloopt en of de Grouper reageert zoals verwacht. Voor uitleg over het interpreteren van de uitvoering van de test, [#GrouperTestFase1 zie hieronder]. Deze stap is nodig voor het ondertekenen van de testverklaring voor DBC-Onderhoud. 
     108 - ''test2'' Ketentest waarbij test-producten worden aangemaakt, gebundeld en aangeboden door  
     109 
     110=== Tests Algemeen === 
     111 
     112De tests zijn afkomstig uit het document van DBC-Onderhoud "[http://www.dbconderhoud.nl/index.php?option=com_docman&task=doc_download&gid=3304&Itemid=32 testprocedure technische aansluiting]" (links op de DBC-O site worden vaak veranderd, dit hoeft niet meer de actuele versie te zijn). De casussen zelf zijn te vinden in een document "Casussen Grouper". De tekst van de casussen zoals verspreid in november 2011 is te vinden in de broncode van de tests voor de Grouper in OpenAC, in {{{kern/e080_grouper/unittests.py}}}. 
     113 
     114De uitvoer van de tests van de grouper komen te staan in het log bestand {{{ping-grouper.log}}}, bij de andere logfiles in de OpenAC configuratiemap. 
     115 
     116=== Grouper Test Fase 0 === 
     117 
     118Deze fase test of de verbinding via Internet met de Grouper tot stand kan komen. Als er problemen met de certificaten van de Grouper zijn, zal je dat hier ontdekken. Indien de instructies hierboven over het certificaat aanvragen zijn opgevolgd, ziet de uitvoer van {{{Python25\python.exe script.py test0}}} er ongeveer zo uit: 
     119 
     120{{{ 
     121INFO:root:Begin ping-grouper 
     122INFO:openac:Tick-tock test naar DBCO Grouper acceptatie.dbcogrouper.nl begin. 
     123INFO:openac:TESTSTAP 0: 
     124DEBUG:openac.grouper:Opvragen Grouper certificaat voor AGB 99001020 
     125DEBUG:openac.grouper:Grouper connectie acceptatie.dbcogrouper.nl:443 (geen proxy) 
     126INFO:openac:Tick-tock response '33350654_000001' op 'OK' 
     127INFO:openac:Tick-tock naar DBCO Grouper acceptatie.dbcogrouper.nl is succesvol verlopen. 
     128INFO:openac:TESTSTAP 0: OK 
     129}}} 
     130 
     131In andere gevallen volgt meestal informatie over de oorzaak van de fout: onbrekende certificaatbestanden of een weigering van de Grouper (in welk geval de proxy of uitgaande IP-adressen wellicht het achterliggende probleem zijn). 
     132 
     133=== Grouper Test Fase 1 === 
     134 
     135Het eigenlijke aanbieden van subtrajecten aan de grouper kan met ''test1'' van het ''ping-grouper'' script. Voer het zo uit in de installatiedirectory van OpenAC v2: 
     136 
     137{{{ 
     138Python25\python.exe script.py ping-grouper test1 
     139}}} 
     140 
     141Dit script gaat proberen om de formele test-set van DBC-O aan te bieden aan de grouper. ''Voordat'' je de test uitvoert, controleer de volgende zaken: 
     142 - switch ''test_grouper'' moet '''uit''' staan, 
     143 - switch ''gebruik_acc_grouper'' moet '''aan''' staan, 
     144 - switch ''debug_grouper'' mag aan of uit; als het aan staat zal je veel bestanden met XML krijgen die betrekking hebben op de communicatie met de grouper. 
     145 - je hebt je URA en UZI nummers ingevuld in de codetabel ''agb_locatie'' (ga naar startscherm, codetabellen, kies onder d010_systeem de tabel AGB locatie en vul ze daar in). 
     146 - de tests ''key'' en ''cert'' en ''test0'' gaan goed. 
     147 
     148Na het uitvoeren van het script heb je in je log-directory (waarschijnlijk is dat {{{.openac}}}) een bestand {{{grouper-fase1.log}}}. Hierin staat wat de test uitvoert. In de bovenste paar regels staat informatie over de gebruikte instellingen: 
     149 
     150{{{ 
     151Start DOT-Grouper test fase1 
     152      DOT-Grouper test op basis van DBC-Onderhoud document 
     153      'Testprocedure voor technische aansluiting op de grouper 
     154      voor zorginstellingen en ICT-leveranciers' v20110401. 
     155Centrum AGB 19009332, URA None, UZI None Test Nee 
     156      Centrumdata is onvolledig (UZI en URA nummers verplicht). 
     157}}} 
     158 
     159Hier zien we alvast een waarschuwing dat de gegevens niet volledig zijn (''Centrumdata is onvolledig''). Vul in dat geval de data in. 
     160 
     161De log file vervolgt met een heleboel test-gevallen met allemaal dezelfde structuur: 
     162 
     163{{{ 
     164Start test test_NN_achternaam 
     165  <extra uitvoer> 
     166  * Casus <toestand> 
     167}}} 
     168 
     169Veel van de casussen zijn niet van toepassing op Audiologie en zeggen ook waarom dat is. De resterende casussen 1 en 8 (die twee zijn wel van toepassing) moeten {{{* Casus OK}}} zeggen.  
     170 
     171Casus 2 is niet van toepassing en ziet er zo uit: 
     172{{{ 
     173Start test test_02_pietersen 
     174  * Casus niet van toepassing (geen IC) 
     175}}} 
     176 
     177Casus 1 is wel van toepassing en kan zoiets produceren: 
     178{{{ 
     179Start test test_01_jansen 
     180  Traject wordt afgesloten als 08 
     181  ** Afsluiting resultaat 
     182     Zorgproduct  991900013 
     183     Grouper Hash <random> 
     184  Product is 11/11/12 991900013 
     185  * Casus OK. 
     186}}} 
     187Hier zien we het begin van de casus, wat tussendoor informatie en een bevestiging dat de casus goed is verlopen. Hiermee zien we dat het mogelijk is om een 11/11/12 (AP101) aan de grouper aan te bieden. Daarmee weten we dat communicatie met de grouper en het ophalen van gegroupeerde producten werkt! 
     188 
     189Sommige tests controleren op verwachte fouten; dan geeft de grouper een melding terug en die zou je te zien moeten krijgen. In de logfile  {{{grouper-fase1.log}}} staat niet de hele melding, maar alleen de controle dat de melding wordt gevonden: 
     190{{{ 
     191Start test test_10_vriens 
     192  Verwachte foutmelding 'DBC004' gevonden. 
     193  Verwachte foutmelding 'heeft geen valide datum' gevonden. 
     194  * Casus OK. 
     195}}} 
     196 
     197Als je wilt weten hoe dat in het "echt" er uit ziet voor de gebruiker, dan kan je in {{{sessie.log}}} kijken. Zoek naar DBC004 en daar heb je een aantal regels met WARNING en de grouper foutmeldingen. Binnen OpenAC zouden deze regels als rode waarschuwingen verschijnen in het meldingen-paneel. (Merk op dat dit om dingen gaat als "je hebt nul juli ingevuld als begindatum", OpenAC houdt dat zelf al tegen dus de fout-casussen zijn niet heel relevant). 
     198 
     199Caussen 12 (de Wit) t/m 34 (van Dalen) zijn allemaal fout-casussen die niet zijn geimplementeerd. Die geven geen verdere meldingen. 
     200 
     201Als de switch ''debug_grouper'' aanstaat, of wanneer er fouten optreden in de communicatie met de grouper, dan worden de berichten die gestuurd zijn en die ontvangen worden opgeslagen onder de ''bestanden_dir'' van OpenAC (dit kan je terugvinden in het instellingenscherm). Er wordt een directory {{{grouper/}}} aangemaakt en '''daar''' onder weer een directory met de datum. Elk bericht wordt als ''sent'' of ''recv'' (ontvangen) opgeslagen, met een volgnummer. 
     202 
     203Deze bestanden worden vooralsnog niet opgeruimd. 
     204 
     205=== Test Fase 2 === 
     206 
     207Als je ''test2'' draait, dan probeert het test-script ook dingen te bundelen en een VEKTIS bestand te schrijven en een DIS bestand aan te maken. In de log-file staan de locaties waar deze bestanden terecht komen (merk op! dat is, tenzij je ''bestanden_dir'' en dergelijke hebt aangepast, misschien op dezelfde network share als OpenAC v1 dingen doet, en je zou dus OpenAC v1 in de weg kunnen zitten hiermee).