En esta página, se describe cómo usar la recuperación de un momento determinado (PITR) para recuperar HL7v2 mensajes en un almacén HL7v2 a un estado de los últimos 21 días. Puedes usar PITR para recuperarse de cambios no deseados, como la eliminación accidental de mensajes HL7v2.
Antes de comenzar
Las solicitudes de PITR se clasifican como solicitudes de operaciones avanzadas y se facturan según corresponda. Antes de usar la PITR, revisa los precios para advanced-operation requests (solicitudes de operación avanzada).
Flujo de trabajo de recuperación
Para garantizar que una recuperación de producción se ejecute como se espera, primero haz una ejecución de prueba. La ejecución de prueba genera uno o más archivos que contienen los ID de los Mensajes de HL7v2 para recuperar. Verifica que los archivos de salida sean correctos antes de volver a ejecutar la recuperación en production.
Para recuperar mensajes HL7v2 específicos o mensajes HL7v2 según un filtrado criterios, especifica un filtro.
Haz una prueba de validación
Antes de recuperar mensajes HL7v2 en producción, haz una ejecución de prueba.
En los siguientes ejemplos, se muestra cómo realizar una ejecución de prueba
con hl7V2Stores.rollback
.
REST
Recupera los mensajes HL7v2.
Para realizar una ejecución de prueba, asegúrate de que
force
esfalse
.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
PROJECT_ID
El ID de tu proyecto de Google Cloud.LOCATION
: La ubicación del conjunto de datosDATASET_ID
: El conjunto de datos superior del almacén de HL7v2HL7V2_STORE_ID
es el ID del almacén de HL7v2.RECOVERY_TIMESTAMP
: Es un punto de recuperación en los últimos 21 días. Usa el formato RFC 3339. Especifica el tiempo transcurrido hasta los segundos y también incluye una zona horaria, por ejemplo,2015-02-07T13:28:17.239+02:00
o2017-01-01T00:00:00Z
.CLOUD_STORAGE_BUCKET
: Es el URI completamente calificado de una carpeta o un bucket de Cloud Storage en el que se escriben los archivos de salida.
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:cat > request.json << 'EOF' { "rollbackTime": "RECOVERY_TIMESTAMP", "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET", "force": "false" } EOF
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID:rollback"PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:@' { "rollbackTime": "RECOVERY_TIMESTAMP", "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET", "force": "false" } '@ | Out-File -FilePath request.json -Encoding utf8
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID:rollback" | Select-Object -Expand ContentExplorador de API
Copia el cuerpo de la solicitud y abre la página de referencia del método. El panel del Explorador de API se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Pega el cuerpo de la solicitud en esta herramienta, completa cualquier otro campo obligatorio y haz clic en Ejecutar.
OPERATION_ID
. Necesitarás este valor en el paso siguiente.Usa el método
projects.locations.datasets.operations.get
para obtener el estado de la operación de larga duración.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
PROJECT_ID
El ID de tu proyecto de Google Cloud.DATASET_ID
: El ID del conjunto de datosLOCATION
: La ubicación del conjunto de datosOPERATION_ID
: Es el ID que muestra la operación de larga duración.
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el siguiente comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"PowerShell
Ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand ContentExplorador de API
Abre el página de referencia del método. El panel del Explorador de API se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Completa los campos obligatorios y haz clic en Ejecutar.
"done": true
, significa que la operación de larga duración finalizó.
Visualiza los archivos de salida de la ejecución de prueba
Cada ejecución de prueba da como resultado uno o más archivos que contienen los IDs y los tipos del protocolo HL7v2
mensajes para recuperar. Los archivos se crean en una subcarpeta de la carpeta rollback_messages
del destino.
bucket de Cloud Storage. El nombre de la subcarpeta es el ID de LRO que se muestra en el
hl7V2Stores.rollback
respuesta. Para ver los archivos y asegurarse de que la recuperación funcione
como se esperaba, consulta
Visualiza metadatos de objetos.
La cantidad de archivos es proporcional a la cantidad de mensajes de HL7v2 recuperados.
Los nombres de los archivos usan el formato trial-NUMBER-of-TOTAL_NUMBER.txt
donde NUMBER
es el número de archivo y TOTAL_NUMBER
es la cantidad total de archivos.
Esquema del archivo de salida de la ejecución de prueba
Los archivos de salida de una recuperación de ejecución de prueba usan el esquema que se muestra en el siguiente tabla:
MESSAGE_ID |
TIMESTAMP |
---|---|
Es el ID de mensaje de HL7v2. | Indica la hora en la que se creó o actualizó el mensaje de HL7v2 en el almacén de HL7v2. |
Recuperar en producción
Antes de realizar la recuperación en producción, haz una ejecución de prueba y, luego, inspecciona archivos de salida de ejecución de prueba para garantizar que la recuperación de producción se ejecute como se espera.
En los siguientes ejemplos, se muestra cómo restablecer mensajes HL7v2 en producción
con hl7V2Stores.rollback
.
REST
Recupera los mensajes HL7v2.
Asegúrate de que el
force
estrue
.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
PROJECT_ID
El ID de tu proyecto de Google Cloud.LOCATION
: La ubicación del conjunto de datosDATASET_ID
: El conjunto de datos superior del almacén de HL7v2HL7V2_STORE_ID
es el ID del almacén de HL7v2.RECOVERY_TIMESTAMP
: Es un punto de recuperación en los últimos 21 días. Usa el formato RFC 3339. Especifica el tiempo transcurrido hasta los segundos y también incluye una zona horaria, por ejemplo,2015-02-07T13:28:17.239+02:00
o2017-01-01T00:00:00Z
.CLOUD_STORAGE_BUCKET
: Es el URI completamente calificado de una carpeta o un bucket de Cloud Storage en el que se escriben los archivos de salida.
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:cat > request.json << 'EOF' { "rollbackTime": "RECOVERY_TIMESTAMP", "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET", "force": "true" } EOF
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID:rollback"PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:@' { "rollbackTime": "RECOVERY_TIMESTAMP", "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET", "force": "true" } '@ | Out-File -FilePath request.json -Encoding utf8
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID:rollback" | Select-Object -Expand ContentExplorador de API
Copia el cuerpo de la solicitud y abre la página de referencia del método. El panel del Explorador de API se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Pega el cuerpo de la solicitud en esta herramienta, completa cualquier otro campo obligatorio y haz clic en Ejecutar.
OPERATION_ID
. Necesitarás este valor en el paso siguiente.Usa el método
projects.locations.datasets.operations.get
para obtener el estado de la operación de larga duración.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
PROJECT_ID
El ID de tu proyecto de Google Cloud.DATASET_ID
: El ID del conjunto de datosLOCATION
: La ubicación del conjunto de datosOPERATION_ID
: Es el ID que muestra la operación de larga duración.
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el siguiente comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"PowerShell
Ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand ContentExplorador de API
Abre el página de referencia del método. El panel del Explorador de API se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Completa los campos obligatorios y haz clic en Ejecutar.
"done": true
, significa que la operación de larga duración finalizó.
Visualiza los archivos de salida de recuperación de producción
Una recuperación de producción genera los siguientes archivos. Los archivos se crean en un
subcarpeta en la carpeta rollback_messages
del destino
bucket de Cloud Storage. El nombre de la subcarpeta es el ID de LRO que se muestra en el
hl7V2Stores.rollback
respuesta. Para ver los archivos, consulta
Visualiza metadatos de objetos.
success-NUMBER-of-TOTAL_NUMBER.txt
: Contiene mensajes HL7v2 recuperados correctamente.fail-NUMBER-of-TOTAL_NUMBER.txt
: Contiene Mensajes de HL7v2 que no se pudieron recuperar. Se genera un archivo vacío aunque que no haya fallas.
En los nombres de los archivos, NUMBER
es el número de archivo y TOTAL_NUMBER
.
es la cantidad total de archivos.
Esquema del archivo de salida de producción
Los archivos de éxito y fracaso de una recuperación de producción usan lo siguiente:
. Los archivos de error contienen un
ERROR_MESSAGE
.
MESSAGE_ID |
ERROR_MESSAGE (solo archivos con error) |
---|---|
Es el ID de mensaje de HL7v2. | Solo archivos con errores. Describe por qué no se pudo recuperar el mensaje HL7v2. |
Usa filtros para restablecer un almacén de HL7v2 a un estado anterior
Si una o más operaciones de larga duración (LRO) modificaron un almacén de HL7v2, haz lo siguiente: puedes especificar los IDs de LRO en un filtro para restablecer el almacén de HL7v2 a su estado anterior. Por ejemplo, puedes restablecer un almacén de HL7v2 en su estado anterior antes de que una operación de importación importara mensajes HL7v2.
Debes especificar los IDs de LRO en el objeto RollbackHL7MessagesFilteringFields
cuando envíes
una solicitud hl7V2Stores.rollback
.
Consulta Crea listas de LRO. para obtener información sobre cómo crear una lista y visualizar los IDs de LRO en un conjunto de datos de la API de Cloud Healthcare.