syslog_rs/sync/
mod.rs

1
2/// An APIs and common interfaces.
3pub mod syslog_trait;
4
5//-- SYNC --
6
7/// A syslog instance which is shared between threads.
8pub mod syslog_sync_shared;
9
10//-- SYNC QUEUE --
11
12/// A syslog intance which uses an MPSC channels.
13#[cfg(feature = "build_with_queue")]
14pub mod syslog_sync_queue;
15
16/// A queue adapter based on the `crossbeam` MPSC.
17#[cfg(all(feature = "build_with_queue", not(feature = "async_embedded")))]
18pub(crate) mod crossbeam_queue_adapter;
19
20/// A streamer for the syslog.
21pub mod syslog_stream;
22
23/// Internal logic of the syslog client.
24pub mod syslog_sync_internal;
25
26/// A single threaded or thread_local syslog.
27#[cfg(feature = "build_with_thread_local")]
28pub mod syslog_threadlocal;
29
30//pub mod syslog;
31
32//-- SYNC SOCKET --
33
34/// A sockets (communication).
35pub(crate) mod socket;
36
37
38#[cfg(all(feature = "build_with_queue", not(feature = "async_embedded")))]
39pub(crate) use crossbeam_queue_adapter as q_adapter;
40
41#[cfg(all(feature = "async_embedded", feature = "build_with_queue"))]
42pub(crate) use crate::a_sync::async_queue_adapter::q_adapter as q_adapter;
43
44#[cfg(all(feature = "build_with_queue"))]
45pub use q_adapter::DefaultQueueAdapter;
46
47/// Exposing API for streaming to syslog.
48pub use syslog_stream::{SyStream, SyStreamApi};
49
50
51pub(crate) use syslog_sync_internal::LogItems;
52