# Functions
DefaultDecider logs every payload.
ElasticsearchLoggerServerInterceptor sets up a `grpc.ServerOption` to intercept streams with `*logrus.Entry` of the logger, created with `NewLogger`, and the options given to it.
ExtractTraceParent gets a `context.Context` which holds the "Elastic-Apm-Traceparent", which is the HTTP header for trace propagation, and returns the trace id.
IgnoreServerMethodsDecider ignores logging the payload of method that is equal to any string of fullIgnoredMethodNames.
LogError logs err with logger.Errorf if err is non-nil.
NewLogger creates a `*logrus.Logger` with `elogrus` hook, which logs to elasticsearch, and returns it.
NewMetricsGinLogger initializes the metrics middleware.
RequestExtractor extracts the request and logs it as json under the key "grpc.request.content".
SetLogger initializes the logging middleware.
Setup sets up the configuration of the package from environment variables, MUST BE CALLED BEFORE USAGE OF PACKAGE.
StartSpan starts an externalGRPCSpanType span under the transaction in ctx, returns the created span and the context with the traceparent header matadata.
# Structs
Config is the configuration struct for the logger, Logger - a logrus Logger to use in the logger.
JSONPbMarshaller is a struct used to marshal a protobuf message to JSON.
# Type aliases
DeciderFunc is a function type to decide whether to create a log for fullMethodName.