prometheus / prometheus/client_java
Escaping API inconsistencies
Nessuno ha ancora preso questa issue.
- Lingua principale
- Java
- Stelle
- 2.3k
- Fork
- 833
- Merge medio
- 2g 16h
- PR unite (30g)
- 86
Descrizione
If I understand correctly, this is approximately how I should produce an output:
expositionFormats.findWriter(accept)
.write(System.out, registry.scrape(), EscapingScheme.fromAcceptHeader(accept));
The problem with this is that the API forces me to pass the accept header twice, so theoretically I can do this:
expositionFormats.findWriter(acceptHeaderOne)
.write(System.out, registry.scrape(), EscapingScheme.fromAcceptHeader(acceptHeaderTwo));
Which can lead to inconsistencies, it is easy to misuse the API.
I'm wondering if something like this would make sense:
expositionFormats.findWriter(accept).write(System.out, registry.scrape());
and the writer would have the EscapingScheme.
The writer still can be cached but it would be a little more than today.
Guida per i contributori
Apri la guida per i contributori
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.
Direzione di ricerca
Inizia tracciando l'API expositionFormats.findWriter, il metodo write del writer e gli utilizzi di EscapingScheme.fromAcceptHeader nel client Java. Confronta il modo in cui vengono gestiti i writer memorizzati nella cache e determina come l'API possa evitare di accettare due header potenzialmente diversi; il lavoro è completato quando l'utilizzo proposto è coerente senza perdere il caching dei writer.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java
- Ambito
- api
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 45/100