Azure / Azure/fluentd-plugin-mdsd

If the connection to mdsd is broken, there's no way to reconnect short of restarting the plug-in

Open
#45 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
C++
Stars
28
Forks
26
PR merge metrics
No merged PRs in 30d

Description

Both the writer and reader code will catch the "socket exception" thrown when mdsd exits/crashes, but the plug-in can't recover from that situation. When the plug-in is configured to queue writes (letting them be handled by the resender thread), the fix isn't overly complicated:

- Kill the reader and resender threads
- Start a new thread to reconnect
- When that succeeds, restart the reader and resender threads with the new connection

If the plug-in is configured for direct writes without the resender thread, recovery may involve turning on queue-for-resend to avoid data loss.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.