Struct LogProxy

Source
pub struct LogProxy<P> {
    pub processor: P,
    pub buffer_size: usize,
    pub port: u16,
}
Expand description

§Examples

Simple creation:

use aws_lambda_log_proxy::{LogProxy, Sink};

LogProxy::new().simple(|p| p.sink(Sink::stdout().spawn()).build()).start().await;

Custom creation:

use aws_lambda_log_proxy::{LogProxy, Processor, Timestamp};

pub struct MyProcessor;

impl Processor for MyProcessor {
  async fn process(&mut self, _line: String, _timestamp: Timestamp) { }
  async fn truncate(&mut self) { }
}

LogProxy::new().processor(MyProcessor).buffer_size(1024).port(1234).start().await;

Fields§

§processor: P

The processor for stdin.

§buffer_size: usize§port: u16

Implementations§

Source§

impl LogProxy<()>

Source

pub fn new() -> Self

Create a new instance with the default properties and a mock processor which will discard all logs.

Source§

impl<P> LogProxy<P>

Source

pub fn processor<T>(self, processor: T) -> LogProxy<T>

Set Self::processor to a custom processor.

Source

pub fn simple<T>( self, builder: impl FnOnce(SimpleProcessorBuilder<fn(String) -> Option<String>, ()>) -> SimpleProcessor<T>, ) -> LogProxy<SimpleProcessor<T>>

Set Self::processor to a SimpleProcessor via SimpleProcessorBuilder.

§Examples
use aws_lambda_log_proxy::{LogProxy, Sink};

LogProxy::new().simple(|p| p.sink(Sink::stdout().spawn()).build());
Source

pub fn buffer_size(self, buffer_size: usize) -> Self

Set how many lines can be buffered if the processing is slow. If the handler process writes too many lines then return the response immediately, the suppression of invocation/next might not working, maybe some logs will be processed in the next invocation. Increase this value should help to prevent logs from being lost. The default value is 256.

Source

pub fn port(self, port: u16) -> Self

Set the port for the log proxy. The default value is 3000.

Source

pub async fn start(self)
where P: Processor,

Start the log proxy. This will block the current thread.

Trait Implementations§

Source§

impl<P: Default> Default for LogProxy<P>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<P> Freeze for LogProxy<P>
where P: Freeze,

§

impl<P> RefUnwindSafe for LogProxy<P>
where P: RefUnwindSafe,

§

impl<P> Send for LogProxy<P>
where P: Send,

§

impl<P> Sync for LogProxy<P>
where P: Sync,

§

impl<P> Unpin for LogProxy<P>
where P: Unpin,

§

impl<P> UnwindSafe for LogProxy<P>
where P: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more