Improve logs, handling and parsing of Helm install erros
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
Direzione di ricerca
Inizia da helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/utils/Command.java alla riga 27 e segui come viene gestito stderr di helm install e come gli errori raggiungono l’API logger. Il lavoro è concluso quando il vero errore di Helm viene catturato nel normale flusso di logging strutturato invece di essere reindirizzato direttamente a System.err, mentre l’output dell’eccezione generica non è più l’unica diagnosi utile.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Currently, if the helm install fails for some reason (e.g syntax errors on generated manifests) then Onyxia-API logs a "generic" error with the Java stacktrace that contains almost no real info :
[onyxia-api-8b8497478-wdm5l] {"@timestamp":"2024-12-12T13:41:13.583714227Z","@version":"1","message":"Servlet.service() for servlet [dispatcherServlet] in context with path [\/api] threw exception","logger_name":"org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[\/api].[dispatcherServlet]","thread_name":"http-nio-8080-exec-3","level":"ERROR","level_value":40000,"stack_trace":"com.fasterxml.jackson.databind.exc.MismatchedInputException: No content to map due to end-of-input\n at [Source: REDACTED (StreamReadFeature.INCLUDE_SOURCE_IN_LOCATIONdisabled); line: 1]\n\tat com.fasterxml.jackson.databind.exc.MismatchedInputException.from(MismatchedInputException.java:59)\n\tat com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:5008)\n\tat ...
[TRIMMED FOR CLARITY]"}
and in a separate message the real helm error as emitted by the helm process :
[onyxia-api-8b8497478-wdm5l] Error: YAML parse error on argo-workflows/templates/networkpolicy-ingress.yaml: error converting YAML to JSON: yaml: line 10: did not find expected '-' indicator
This one is much more relevant and is currently redirected directly to System.err (see https://github.com/InseeFrLab/onyxia-api/blob/715cda25520e83a6e79308c0cefe837e1b1d8698/helm-wrapper/src/main/java/io/github/inseefrlab/helmwrapper/utils/Command.java#L27)
which is not properly integrated with the rest of logging system (e.g it does not use json structuring)
We should catch the real error instead of redirecting it to System.err
- Lingua principale
- Java
- Stelle
- 34
- Fork
- 34
- Merge medio
- 9m
- PR unite (30g)
- 4
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di InseeFrLab/onyxia-api
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 43/100
InseeFrLab/onyxia-api#689 ·
-
Security : run helm installs / upgrades / uninstalls as a service account local to the target namespaceForse già presa @olevitt l’ha presa 10 giorni fa. Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
InseeFrLab/onyxia-api#688 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 74/100
InseeFrLab/onyxia-api#669 ·
-
helmwrapper issue with rootless env : try to create /.cacheForse di nuovo libera @olevitt l’ha presa 344 giorni fa e non c’è nessuna pull request aperta. Aperta
InseeFrLab/onyxia-api#638 · 5 commenti · 1 assegnatario ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 38/100
InseeFrLab/onyxia-api#612 · 3 commenti ·
Tutte le issue di InseeFrLab/onyxia-api
Issue simili
-
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 70/100
Vakore/ZappierGames#248 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
thelastpickle/cassandra-reaper#1748 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 3 giorni
-
A proxy that fails to start logs a RejectedExecutionException stack trace from its shutdown hookApertafollow-up
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
Sanne/incus-spawn#1953 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
OneBusAway/maglev#1917 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni