Fouten oplossen met behulp van de MedTech-servicelogboeken
Notitie
Fast Healthcare Interoperability Resources (FHIR®) is een open gezondheidszorgspecificatie.
Dit artikel bevat stappen voor probleemoplossing en oplossingen voor fouten die zijn gevonden in de MedTech-servicelogboeken.
Tip
Toegang tot MedTech-servicelogboeken is essentieel voor het oplossen van problemen en het beoordelen van de algehele status en prestaties van uw MedTech-service.
Ernst van medTech-servicefout
Deze eigenschap vertegenwoordigt de ernst van de opgetreden fout. Hier volgt een lijst met mogelijke waarden voor deze eigenschap:
Ernst | Beschrijving |
---|---|
Niet-blokkerend | Er is een probleem in het gegevensstroomproces, maar de verwerking van apparaatberichten stopt niet. |
Blokkering | Er is een probleem in het gegevensstroomproces en er wordt verwacht dat er geen apparaatberichten worden verwerkt. |
Bewerking die wordt uitgevoerd door de MedTech-service
Deze eigenschap vertegenwoordigt de bewerking die wordt uitgevoerd door de MedTech-service toen de fout optrad. Een bewerking vertegenwoordigt over het algemeen de gegevensstroomfase waarin een apparaatbericht wordt verwerkt. De gegevensstroomfase wordt in de foutenlogboeken weergegeven als OperationName. Hier volgt een lijst met mogelijke waarden voor deze eigenschap:
OperationName | Beschrijving |
---|---|
Normalisatie | De gegevensstroomfase waarin het apparaatbericht wordt genormaliseerd. |
FHIRConversion | De gegevensstroomfase waarin de gegroepeerde genormaliseerde gegevens worden omgezet in een observatieresource. |
Notitie
Uitzonderingen en oplossingen voor de statuscontrole van de MedTech-service
Statuscontroles worden automatisch en periodiek uitgevoerd om te controleren of een MedTech-service apparaatberichten kan normaliseren en transformeren. Als een statuscontrole niet is geslaagd, vindt er een HealthCheckException plaats en wordt deze geregistreerd.
In de MedTech-servicelogboeken wordt een statuscontrolefout geregistreerd met een LogType van HealthCheckException en wordt de naam van de mislukte statuscontrole vastgelegd in het bericht.
De namen van de statuscontroles worden weergegeven in de volgende tabel en de oplossingen voor eventuele fouten worden onder de tabel beschreven:
Statuscontrole |
---|
CredentialStore:IsCustomerFacingMiCredentialBundlePresent |
ExternalEventHub:IsAuthenticated |
FhirService:IsAuthenticated |
Notitie
Hoewel een HealthCheckException een blokkerend probleem is, kan het tijdelijk zijn en zichzelf zonder tussenkomst oplossen.
CredentialStore:IsCustomerFacingMiCredentialBundlePresent
Beschrijving: controleert of de door het systeem toegewezen beheerde identiteit van een MedTech-service is ingeschakeld of dat een door de gebruiker toegewezen beheerde identiteit is geconfigureerd.
Ernst: Blokkeren
Oplossing: Volg de oplossing die wordt beschreven in ManagedIdentityCredentialNotFound.
ExternalEventHub:IsAuthenticated
Beschrijving: controleert of de Event Hub geldig is en of de MedTech-service er toegang toe heeft.
Ernst: Blokkeren
Oplossing: Zorg ervoor dat uw Event Hub geldig is door de oplossing te volgen die wordt beschreven in InvalidEventHubException. Zorg er vervolgens voor dat uw MedTech-service toegang heeft tot uw Event Hub door de oplossing te volgen die wordt beschreven in UnauthorizedAccessEventHubException.
FhirService:IsAuthenticated
Beschrijving: controleert of de FHIR-bestemming geldig is en of de MedTech-service schrijftoegang heeft.
Ernst: Blokkeren
Oplossing: Zorg ervoor dat uw FHIR-bestemming geldig is door de oplossing te volgen die wordt beschreven in InvalidFhirServiceException. Zorg er vervolgens voor dat uw MedTech-service schrijftoegang heeft tot uw FHIR-bestemming door de oplossing te volgen die wordt beschreven in UnauthorizedAccessFhirServiceException.
MedTech-servicefouten en oplossingen
Als er een fout optreedt tijdens het normaliseren of transformeren van apparaatberichten, wordt deze geregistreerd.
In de MedTech-servicelogboeken wordt de naam van de fout vastgelegd in het LogType.
De namen van de fouten worden vermeld in de volgende tabel en de oplossingen hiervoor worden onder de tabel weergegeven:
CorrelationIdNotDefinedException
Beschrijving: als een CorrelationIdExpression (de expressie voor het parseren van de correlatie-id van het apparaatbericht) is opgegeven in de apparaattoewijzing, treedt deze fout op wanneer de correlatie-id niet aanwezig is in een apparaatbericht of wanneer de CorrelationIdExpression niet correct is geconfigureerd in de apparaattoewijzing. Opmerking: De CorrelationIdExpression is optioneel. Deze fout treedt op bij het groeperen van metingen die hetzelfde apparaat, hetzelfde type en dezelfde correlatie-id delen in één FHIR Observation-resource.
Ernst: Blokkeren
Oplossing:
Als de CorrelationIdExpression nodig is: zorg ervoor dat uw apparaatberichten de correlatie-id bevatten. Ga ook op de Azure Portal naar de blade Apparaattoewijzing van uw MedTech-service en controleer of de
correlationIdExpression
waarde in de apparaattoewijzing bestaat en correct verwijst naar de sleutel van de correlatie-id in uw apparaatberichten.Als de CorrelationIdExpression niet nodig is: ga op de Azure Portal naar de blade Apparaattoewijzing van uw MedTech-service en verwijder de regel in
correlationIdExpression
de apparaattoewijzing.
FhirDataMappingException
Beschrijving: er is een fout opgetreden tijdens het transformeren van genormaliseerde gegevens met de FHIR-doeltoewijzing. Deze fout treedt op wanneer een sjabloon die overeenkomt met de genormaliseerde gegevens niet is gedefinieerd in de FHIR-doeltoewijzing.
Ernst: Blokkeren
Oplossing: ga op de Azure Portal naar de blade Apparaattoewijzing en de blade Doel van uw MedTech-service en zorg ervoor dat er voor elke sjabloon in de apparaattoewijzing een sjabloon met dezelfde typeName
waarde in de FHIR-doeltoewijzing staat. Los ook eventuele validatiefouten op die worden weergegeven bij het bewerken en opslaan van de FHIR-doeltoewijzing op de blade Doel .
FhirResourceNotFoundException
Beschrijving: deze fout treedt op wanneer een FHIR-resource met de id die in het apparaatbericht is opgegeven, niet kan worden gevonden in de FHIR-bestemming. Als het type van de FHIR-resource Patiënt is, kan de fout zijn dat de FHIR-resource van het apparaat met de apparaat-id die in het apparaatbericht is opgegeven, niet verwijst naar een Patient FHIR-resource. Het type FHIR-resource (bijvoorbeeld Apparaat, Patiënt, Ontmoeting of Observatie) wordt opgegeven in het foutbericht. Opmerking: deze fout kan alleen optreden wanneer het oplossingstype van de MedTech-service is ingesteld op Opzoeken.
Ernst: Niet-blokkerend
Oplossing: zorg ervoor dat uw apparaatberichten de id voor de FHIR-resource bevatten met het type dat is opgegeven in het foutbericht. Ga ook op de Azure Portal naar de blade Apparaattoewijzing van uw MedTech-service en zorg ervoor dat de {FHIR resource’s type specified in the error message}IdExpression
waarde (bijvoorbeeld deviceIdExpression
) in de apparaattoewijzing bestaat en correct verwijst naar de sleutel van de id in uw apparaatberichten.
IncompatibleDataException
Beschrijving: er is een incompatibiliteit tussen het apparaatbericht en de apparaattoewijzing (er kan bijvoorbeeld een vereiste eigenschap ontbreken of leeg zijn in het apparaatbericht en/of in de apparaattoewijzing). De eigenschap apparaattoewijzing met de fout wordt opgegeven in het foutbericht.
Ernst: niet-blokkerend
Oplossing: Zorg ervoor dat uw apparaatberichten het volgende bevatten:
De sleutel waarnaar wordt verwezen door de eigenschap apparaattoewijzing die is opgegeven in het foutbericht.
Een niet-lege waarde voor de sleutel.
Ga ook op de Azure Portal naar de blade Apparaattoewijzing van uw MedTech-service en zorg ervoor dat de eigenschap voor apparaattoewijzing die in het foutbericht is opgegeven, een waarde heeft die correct verwijst naar de bijbehorende sleutel in uw apparaatberichten.
InvalidDataFormatException
Beschrijving: een apparaatbericht heeft geen indeling die kan worden geparseerd in een JSON-object.
Ernst: niet-blokkerend
Oplossing: zorg ervoor dat uw apparaatberichten de JSON-indeling hebben. Een manier om de JSON-indeling te bevestigen, is door een online JSON-validator te gebruiken.
InvalidEventHubException
Beschrijving: de Event Hub is ongeldig om een van de volgende redenen:
Ten minste één van de details van de Event Hub (Event Hubs-naamruimte, event hubnaam of consumentengroep) is onjuist opgemaakt of bestaat niet. De Event Hubs-naamruimte moet de Event Hub bevatten en de Event Hub moet de consumentengroep bevatten.
Meer dan één service leest uit de event hub-consumentengroep.
Ernst: Blokkeren
Oplossing: ga op de Azure Portal naar de blade Event Hubs van uw MedTech-service en zorg ervoor dat alle velden voor de details van de Event Hub zijn ingevuld. Ga als volgende te werk om ervoor te zorgen dat alleen uw MedTech-service uit de consumentengroep leest:
Neem uw services door en zorg ervoor dat uw MedTech-service de enige service is die toegang heeft tot de consumentengroep.
Ga naar uw Event Hub in de Azure Portal, maak een nieuwe consumentengroep waartoe alleen uw MedTech-service toegang heeft, ga naar de blade Event Hubs van uw MedTech-service en selecteer uw nieuwe consumentengroep in het veld Consumentengroep.
InvalidFhirServiceException
Beschrijving: de FHIR-bestemming is ongeldig omdat deze onjuist is opgemaakt, niet bestaat of geen FHIR-service is in Azure Health Data Services.
Ernst: Blokkeren
Oplossing: ga op de Azure Portal naar de blade Bestemming van uw MedTech-service en zorg ervoor dat het veld FHIR-server correct is ingevuld.
InvalidQuantityFhirValueException
Beschrijving: de waarde met het resourcegegevenstype Hoeveelheid is ongeldig (deze kan bijvoorbeeld een indeling hebben die niet wordt ondersteund). De waarde met de fout wordt opgegeven in het foutbericht.
Ernst: niet-blokkerend
Oplossing: Zorg ervoor dat de waarden in uw apparaatberichten zich in ondersteunde gegevenstypen bevinden volgens de specificaties van FHIR Quantity.value.
InvalidTemplateException
Beschrijving: er is een fout opgetreden met een sjabloon in de apparaattoewijzing of de FHIR-doeltoewijzing. Fouten zijn onder andere:
Het sjabloontype van een sjabloon (vertegenwoordigd door de
templateType
eigenschap) ontbreekt of heeft een lege waarde.Een sjabloon (vertegenwoordigd door de
template
eigenschap) onder de hoofdverzamelingssjabloon heeft geen JSON-object, dat wordt aangeduid met accolades{}
, als waarde.Het type van een sjabloon (vertegenwoordigd door de
typeName
eigenschap) ontbreekt of heeft een lege waarde.Meer dan één sjabloon in een toewijzing heeft hetzelfde type (heeft dezelfde waarde voor de eigenschap).
typeName
Het type en de regel van de sjabloon met de fout worden opgegeven in het foutbericht.
Ernst: Blokkeren
Oplossing: ga op de Azure Portal naar de blade Apparaattoewijzing (als er een fout optreedt in de apparaattoewijzing) of de blade Bestemming (als er een fout optreedt in de FHIR-doeltoewijzing) van uw MedTech-service en corrigeer de sjabloon die is opgegeven in het foutbericht.
ManagedIdentityCredentialNotFound
Beschrijving: wanneer de MedTech-service verbinding maakt met de Event Hub, is de door het systeem toegewezen beheerde identiteit van de MedTech-service uitgeschakeld of bestaat deze niet, of is er geen door de gebruiker toegewezen beheerde identiteit geconfigureerd voor de MedTech-service. Opmerking: deze fout kan optreden als de MedTech-service is geïmplementeerd met behulp van een onjuist geconfigureerde ARM-sjabloon (Azure Resource Manager).
Ernst: Blokkeren
Oplossing: de oplossing is afhankelijk van het type beheerde identiteit dat u wilt gebruiken. Het verschil tussen een door het systeem toegewezen en een door de gebruiker toegewezen beheerde identiteit kan worden gecontroleerd op Beheerde identiteitstypen. Opmerking: De MedTech-service ondersteunt slechts één identiteit: een door het systeem toegewezen beheerde identiteit of één door de gebruiker toegewezen beheerde identiteit.
Als u een door het systeem toegewezen beheerde identiteit wilt gebruiken:
Als u een MedTech-service implementeert met behulp van een ARM-sjabloon, moet u ervoor zorgen dat uw MedTech-serviceresource in de ARM-sjabloon een
identity
eigenschap heeft die detype
waarde bevat (zie voorbeeld van"SystemAssigned"
ARM-sjabloon in het bestand azuredeploy.json op GitHub).Ga op de Azure Portal naar de blade Identiteit van uw MedTech-service, ga naar het tabblad Systeem toegewezen en controleer het volgende:
- De status is ingesteld op Aan.
- De Azure-roltoewijzingen laten zien dat aan uw Event Hub een Azure Event Hubs rol Gegevensontvanger is toegewezen aan de door het systeem toegewezen beheerde identiteit van uw MedTech-service. Zo niet, volg dan deze instructies.
Als u een door de gebruiker toegewezen beheerde identiteit wilt gebruiken:
Zorg ervoor dat u een door de gebruiker toegewezen beheerde identiteit hebt. Zo niet, maak er een met behulp van de Azure Portal of een ARM-sjabloon.
Als u een MedTech-service implementeert met behulp van een ARM-sjabloon, moet u ervoor zorgen dat uw MedTech-serviceresource in de ARM-sjabloon een
identity
eigenschap bevat met 1) detype
waarde van en 2) eenuserAssignedIdentities
waarde die de naam van"userAssigned"
uw door de gebruiker toegewezen beheerde identiteit bevat (zie voorbeeld in Een door de gebruiker toegewezen beheerde identiteit toewijzen aan een Azure-VM).Ga op de Azure Portal naar de blade Identiteit van uw MedTech-service, ga naar het tabblad Gebruiker toegewezen en zorg ervoor dat uw door de gebruiker toegewezen beheerde identiteit wordt weergegeven. Zo niet, voeg dan uw door de gebruiker toegewezen beheerde identiteit toe (zie voorbeeld in Een door de gebruiker toegewezen beheerde identiteit toewijzen aan een bestaande VM).
Ga op de Azure Portal naar uw Event Hub en wijs de rol Azure Event Hubs Gegevensontvanger toe aan de door de gebruiker toegewezen beheerde identiteit van uw MedTech-service (zie de instructies, maar gebruik de door de gebruiker toegewezen beheerde identiteit in plaats van de door het systeem toegewezen beheerde identiteit).
MultipleResourceFoundException
Beschrijving: meerdere FHIR-resources met dezelfde id, die afkomstig zijn uit het apparaatbericht, worden gevonden in de FHIR-bestemming, maar er moet slechts één FHIR-resource zijn gevonden. Het type FHIR-resource (bijvoorbeeld Apparaat, Patiënt, Ontmoeting of Observatie) wordt opgegeven in het foutbericht.
Ernst: niet-blokkerend
Oplossing: Zorg ervoor dat een id niet is toegewezen aan meer dan één FHIR-resource met het type dat is opgegeven in het foutbericht.
NormalizationDataMappingException
Beschrijving: er is een fout opgetreden tijdens het normaliseren van een apparaatbericht met de apparaattoewijzing.
Ernst: Blokkeren
Oplossing: ga op de Azure Portal naar de blade Apparaattoewijzing van uw MedTech-service en los eventuele validatiefouten op die worden weergegeven bij het bewerken en opslaan van de apparaattoewijzing.
PatientDeviceMismatchException
Beschrijving: een apparaatresource in de FHIR-bestemming verwijst naar een Patient FHIR-resource met een id die niet overeenkomt met de patiënt-id die is opgegeven in het apparaatbericht (wat betekent dat het apparaat is gekoppeld aan een andere patiënt).
Ernst: niet-blokkerend
Oplossing: Zorg ervoor dat een patiënt-id niet is toegewezen aan meer dan één apparaat.
ResourceIdentityNotDefinedException
Beschrijving: deze fout treedt op wanneer de id van de FHIR-resource niet aanwezig is in een apparaatbericht of wanneer de expressie voor het parseren van de id van de FHIR-resource uit het apparaatbericht niet is geconfigureerd in de apparaattoewijzing. Het type FHIR-resource (bijvoorbeeld Apparaat, Patiënt, Ontmoeting of Observatie) wordt opgegeven in het foutbericht. Opmerking: deze fout kan alleen optreden wanneer het oplossingstype van de MedTech-service is ingesteld op Maken.
Ernst: niet-blokkerend
Oplossing: zorg ervoor dat uw apparaatberichten de id voor de FHIR-resource bevatten met het type dat is opgegeven in het foutbericht. Ga ook op de Azure Portal naar de blade Apparaattoewijzing van uw MedTech-service en zorg ervoor dat de {FHIR resource’s type specified in the error message}IdExpression
waarde (bijvoorbeeld deviceIdExpression
) in de apparaattoewijzing bestaat en correct verwijst naar de sleutel van de id in uw apparaatberichten.
TemplateExpressionException
Beschrijving: er is een fout opgetreden met een expressie in een sjabloon in de apparaattoewijzing. Fouten zijn onder andere:
Er ontbreekt een vereiste expressie.
De taal van een expressie (vertegenwoordigd door de
language
eigenschap) wordt niet ondersteund. Alle sjabloontypen ondersteunen expressies in JSONPath; alleen het sjabloontype CalculatedContent ondersteunt expressies in JMESPath.De waarde van een expressie (vertegenwoordigd door de
value
eigenschap) is onjuist opgemaakt volgens de syntaxis van de taal van de expressie.
De expressie en de regel met de fout worden opgegeven in het foutbericht.
Ernst: Blokkeren
Oplossing: ga op de Azure Portal naar de blade Apparaattoewijzing van uw MedTech-service en corrigeer de expressie die is opgegeven in het foutbericht in de apparaattoewijzing.
TemplateNotFoundException
Beschrijving: een sjabloon in de apparaattoewijzing heeft geen overeenkomende sjabloon met hetzelfde type binnen de FHIR-doeltoewijzing. Het type sjabloon wordt opgegeven in het foutbericht.
Ernst: niet-blokkerend
Oplossing: ga op de Azure Portal naar de blade Apparaattoewijzing en de blade Doel van uw MedTech-service en zorg ervoor dat er voor elke sjabloon in de apparaattoewijzing een sjabloon met dezelfde typeName
waarde is binnen de FHIR-doeltoewijzing.
UnauthorizedAccessEventHubException
Beschrijving: de MedTech-service heeft geen toegang tot de Event Hub.
Ernst: Blokkeren
Oplossing: ga op de Azure Portal naar uw Event Hub en wijs de rol Azure Event Hubs Gegevensontvanger toe aan uw MedTech-service (zie de instructies).
UnauthorizedAccessFhirServiceException
Beschrijving: de MedTech-service mist schrijftoegang tot de FHIR-bestemming.
Ernst: Blokkeren
Oplossing: ga op de Azure Portal naar uw FHIR-service en wijs de rol FHIR-gegevensschrijver toe aan uw MedTech-service (zie de instructies).
Notitie
Als u het probleem met de MedTech-service niet kunt oplossen met behulp van deze handleiding voor probleemoplossing, kunt u een ticket voor de technische ondersteuning van Azure openen waarin kopieën van uw apparaatbericht en apparaat- en FHIR-bestemmingstoewijzingen aan uw aanvraag worden toegevoegd om u beter te helpen bij het vaststellen van problemen.
Volgende stappen
In dit artikel hebt u geleerd hoe u fouten kunt oplossen met behulp van de MedTech-servicelogboeken.
Zie voor meer informatie over de veelgestelde vragen (FAQ's) van de MedTech-service
FHIR® is een gedeponeerd handelsmerk van Health Level Seven International, geregistreerd bij het U.S. Trademark Office en wordt gebruikt met hun toestemming.