La situazione è: abbiamo un numero di istanze dell'applicazione funzionanti, sviluppate su C#
. Vogliamo che si colleghino in un posto (che potrebbe essere un file). Per quanto ne so, log4net
e NLog
possono inviare registri via TCP. Il problema è: come ascoltare questi registri e memorizzarli? Esiste una soluzione funzionante per raccogliere questi registri?Come organizzare la registrazione centralizzata?
risposta
In log4net si shoul configurare appender, here official documentation vedere RemotingAppender
Per il TCP ascolto si dovrebbe usare TcpListener come in this resource, ci sono esistono alcuni clienti per log4net like this
In NLog si potrebbe considerare il target Database . NLog ha altri obiettivi che potresti prendere in considerazione, incluso lo LogReceiverService, che invia messaggi di registrazione a un servizio WCF o servizio Web, in cui possono essere registrati su qualsiasi target NLog, incluso in un file.
In log4Net è possibile considerare AdoNetAppender. Esempi di configurazione here.
Noterò che, in passato, ho implementato un LoggingService basato su WCF (che è in definitiva simile a LogReceiverService di NLog), che ha funzionato bene per me.
È preferibile utilizzare la funzione Approfondimenti sulle applicazioni fornita da MS. può essere utilizzato in qualsiasi lingua, non solo nelle lingue Microsoft. Le informazioni sull'applicazione sono divise in 2 parti. SDK per strumentazione telemetria (registra i dati) e visualizzazione di questi registri in dashboard azzurre. SDK è opensource e devi pagare per gli strumenti di visualizzazione azzurri. se non si vuole pagare quindi utilizzare insgists applicazione nel codice e inviare i log per pila elastica che è open source
la migliore architettura
InsightsMS applicazione - per strumentazione tronchi
Apache Kafka - agisce come un oleodotto e stoarge temporaneo, inviare i log di Kafka
logstash-- un filtro con il quale è possibile filtrare il login
elasticsearch - un no sql db a dove i dati filtrati s tored
kibana - dash boards che estrae i dati dall'elastico e danno visioni.
inoltre è possibile collegare l'output spark a kafka per attivare avvisi in forma di e-mail, messaggi di testo.
- 1. Golang logro - come fare una configurazione centralizzata?
- 2. Gestione centralizzata della configurazione
- 3. Come organizzare la cartella app_code di ASP.NET?
- 4. Come dovrei organizzare la mia GUI Java?
- 5. Architettura centralizzata di autenticazione in servizio
- 6. Retrofit e gestione degli errori centralizzata
- 7. Come usare la registrazione paramiko?
- 8. Jetty: come disabilitare la registrazione?
- 9. Come organizzare un progetto C++
- 10. Come organizzare grandi app lucide?
- 11. Come organizzare un progetto Python?
- 12. Come organizzare le interfacce TypeScript
- 13. come organizzare la gestione socket in node.js e socket.io app
- 14. Come organizzare la definizione delle specifiche in Cetriolo?
- 15. Come organizzare i controller per ottenere la migliore struttura (MVC)
- 16. Come organizzare l'analisi e la convalida dei parametri dell'API REST?
- 17. Come organizzare il codice JavaScript nel progetto per la manutenzione?
- 18. MVC/MVP/MVVM - Come organizzare la business logic
- 19. Come organizzare il progetto per la versione open source
- 20. redis per la registrazione
- 21. Gestione centralizzata delle eccezioni per il plug-in Eclipse
- 22. Come si disattiva la registrazione con log4j?
- 23. Come abilitare la registrazione di Ehcache
- 24. Vine come la registrazione video con PhoneGap
- 25. Come sopprimere la registrazione dettagliata di Tensorflow?
- 26. come utilizzare la registrazione all'interno di Gevent?
- 27. Come annullare l'indicatore getUserMedia dopo la registrazione
- 28. Come abilitare la registrazione per Spring Security?
- 29. Come attivare la registrazione restkit in rapida
- 30. Come attivare/disattivare la registrazione tramite Log4net