cloudevents / cloudevents/sdk-java

can't setup `cloudevents.serializer.event_format` in quarkus

Aperta
#595 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

needs-user-input
Lingua principale
Java
Stelle
446
Fork
172
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hello everyone, I want to express my appreciation for the fantastic work you're doing!

I've noticed that Quarkus reactive Kafka replaces all underscores (_) with periods (`.``). Here's a code snippet from quarkus code to illustrate this:

private static void extractConfigKey(Config config, JsonObject json, String originalKey, String prefixToStrip) {
    // Transform keys that may come from environment variables.
    // As Kafka properties use ".", transform "_" into "."
    String key = originalKey;
    if (key.contains("_") || allCaps(key)) {
        key = originalKey.toLowerCase().replace("_", ".");
    }
    // ...
}

This transformation is causing an issue for me when trying to pass event_format in the application.properties file:

/**
 * The configuration key for the {@link EventFormat} to use when serializing the event in structured mode.
 */
public final static String EVENT_FORMAT_CONFIG = "cloudevents.serializer.event_format";

Is there a way to also support event.format, or do you have any suggestions for a workaround? Your insights would be greatly appreciated!

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.

Direzione di ricerca

Inizia con il metodo extractConfigKey e la costante EVENT_FORMAT_CONFIG mostrati nell’issue, quindi segui il modo in cui reactive Kafka mappa le chiavi di configurazione. Determina se event_format può essere configurato senza essere trasformato in modo errato, oppure se è necessario un workaround documentato; il lavoro è considerato completato quando l’impostazione funziona in modo affidabile in application.properties.

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

Valutazione

Stack tecnologico
java, kafka
Ambito
backend
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.