EasyGelf icon indicating copy to clipboard operation
EasyGelf copied to clipboard

Make serializer a little more forgiving when keys collide.

Open jeffgoo opened this issue 7 years ago • 0 comments

Thanks for sharing this project. This PR addresses something we saw in a production environment where pushed an nlog config change that referenced MDC items in the GelfTcp target that I didn't realize were already passed in eventInfo.Properties. That is, an MDC item had the same name as an nlog event info property. This caused a key collision and an exception in the code that serializes to a JsonObject. That's my bad. But this exception also resulted in 5 retries so one predictable exception became 6 due to retry logic that is really geared toward network transport issues. With multiple exceptions on every other log message sent to the GelfTcp target my nlog config change ended up pegging our CPU. Why not just log this at error or debug level and move on or scope the retry logic down to transport issues? Hope this is helpful.

jeffgoo avatar Oct 05 '18 19:10 jeffgoo