Stream: OpenHIE
Topic: Instant on Azure
Carl Leitner (May 10 2021 at 17:41):
@Richard Stanley @Luke Duncan @Ryan Crichton @Matthew Dickie @Daniel Futerman
Carl Leitner (May 10 2021 at 17:41):
let's sort out Instant on Azure here
Carl Leitner (May 10 2021 at 17:41):
FYI: here are some install notes from a recent project https://docs.google.com/document/d/1zSg4vHWev5azR3ztthlg7gNKlVax5u98-iN8qbs2G1U/edit
Richard Stanley (May 10 2021 at 17:41):
thanks @Carl Leitner I'll have look as well this week
Carl Leitner (May 11 2021 at 12:22):
@Ryan Crichton @Matthew Dickie any updates on Azure?
Daniel Futerman (May 11 2021 at 13:58):
@Carl Leitner Not sure if there's been any private chats on this, but if possible to provide access to the Azure instance for Ryan (ryan@jembi.org) and Matt (matthew.dickie@jembi.org) we can try troubleshoot on there. We also discussed that it may be useful to have a brief call to talk through the use case for context setting, this may help woth advice on what's needed/not needed in Instant OpenHIE. e.g. I think there were some issues with the file queue mediator, but this may not be needed unless there's integration with DHIS2.
Daniel Futerman (May 11 2021 at 13:59):
I got a lot of that context on the call we had, but would be useful for Ryan and Matt to understand that better
Richard Stanley (May 12 2021 at 19:03):
Thanks @Carl Leitner for the recipe. Cluster setup works, I tried core but one of the mongo replicas didn't come up. I'll troubleshoot a bit more. Perhaps we could keep useful recipes for instant in the IG itself. So, something like 'instant' or 'demo' or some such as a tab header which refers to a markdown document of the directions to install the basics in instant core. Just throwing out ideas.
Richard Stanley (May 12 2021 at 19:05):
Otherwise we can keep IG demo stuff in the instant repo but we're moving away from hosting everything in the instant repo, preferring to have external packages hosted elsewhere. And, that could easily apply to IGs. Cc @Daniel Futerman @Matthew Dickie @Ryan Crichton for thoughts.
Ryan Crichton (May 14 2021 at 09:26):
Just to follow up on the specific error about the file-queue it appears to be causes by this from the covid-19-surviellence package:
kubectl logs pod/covid19-surveillance-file-queue-deployment-66d6cd7dd6-wkwmc
> openhim-mediator-file-queue@4.0.3 start /opt/openhim-mediator-file-queue
> node lib
2021-05-14T09:19:29.883Z - error: Could not register mediator Error: connect ECONNREFUSED 127.0.0.1:8080
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! openhim-mediator-file-queue@4.0.3 start: `node lib`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the openhim-mediator-file-queue@4.0.3 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2021-05-14T09_19_29_944Z-debug.log
It was looking for OpenHIM on localhost.
From looking at the latest code this seems like it should be fixed. Maybe try again with the latest config.
Carl Leitner (May 14 2021 at 19:37):
thanks for checking on this
Carl Leitner (May 14 2021 at 19:45):
@Luke Duncan started a mediator - I hope we can get some support next week to pull that into instant openhie. it's just stubbed out at the moment https://github.com/who-int/svc-transactions-mediator
Luke Duncan (May 14 2021 at 20:07):
I'll work on the kubernetes set up for that next week. and I'll update the covid19surv package and try it again. Thanks!
Richard Stanley (May 14 2021 at 20:53):
Where's the covid19surv package? happy to help with the instant stuff
Doh. Yeah, ok.
Carl Leitner (May 18 2021 at 11:58):
@Ryan Crichton we have a mediator (or two) that we need to add to core for the SVC stuff. if we potentially ignore the kubernetes packaging of the mediators for a moment, what's the easiest route in your experience to get add mediators on top of core?
Carl Leitner (May 18 2021 at 11:59):
put the mediator in a docker container....?
Richard Stanley (May 18 2021 at 14:02):
Containerization should be easy. See this one for iHRIS which has a bunch of env vars that are configurable either at buildtime or runtime. https://github.com/iHRIS/iHRIS/blob/master/ihris-backend/Dockerfile Let me know if you want support.
Ryan Crichton (May 18 2021 at 14:04):
Yup, the easiest thing would be to create a docker container and follow the steps to add it to instant OpenHIE - see docs here https://openhie.github.io/instant/docs/how-to/creating-packages
You would need them in docker containers for Kubernetes as well anyways.
Richard Stanley (May 18 2021 at 14:45):
@Carl Leitner will your mediators access HAPI through OpenHIM?
Carl Leitner (May 18 2021 at 15:50):
Yes (if I understand your question). @Luke Duncan is working on them today.
Richard Stanley (May 18 2021 at 16:06):
great. don't make the same mistake I did recently, ensure if you're trying to through OpenHIM for HAPI in Instant to use custom auth, e.g. 'curl -v -H "Authorization:Custom test" http://localhost:5001/fhir/Patient'
Richard Stanley (May 18 2021 at 16:08):
Also @Carl Leitner I see errors in loading the NPM package for SVC IG rc2-umbrella branch into HAPI. When are you merging RC2 into a release/master?
Carl Leitner (May 18 2021 at 17:39):
i am not sure the exact expected publication date for RC2... some time in the next two weeks I think
Carl Leitner (May 18 2021 at 17:39):
was the load error due to bad URLs b/c of refs/heads/rc2-umbrella?
Richard Stanley (May 18 2021 at 18:27):
I don't know. The errors are with the intl patients/imm/orgs I added it seems but not sure why. Here's a pastebin: https://pastebin.com/N46iuNVU
Richard Stanley (May 18 2021 at 18:28):
Those example resources passed Sushi of course.
Jose Costa Teixeira (May 18 2021 at 18:36):
I think there's an error
Jose Costa Teixeira (May 18 2021 at 18:36):
this seems an error in types.
Richard Stanley (May 18 2021 at 19:34):
Thanks @Jose Costa Teixeira The majority of problems were indeed references.
Richard Stanley (May 18 2021 at 19:35):
@Jose Costa Teixeira ahh, you just pushed a fix for one of them an hour ago. I think I caught the rest. Thanks!
Jose Costa Teixeira (May 18 2021 at 19:36):
i was doing some of the others but indeed now there is a conflict
Jose Costa Teixeira (May 18 2021 at 19:36):
to confirm:
french, russian, chinese and spanish examples are missing a -Example in the patient reference
Richard Stanley (May 18 2021 at 19:37):
Yes, just pushed a PR after yours that covers those, plus a reference in a QR
Jose Costa Teixeira (May 18 2021 at 19:37):
also found these (sorry for screenshot)
Jose Costa Teixeira (May 18 2021 at 19:37):
Jose Costa Teixeira (May 18 2021 at 19:38):
and this is also showing up in the QA: image.png
Jose Costa Teixeira (May 18 2021 at 19:38):
other than that, there are still some QA errors, i don't know if that is going to let it build
Richard Stanley (May 18 2021 at 19:38):
Ok. So, I covered the references in multilang examples but not those too screencapts except for QR
Jose Costa Teixeira (May 18 2021 at 19:39):
https://who-int.github.io/svc/refs/heads/rc2-umbrella/qa.html
Jose Costa Teixeira (May 18 2021 at 19:40):
Richard Stanley (May 18 2021 at 19:41):
thanks. let me work through some of those.
Jose Costa Teixeira (May 18 2021 at 19:44):
these are mostly syntax issues. Let me know if I can help further
Richard Stanley (May 18 2021 at 19:58):
Hmm. I'm back already. So, occurrence in immunization is referenced like so:
-
occurrence[x] only dateTime
This is used in an instance like so: -
occurrenceDateTime = "2021-02-02"
That is successful. However the positiveInt required for this:
Immunization.protocolApplied.doseNumber[x]
Doesn't take that syntax, e.g. this fails:
- protocolApplied[protocolAppliedAuthority].doseNumberpositiveInt = 1
.positiveInt also fails. Do you spot the syntax issue that eludes me?
Jose Costa Teixeira (May 18 2021 at 20:59):
isn't the P uppercase?
Jose Costa Teixeira (May 18 2021 at 20:59):
doseNumberPositiveInt?
Jose Costa Teixeira (May 18 2021 at 21:00):
(just a guess before looking at documentation)
Richard Stanley (May 18 2021 at 21:08):
Yes sir, seems fixed. Thanks. So in FHIR docs its camelCase. I don't see in FSH docs the reference to it but happy for a reference.
Jose Costa Teixeira (May 18 2021 at 21:11):
https://build.fhir.org/ig/HL7/fhir-shorthand/reference.html#data-type-choice-x-paths
Richard Stanley (May 18 2021 at 21:13):
"replace the [x] with the data type name, capitalizing the first letter". Exactly what was needed. Thanks!
Richard Stanley (May 18 2021 at 21:16):
So much closer. However, I can't see all the errors because the IG build won't finish (though Sushi passes). The blocking error in publisher is "java.lang.Exception: Error parsing /Users/richard/src/github.com/who-int/svc/fsh-generated/resources/OperationDefinition-SHC-QuestionnaireReponse-generateHealthCertificate: Unknown FHIRAllTypes code 'SHC_Binary_QRPNG'"
Jose Costa Teixeira (May 18 2021 at 21:17):
sushi rather raw,
Jose Costa Teixeira (May 18 2021 at 21:17):
so it doesn't do the validation you get from the publisher
Richard Stanley (May 18 2021 at 21:18):
SHC_Binary_QRPNG is indeed defined in shc-binary.fsh
Richard Stanley (May 18 2021 at 21:20):
Publisher is breaking on the SHC_Binary_QRPNG. Hmm. Ok, so that is not part of FHIRAllTypes of course but Publisher expects it to be.
Jose Costa Teixeira (May 18 2021 at 21:26):
I don't see the link to FHIRAllTypes..
Jose Costa Teixeira (May 18 2021 at 21:28):
the one thing I do find missing is the contentType in SHC_Binary_QR
Jose Costa Teixeira (May 18 2021 at 21:28):
but that is a profile so it is not important to constrain
Richard Stanley (May 18 2021 at 21:39):
Screen-Shot-2021-05-18-at-17.39.28.png
Richard Stanley (May 18 2021 at 21:40):
I see content type in SHC_Binary_QRPNG but not the parent. I'll try adding it to the parent and see what happens
Jose Costa Teixeira (May 18 2021 at 21:40):
you don't have to
Richard Stanley (May 18 2021 at 21:41):
well, that won't work. the parent doesn't define it's content type bc each child has their own
Richard Stanley (May 18 2021 at 21:41):
Publisher is erroring out on it.
Jose Costa Teixeira (May 18 2021 at 21:42):
what's the error?
Richard Stanley (May 18 2021 at 21:43):
Hmm. let me merge with the rc2-umbrella and see where I'm at. Error is: "Publishing Content Failed: Error parsing /Users/richard/src/github.com/who-int/svc/fsh-generated/resources/OperationDefinition-SHC-QuestionnaireReponse-generateHealthCertificate: Unknown FHIRAllTypes code 'SHC_Binary_QRPNG' (00:29.0148)"
Richard Stanley (May 18 2021 at 21:46):
The publisher errors as above. Steps I tried: merged with latest rc2-umbrella (my branch is off of there), updated publisher + scripts, ran genonce.
Richard Stanley (May 18 2021 at 21:47):
Stack Dump (for debugging): (00:29.0417)
java.lang.Exception: Error parsing /Users/richard/src/github.com/who-int/svc/fsh-generated/resources/OperationDefinition-SHC-QuestionnaireReponse-generateHealthCertificate: Unknown FHIRAllTypes code 'SHC_Binary_QRPNG'
at org.hl7.fhir.igtools.publisher.Publisher.load(Publisher.java:4409)
at org.hl7.fhir.igtools.publisher.Publisher.loadConformance(Publisher.java:3904)
at org.hl7.fhir.igtools.publisher.Publisher.createIg(Publisher.java:890)
at org.hl7.fhir.igtools.publisher.Publisher.execute(Publisher.java:745)
at org.hl7.fhir.igtools.publisher.Publisher.main(Publisher.java:8577)
Caused by: org.hl7.fhir.exceptions.FHIRException: Unknown FHIRAllTypes code 'SHC_Binary_QRPNG'
at org.hl7.fhir.r5.model.Enumerations$FHIRAllTypes.fromCode(Enumerations.java:4315)
at org.hl7.fhir.convertors.conv40_50.OperationDefinition40_50.convertOperationDefinitionParameterComponent(OperationDefinition40_50.java:201)
at org.hl7.fhir.convertors.conv40_50.OperationDefinition40_50.convertOperationDefinition(OperationDefinition40_50.java:88)
at org.hl7.fhir.convertors.VersionConvertor_40_50.convertResource(VersionConvertor_40_50.java:3584)
at org.hl7.fhir.igtools.publisher.Publisher.parseContent(Publisher.java:4763)
at org.hl7.fhir.igtools.publisher.Publisher.parse(Publisher.java:4814)
at org.hl7.fhir.igtools.publisher.Publisher.load(Publisher.java:4405)
Jose Costa Teixeira (May 18 2021 at 21:57):
i don't get that nor do I see how that is there - the operationDefinition does not mention the SHC_Binary_QRPNG
Jose Costa Teixeira (May 18 2021 at 21:59):
you may want to fix this
https://github.com/who-int/svc/blob/rc2-umbrella/input/fsh/svc-questionnaire.fsh#L2
Jose Costa Teixeira (May 18 2021 at 21:59):
the https://OA is strange
Richard Stanley (May 18 2021 at 22:03):
It's a strange publisher error. I can add the OA typo fix to my PR, but fixing it does not banish the above error (I don't know if you intended it to.)
Jose Costa Teixeira (May 18 2021 at 22:03):
the error you have is not making any sense. what branch are you on?
Jose Costa Teixeira (May 18 2021 at 22:03):
rc2? rc2-umbrella?
Richard Stanley (May 18 2021 at 22:05):
yes, rc2-umbrella. FYI https://github.com/who-int/svc/pull/46
Jose Costa Teixeira (May 18 2021 at 22:07):
ok so you wer in another branch
Jose Costa Teixeira (May 18 2021 at 22:07):
patient-intl
Jose Costa Teixeira (May 18 2021 at 22:09):
in shc-generate-operation.fsh,
Richard Stanley (May 18 2021 at 22:09):
Oh, sorry, yeah, I'm not making direct commits to rc2-umbrella, though my branch is based on it and not main
Jose Costa Teixeira (May 18 2021 at 22:09):
lines 39 and 46,
Jose Costa Teixeira (May 18 2021 at 22:09):
code cannot be #SHC_Binary_QRContent#SHC_Binary_QRContent
Jose Costa Teixeira (May 18 2021 at 22:09):
must be #Binary
Richard Stanley (May 18 2021 at 22:13):
Yes, that was it. rc2-umbrella now passes! Thanks. And, of course there are some more errors :) But a QA report is good news.
Last updated: Apr 12 2022 at 19:14 UTC