pub struct SkywalkingLoggerPlugin {
sink: BatchSink,
log_format: Option<HashMap<String, Value>>,
include_req_body: bool,
include_resp_body: bool,
service_name: String,
service_instance_name: String,
}Expand description
Ships log entries to a SkyWalking OAP endpoint in batches.
Fields§
§sink: BatchSink§log_format: Option<HashMap<String, Value>>§include_req_body: bool§include_resp_body: bool§service_name: String§service_instance_name: StringImplementations§
Source§impl SkywalkingLoggerPlugin
impl SkywalkingLoggerPlugin
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.
Config keys:
| Key | Type | Default | Description |
|---|---|---|---|
endpoint_addr | string | — (required) | SkyWalking OAP HTTP base, e.g. http://127.0.0.1:12800. |
service_name | string | "featherbit" | SkyWalking service name reported on each item. |
service_instance_name | string | "featherbit Instance Name" | SkyWalking service instance name. |
ssl_verify | bool | true | Verify the OAP TLS certificate. |
timeout | int (seconds) | 3 | Per-flush HTTP timeout. |
log_format | object | — | Custom name -> "$var template" entry; when set the default entry is replaced. |
include_req_body | bool | false | Include the (lossy UTF-8) request body in the default entry. |
include_resp_body | bool | false | Include the (lossy UTF-8) response body in the default entry. |
Batch-processor keys (batch_max_size, inactive_timeout,
buffer_duration, max_retry_count, retry_delay,
max_pending_entries) are parsed by BatchConfig::from_config.
type: skywalking-logger
config:
endpoint_addr: http://127.0.0.1:12800
service_name: my-gateway
service_instance_name: gw-1Trait Implementations§
Source§impl Plugin for SkywalkingLoggerPlugin
impl Plugin for SkywalkingLoggerPlugin
Source§fn plugin_type(&self) -> &str
fn plugin_type(&self) -> &str
Unique identifier for the plugin type (e.g., “proxy-rewrite”, “upstream”).
Source§fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: Context,
_named_inputs: &'life1 HashMap<String, Value>,
) -> Pin<Box<dyn Future<Output = Result<PluginOutput, PluginExecutionError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: Context,
_named_inputs: &'life1 HashMap<String, Value>,
) -> Pin<Box<dyn Future<Output = Result<PluginOutput, PluginExecutionError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Executes the plugin logic against the request/response context. Read more
Auto Trait Implementations§
impl Freeze for SkywalkingLoggerPlugin
impl RefUnwindSafe for SkywalkingLoggerPlugin
impl Send for SkywalkingLoggerPlugin
impl Sync for SkywalkingLoggerPlugin
impl Unpin for SkywalkingLoggerPlugin
impl UnsafeUnpin for SkywalkingLoggerPlugin
impl UnwindSafe for SkywalkingLoggerPlugin
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