How to run `google/fhir-data-pipes/pipelines/batch` uber JAR in Google Cloud Functions locally?

Aperta
#254 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Documentazione
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
google-cloud, java
Ambito
backend, cloud

Direzione di ricerca

Iniziare con l’entry point pipelines/batch com.google.fhir.analytics.FhirEtl e il comando java-function-invoker mostrato nell’issue. Verificare come questo target viene esposto a Google Cloud Functions, come vengono configurati gli argomenti e se le invocazioni parallele supportano valori diversi; documentare i passaggi supportati per l’invocazione e la configurazione locali.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

P3 question

I tried the following command after building the uber JAR of google/fhir-data-pipes/pipelines/batch:

java -jar java-function-invoker-1.3.1.jar \
    --classpath /d/SourceCodes/google/fhir-data-pipes/pipelines/batch/target/batch-bundled.jar \
    --target com.google.fhir.analytics.FhirEtl

and here is the error logs:

2023-11-23 16:19:50.971:INFO::main: Logging initialized @96ms to org.eclipse.jetty.util.log.StdErrLog
Exception in thread "main" java.lang.RuntimeException: Could not determine function signature type from target com.google.fhir.analytics.FhirEtl. Either this should be a class implementing one of the interfaces in com.google.cloud.functions, or the environment variable FUNCTION_SIGNATURE_TYPE should be set to "http" or "event".
        at com.google.cloud.functions.invoker.runner.Invoker.servletForDeducedSignatureType(Invoker.java:393)
        at com.google.cloud.functions.invoker.runner.Invoker.startServer(Invoker.java:298)
        at com.google.cloud.functions.invoker.runner.Invoker.startServer(Invoker.java:244)
        at com.google.cloud.functions.invoker.runner.Invoker.main(Invoker.java:127)

Also, how to pass arguments to the uber JAR of the function in question? For example, if running the uber JAR directly, we can do it like this:

PATH_TO_THE_UBER_JAR=/d/SourceCodes/google/fhir-data-pipes/pipelines/batch/target/batch-bundled.jar && \
java -jar ${PATH_TO_THE_UBER_JAR} \
    --fhirServerUrl=http://fhir-server-bkkbn:8092/fhir \
    --resourceList=Patient,Practitioner \
    --fhirSinkPath=http://fhir-server-central:8098/fhir

More advanced, can we use Google Cloud Functions parallelism and supply different arguments values?

Lingua principale
Java
Stelle
154
Fork
63
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di GoogleCloudPlatform/functions-framework-java

Tutte le issue di GoogleCloudPlatform/functions-framework-java

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.