pub struct LogglyPlugin {
sink: BatchSink,
log_format: Option<HashMap<String, LogFormatValue>>,
include_req_body: bool,
include_resp_body: bool,
}Expand description
Batches access-log entries and POSTs them to the Loggly bulk endpoint.
Fields§
§sink: BatchSink§log_format: Option<HashMap<String, LogFormatValue>>§include_req_body: bool§include_resp_body: boolImplementations§
Source§impl LogglyPlugin
impl LogglyPlugin
Sourcepub fn from_config(
config: &HashMap<String, Value>,
resources: &Arc<PluginResources>,
) -> Result<Self, String>
pub fn from_config( config: &HashMap<String, Value>, resources: &Arc<PluginResources>, ) -> Result<Self, String>
Builds the plugin from node config.
Accepted keys:
customer_token(string, required): Loggly customer token; forms part of the bulk URL. Missing/empty is a config-load error.tags(array of strings, default[featherbit]): Loggly tags, comma-joined into the URL and theX-LOGGLY-TAGheader.host(string, defaultlogs-01.loggly.com): Loggly host; a bare host gets anhttps://scheme.severity(string, defaultINFO): accepted for APISIX compatibility but ignored (HTTP bulk mode carries no syslog severity).ssl_verify(bool, defaulttrue): verify TLS certificates.timeout(integer ms, default5000): whole-call deadline per flush.log_format,include_req_body,include_resp_body— see the shared log-entry builder.- Batch keys — see
BatchConfig.
type: loggly
config:
customer_token: 00000000-0000-0000-0000-000000000000
tags: [featherbit, prod]
ssl_verify: trueTrait Implementations§
Source§impl Plugin for LogglyPlugin
impl Plugin for LogglyPlugin
Source§fn plugin_type(&self) -> &str
fn plugin_type(&self) -> &str
Source§fn reads_response_body(&self) -> bool
fn reads_response_body(&self) -> bool
Whether this configured instance reads
context.response.body. Read moreSource§fn execute<'life0, 'async_trait>(
&'life0 self,
ctx: Context,
) -> Pin<Box<dyn Future<Output = Result<PluginOutput, PluginExecutionError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn execute<'life0, 'async_trait>(
&'life0 self,
ctx: Context,
) -> Pin<Box<dyn Future<Output = Result<PluginOutput, PluginExecutionError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Executes the plugin logic against the request/response context. Read more
Source§fn cache_target(&self) -> Option<CacheTarget>
fn cache_target(&self) -> Option<CacheTarget>
The cache backend this node writes to, if it is a
proxy-cache half. Read moreAuto Trait Implementations§
impl Freeze for LogglyPlugin
impl RefUnwindSafe for LogglyPlugin
impl Send for LogglyPlugin
impl Sync for LogglyPlugin
impl Unpin for LogglyPlugin
impl UnsafeUnpin for LogglyPlugin
impl UnwindSafe for LogglyPlugin
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more