package dynamic_modulesv3

import "github.com/envoyproxy/go-control-plane/envoy/extensions/access_loggers/dynamic_modules/v3"

Index

Variables

var File_envoy_extensions_access_loggers_dynamic_modules_v3_dynamic_modules_proto protoreflect.FileDescriptor

Types

type DynamicModuleAccessLog

type DynamicModuleAccessLog struct {

	// Specifies the shared-object level configuration. This field is required.
	DynamicModuleConfig *v3.DynamicModuleConfig `protobuf:"bytes,1,opt,name=dynamic_module_config,json=dynamicModuleConfig,proto3" json:"dynamic_module_config,omitempty"`
	// The name for this logger configuration. If not specified, defaults to an empty string.
	//
	// This can be used to distinguish between different logger implementations inside a dynamic
	// module. For example, a module can have completely different logger implementations (e.g.,
	// file logger, gRPC logger, metrics logger). When Envoy receives this configuration, it passes
	// the “logger_name“ to the dynamic module's access logger config init function together with
	// the “logger_config“. That way a module can decide which in-module logger implementation to
	// use based on the name at load time.
	LoggerName string `protobuf:"bytes,2,opt,name=logger_name,json=loggerName,proto3" json:"logger_name,omitempty"`
	// The configuration for the logger chosen by “logger_name“. If not specified, an empty
	// configuration is passed to the module.
	//
	// This is passed to the module's access logger initialization function. Together with the
	// “logger_name“, the module can decide which in-module logger implementation to use and
	// fine-tune the behavior of the logger.
	//
	// For example, if a module has two logger implementations, one for file output and one for
	// sending to an external service, “logger_name“ is used to choose either file or external.
	// The “logger_config“ can be used to configure file paths, service endpoints, batching
	// parameters, format strings, etc.
	//
	// “google.protobuf.Struct“ is serialized as JSON before passing it to the module.
	// “google.protobuf.BytesValue“ and “google.protobuf.StringValue“ are passed directly
	// without the wrapper.
	//
	// .. code-block:: yaml
	//
	//	# Passing a JSON struct configuration
	//	logger_config:
	//	  "@type": "type.googleapis.com/google.protobuf.Struct"
	//	  value:
	//	    output_path: "/var/log/envoy/access.log"
	//	    format: "json"
	//	    buffer_size: 1000
	//
	//	# Passing a simple string configuration
	//	logger_config:
	//	  "@type": "type.googleapis.com/google.protobuf.StringValue"
	//	  value: "/var/log/envoy/access.log"
	LoggerConfig *anypb.Any `protobuf:"bytes,3,opt,name=logger_config,json=loggerConfig,proto3" json:"logger_config,omitempty"`
	// contains filtered or unexported fields
}

Configuration for the Dynamic Modules Access Logger. This logger allows loading shared object files via “dlopen“ to implement custom access logging behavior.

A module can be loaded by multiple access loggers; the module is loaded only once and shared across multiple logger instances.

The access logger receives completed request information including request/response headers, stream info (timing, upstream info, response codes), and the log context type.

func (*DynamicModuleAccessLog) Descriptor

func (*DynamicModuleAccessLog) Descriptor() ([]byte, []int)

Deprecated: Use DynamicModuleAccessLog.ProtoReflect.Descriptor instead.

func (*DynamicModuleAccessLog) GetDynamicModuleConfig

func (x *DynamicModuleAccessLog) GetDynamicModuleConfig() *v3.DynamicModuleConfig

func (*DynamicModuleAccessLog) GetLoggerConfig

func (x *DynamicModuleAccessLog) GetLoggerConfig() *anypb.Any

func (*DynamicModuleAccessLog) GetLoggerName

func (x *DynamicModuleAccessLog) GetLoggerName() string

func (*DynamicModuleAccessLog) ProtoMessage

func (*DynamicModuleAccessLog) ProtoMessage()

func (*DynamicModuleAccessLog) ProtoReflect

func (x *DynamicModuleAccessLog) ProtoReflect() protoreflect.Message

func (*DynamicModuleAccessLog) Reset

func (x *DynamicModuleAccessLog) Reset()

func (*DynamicModuleAccessLog) String

func (x *DynamicModuleAccessLog) String() string

func (*DynamicModuleAccessLog) Validate

func (m *DynamicModuleAccessLog) Validate() error

Validate checks the field values on DynamicModuleAccessLog with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*DynamicModuleAccessLog) ValidateAll

func (m *DynamicModuleAccessLog) ValidateAll() error

ValidateAll checks the field values on DynamicModuleAccessLog with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in DynamicModuleAccessLogMultiError, or nil if none found.

type DynamicModuleAccessLogMultiError

type DynamicModuleAccessLogMultiError []error

DynamicModuleAccessLogMultiError is an error wrapping multiple validation errors returned by DynamicModuleAccessLog.ValidateAll() if the designated constraints aren't met.

func (DynamicModuleAccessLogMultiError) AllErrors

func (m DynamicModuleAccessLogMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (DynamicModuleAccessLogMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type DynamicModuleAccessLogValidationError

type DynamicModuleAccessLogValidationError struct {
	// contains filtered or unexported fields
}

DynamicModuleAccessLogValidationError is the validation error returned by DynamicModuleAccessLog.Validate if the designated constraints aren't met.

func (DynamicModuleAccessLogValidationError) Cause

Cause function returns cause value.

func (DynamicModuleAccessLogValidationError) Error

Error satisfies the builtin error interface

func (DynamicModuleAccessLogValidationError) ErrorName

ErrorName returns error name.

func (DynamicModuleAccessLogValidationError) Field

Field function returns field value.

func (DynamicModuleAccessLogValidationError) Key

Key function returns key value.

func (DynamicModuleAccessLogValidationError) Reason

Reason function returns reason value.

Source Files

dynamic_modules.pb.go dynamic_modules.pb.validate.go

Version
v1.37.0 (latest)
Published
Jan 13, 2026
Platform
linux/amd64
Imports
20 packages
Last checked
1 hour ago

Tools for package owners.