Module layers

Source
Expand description

Layer is the mechanism to intercept operations.

Modules§

observe
OpenDAL Observability

Structs§

AsyncBacktraceLayerlayers-async-backtrace
Add Efficient, logical ‘stack’ traces of async functions for the underlying services.
AwaitTreeLayerlayers-await-tree
Add an Instrument await-tree for actor-based applications to the underlying services.
BlockingLayerlayers-blocking
Add blocking API support for non-blocking services.
CapabilityCheckLayer
Add an extra capability check layer for every operation
ChaosLayerlayers-chaos
Inject chaos into underlying services for robustness test.
ConcurrentLimitLayer
Add concurrent request limit.
DtraceLayerLinux and layers-dtrace
Support User Statically-Defined Tracing(aka USDT) on Linux
FastraceLayerlayers-fastrace
Add fastrace for every operation.
ImmutableIndexLayer
Add an immutable in-memory index for underlying storage services.
LoggingLayer
Add log for every operation.
MetricsLayerlayers-metrics
Add metrics for every operation.
MimeGuessLayerlayers-mime-guess
A layer that can automatically set Content-Type based on the file extension in the path.
OtelMetricsLayerlayers-otel-metrics
Add opentelemetry::metrics for every operation.
OtelTraceLayerlayers-otel-trace
Add opentelemetry::trace for every operation.
PrometheusClientLayerlayers-prometheus-client
Add prometheus-client for every operation.
PrometheusClientLayerBuilderlayers-prometheus-client
PrometheusClientLayerBuilder is a config builder to build a PrometheusClientLayer.
PrometheusLayerlayers-prometheus
Add prometheus for every operation.
PrometheusLayerBuilderlayers-prometheus
PrometheusLayerBuilder is a config builder to build a PrometheusLayer.
RetryLayer
Add retry for temporary failed operations.
ThrottleLayerlayers-throttle
Add a bandwidth rate limiter to the underlying services.
TimeoutLayer
Add timeout for every operation to avoid slow or unexpected hang operations.
TracingLayerlayers-tracing
Add tracing for every operation.

Traits§

LoggingInterceptor
LoggingInterceptor is used to intercept the log.
RetryInterceptor
RetryInterceptor is used to intercept while retry happened.