Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Float divide-by-zero silently writes +Inf/NaN to a metric (int errors): intended?

Aperta
#1,005 0 commenti 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
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
go
Ambito
observability

Direzione di ricerca

Inizia tracciando il modo in cui mtail valuta la divisione in virgola mobile, Fmod e la conversione a float, quindi riproduci gli esempi dell’issue. Conferma la gestione prevista dei valori non finiti in base al comportamento di runtime-error e delle metriche del progetto, quindi aggiungi la copertura per la divisione per zero, il modulo per zero e gli input Inf/NaN una volta deciso il comportamento.

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

Descrizione

Hi! Quick one, is this intended or just an oversight?

Integer divide-by-zero raises a runtime error (drops the line, bumps prog_runtime_errors_total), but float divide-by-zero doesn't. It just writes +Inf/NaN straight into the metric, no error. Same with % (Fmod gives NaN).

gauge ratio
/(?P<denom>-?\d+)/ {
  ratio = 1000.0 / $denom
}

Feed it the line 0 and ratio comes out +Inf, silently. The int version (1000 / $denom) errors with Divide by zero instead, which is what made me notice.

(float($x) also happily takes "Inf"/"NaN", so you can get a non-finite metric with no division at all.)

Intended? Happy to send a small PR if not. Thanks!

Lingua principale
Go
Stelle
4k
Fork
393
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

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 google/mtail

Tutte le issue di google/mtail

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.