Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 31840|Risposta: 2

[Fonte] Spring Cloud registra tutti i log delle interfacce delle richieste su MongoDB

[Copiato link]
Pubblicato su 15/08/2021 21:47:53 | | | |
Nello sviluppo di microservizi, la logging è un compito molto basilare, registrando le informazioni di log delle richieste dell'interfaccia, che ci aiuta a risolvere problemi e a riprodurli. Il contenuto del log include il link, il metodo di richiesta, l'useragent, l'intestare, l'IP attuale della macchina microservizio, il nome della macchina nodo, l'ambiente in esecuzione, l'IP del richiedente, il consumo di tempo e altre informazioni.

Utilizzando il bloccante di filtro del framework Spring Cloud, puoi intercettare i record di informazioni di richiesta di tutte le interfacce e persistere i record di richiesta in MongoDB.



Struttura del log dell'interfaccia

Per prima cosa, crea un nuovo oggetto e definisci la struttura del log, il codice è il seguente:

Filtro logaritmico

Crea un nuovo filtro RequestLoggerFilter, eredita l'interfaccia Filter e implementa il metodo doFilter; questo filtro ha la priorità più alta e la priorità del filtro può essere impostata tramite l'annotazione @Order.Filtra i commit POST/PUT dei log (escludendo i record di commit multipart/form-data), il codice è il seguente:

Spring Cloud ottiene l'indirizzo IP del client
https://www.itsvse.com/thread-10022-1-1.html

Spring Cloud Filter recupera il contenuto richiesto tramite il ContentCachingRequestWrapper
https://www.itsvse.com/thread-10030-1-1.html

Handler di Spring Boot Intercettore
https://www.itsvse.com/thread-10001-1-1.html

I log persistono su MongoDB

Per non influire sull'uso normale dell'interfaccia, il log dell'interfaccia verrà inserito nella coda thread-safe, il programma aprirà un thread, il thread consumerà i dati nella coda, memorizzerà i dati in MongoDB e userà Maven per introdurre dipendenze.

Tutorial per l'installazione mongodb 5.0.1 di CentOS 7
https://www.itsvse.com/thread-10025-1-1.html

Linux chiude correttamente il database mongodb
https://www.itsvse.com/thread-10021-1-1.html
Per maggiori informazioni su mongodb, consulta org.springframework.boot.autoconfigure.mongo.MongoProperties

application.yml La configurazione è la seguente:

Formato URI: nome utente: root, password: aaaaaaa, indirizzo database: 127.0.0.1, numero porta: 27017, nome database: test
Per esempio: mongodb://root:aaaaaa@127.0.0.1:27017/test

SeIl nome utente o la password contiene un simbolo speciale, quindi usa la codifica URL, altrimenti verrà segnalato un errore!

Chiama MongoTemplate per far persistere i dati nel database con il seguente codice:

(Fine)





Precedente:OpenSSL viene implementato dai documenti del visto a IIS e SLB
Prossimo:"Sostituzione dinamica" per plugin .NET
 Padrone di casa| Pubblicato su 18/11/2021 11:14:19 |
Registra il registro delle risposte come mostrato nella figura seguente:





Pubblicato su 14/10/2022 15:19:47 |
Ho studiato, giusto in tempo
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com