Introduces an ability to send logs into Fluentd through Unix domain socket file. The README was updated with short usage instructions.
A user can now specify a path to the socket file as a parameter for Fluentd sink:
...WriteTo.Fluentd("/var/run/fluentd/fluentd.sock").CreateLogger();
On the inside, an IEndpoint interface has been introduced along with two concrete classes that implement it:
TcpEndpoint - contains the TCP-related functionality originally located at FluentdSinkClient
UdsEndpoint - contains new Unix socket files support
The FluentdSinkClient has been updated to deal with an IEndpoint object instead of concrete client implementation. The type of an endpoint is determined and a concrete object is created at InitializeEndpoint() function (former InitializeTcpClient()).
Note: due to the fact that current version .NET Core lacks Unix socket support, Unix.Endpoint class from Mono.Posix had to be employed, thankfully its license allows such usage.
Introduces an ability to send logs into Fluentd through Unix domain socket file. The README was updated with short usage instructions.
A user can now specify a path to the socket file as a parameter for Fluentd sink:
...WriteTo.Fluentd("/var/run/fluentd/fluentd.sock").CreateLogger();
On the inside, an
IEndpoint
interface has been introduced along with two concrete classes that implement it:TcpEndpoint
- contains the TCP-related functionality originally located atFluentdSinkClient
UdsEndpoint
- contains new Unix socket files supportThe
FluentdSinkClient
has been updated to deal with anIEndpoint
object instead of concrete client implementation. The type of an endpoint is determined and a concrete object is created atInitializeEndpoint()
function (formerInitializeTcpClient()
).Note: due to the fact that current version .NET Core lacks Unix socket support, Unix.Endpoint class from Mono.Posix had to be employed, thankfully its license allows such usage.