Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

arki-query exits with status 0 after RuntimeError on grib scan #273

Closed
brancomat opened this issue Sep 23, 2021 · 4 comments
Closed

arki-query exits with status 0 after RuntimeError on grib scan #273

brancomat opened this issue Sep 23, 2021 · 4 comments
Assignees
Labels

Comments

@brancomat
Copy link
Member

brancomat commented Sep 23, 2021

example with grib attached:

$ arki-query --data "" /tmp/bruttogrib.grib >> out2.grib
ERROR scanner function failed
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/arkimet/scan/grib.py", line 31, in scan
    if scan(grib, md) is False:
  File "/etc/arkimet/scan/grib1.py", line 90, in scan_grib1
    raise RuntimeError("COSMO message with P1 > P2")
RuntimeError: COSMO message with P1 > P2
$ echo $?
0

bruttogrib.tar.gz

@brancomat brancomat added the bug label Sep 23, 2021
@dcesari dcesari self-assigned this Sep 27, 2021
@dcesari
Copy link
Member

dcesari commented Sep 27, 2021

Credo sia un problema di codifica di Cosmo per grib di analisi cumulati o max/min, l'avevo incontrato anche io, controllo meglio, comunque direi al 90% che il messaggio è da buttare perché non si inserisce nel data model, ma ciò non dovrebbe inficiare lo scanning dei messaggi sucessivi. Sull'aspetto exit code lascio gestire a voi, non saprei se sia meglio segnalarlo, o meno, in ogni caso dovrebbe stare in una categoria tipo "è inutile che ci riprovi, otterrai sempre lo stesso risultato".

@spanezz
Copy link
Contributor

spanezz commented Sep 27, 2021

Cercando nel codice, mi sembra che arkimet abbia sempre ignorato gli errori negli script di scan, con l'idea che se gli script girano, abbiamo dati in piú, sennò qualche dato l'abbiamo comunque.

Quello che mostra è un'entry di log che logga anche l'eccezione (si vede che prima c'è un ERROR scanner function failed), e il GRIB viene scansionato comunque, solo si ritrova con metadati incompleti. Può essere che comunque siano sufficienti per essere importato, e che quindi effettivamente non ci siano errori a parte una voce di log.

Per riferimento questi sono i dati che vengono scansionati comunque:

Source: BLOB(grib,/home/enrico/lavori/arpa/arkimet/bruttogrib.grib:5653824+120)
Origin: GRIB1(080, 255, 011)
Product: GRIB1(080, 201, 023)
Level: GRIB1(001)
Timerange: Timedef(0s, 0, 1h)
Reftime: 2021-09-23T00:00:00Z
Area: GRIB(Ni=576, Nj=701, latfirst=-8500000, latlast=5500000, latp=-47000000, lonfirst=-3800000, lonlast=7700000, lonp=10000000, rot=0, type=10)
Proddef: GRIB(tod=0)
Run: MINUTE(00:00)
Note: [2021-09-27T15:06:17Z]Scanned from bruttogrib.grib:5653824+120

ERROR scanner function failed
Traceback (most recent call last):
  File "/home/enrico/lavori/arpa/arkimet/python/arkimet/scan/grib.py", line 31, in scan
    if scan(grib, md) is False:
  File "/home/enrico/lavori/arpa/arkimet/conf/scan/grib1.py", line 90, in scan_grib1
    raise RuntimeError("COSMO message with P1 > P2")
RuntimeError: COSMO message with P1 > P2
Source: BLOB(grib,/home/enrico/lavori/arpa/arkimet/bruttogrib.grib:5653944+807672)
Origin: GRIB1(080, 255, 011)
Product: GRIB1(080, 201, 025)
Level: GRIB1(001)
Reftime: 2021-09-23T00:00:00Z
Run: MINUTE(00:00)
Note: [2021-09-27T15:06:17Z]Scanned from bruttogrib.grib:5653944+807672

Source: BLOB(grib,/home/enrico/lavori/arpa/arkimet/bruttogrib.grib:6461616+807672)
Origin: GRIB1(080, 255, 011)
Product: GRIB1(080, 202, 055)
Level: GRIB1(001)
Timerange: Timedef(0s, 254, 0s)
Reftime: 2021-09-23T00:00:00Z
Area: GRIB(Ni=576, Nj=701, latfirst=-8500000, latlast=5500000, latp=-47000000, lonfirst=-3800000, lonlast=7700000, lonp=10000000, rot=0, type=10)
Proddef: GRIB(tod=0)
Run: MINUTE(00:00)
Note: [2021-09-27T15:06:17Z]Scanned from bruttogrib.grib:6461616+807672

Il precedente e il successivo hanno l'area e il timedef, quello che dà errore no, ma ha il resto. È probabile che coi filtri che abbiamo sia stato tranquillamente importato

@spanezz
Copy link
Contributor

spanezz commented Sep 28, 2021

Se la mia analisi è corretta, forse è meglio passare quel messaggio da ERROR a WARNING

@brancomat
Copy link
Member Author

Ok, per me possiamo mantenere l'attuale exit status a zero e declassare l'error a warning

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants