File SolidSyslogStreamSender.h¶
FileList > Core > Interface > SolidSyslogStreamSender.h
#include "SolidSyslogEndpoint.h"#include "SolidSyslogExternC.h"
Classes¶
| Type | Name |
|---|---|
| struct | SolidSyslogStreamSenderConfig Wiring for SolidSyslogStreamSender_Create, a sender that octet-frames each message (RFC 6587) over any injected Stream (plain TCP, TLS, or a caller-supplied byte transport). |
Detailed Description¶
A Sender that delivers each message octet-framed (RFC 6587 octet-counting: a decimal length, a space, then the message bytes) over any injected Stream - plain TCP, TLS, or a caller-supplied byte transport.
It resolves the endpoint and opens the stream lazily on the first Send, reconnecting when the endpoint version changes or after any send failure (a short or failed write closes the stream so the next Send reconnects). Repeated delivery failures and the recovery after them are reported once each via SolidSyslog_Error (DELIVERY_FAILED / DELIVERY_RESTORED), so a flapping link is not a log storm. Destroy closes the stream but does not free the injected Resolver, Stream, or Address.
Public Functions Documentation¶
SolidSyslogStreamSender_Create¶
Create a stream sender from config .
struct SolidSyslogSender * SolidSyslogStreamSender_Create (
const struct SolidSyslogStreamSenderConfig * config
)
Never returns NULL: a NULL or invalid config, or an exhausted sender pool, reports via SolidSyslog_Error and returns the shared NullSender (Send drops on the floor), so the result is safe to wire without a null-check.
SolidSyslogStreamSender_Destroy¶
Release the sender's pool slot, closing the stream first.
Does not free the injected Resolver, Stream, or Address; the caller owns those.
The documentation for this class was generated from the following file Core/Interface/SolidSyslogStreamSender.h