govway icon indicating copy to clipboard operation
govway copied to clipboard

FileTrace granulare per ciascuna api definita

Open Ettore-Morasso opened this issue 2 years ago • 2 comments

Salve, chiedo un chiarimento: ho abilitato il filetrace e definito 4 topic per, 2 per erogazioni (request e response) e 2 per fruizioni (request e response). Funziona tutto correttamente, tuttavia mi chiedevo se fosse possibile generare un log separato per ciascuna api definita (in erogazione e fruizione, richiesta e risposta); leggendo la documentazione mi parrebbe di no, ma non ne sono sicuro inoltre non sono molto esperto di log4j quindi potrei aver intrepetato male. Chiederei cortesemente una chiarimento sulla fattibilità di quanto esposto sopra. Grazie e saluti.

Ettore-Morasso avatar Jan 25 '23 14:01 Ettore-Morasso

Buonasera @Ettore-Morasso, ti confermo che non è possibile attualmente generare un log separato per ciascuna api.

Una possibile evoluzione potrebbe prevedere la registrazione di "filtri" che consentano di indicare l'attivazione del topic rispetto a parametri quali l'api, il mittente o altri meta-dati. Questo ti consentirebbe di creare un topic per ogni API (o gruppi magari identificati da un tag) se il numero di API da gestire è limitato. Il topic verrebbe poi associato ad una category log4j (che rappresenta un file di log definito nel file di configurazione di log4j2) dedicata all'api. Se lo ritieni soddisfacente puoi aprire una richiesta di issue per inserirla nella lista dei desiderata per le prossime versioni.

Come soluzione immediata o comunque per poter gestire un numero non definibile a priori di API dovresti in alternativa poterti definirti un "Custom Log4j2 Appender" da utilizzare nella category associata ad ogni topic. L'appender dovrebbe creare comprendere dinamicamente l'API invocata effettuando il parsing del messaggio da registrare per poi attuare la registrazione nel file corretto.

Saluti.

andreapoli avatar Jan 25 '23 17:01 andreapoli

Grazie, il numero delle api che andremo a gestire è definito ma non esiguo, quindi proverò a implementare le due soluzioni proposte e cercherò di capire quale funziona meglio per la nostra situazione. Nel caso aprirò un desiderata. Saluti.

Ettore-Morasso avatar Jan 27 '23 09:01 Ettore-Morasso