Versions in this module Expand all Collapse all v0 v0.1.0 Jun 7, 2024 Changes in this version + func SetConfig(cfg *Config) + type APIConfig struct + AccessLog bool + Addr string + Auth *AuthConfig + Auther string + PathPrefix string + type AdmissionConfig struct + File *FileLoader + HTTP *HTTPLoader + Matchers []string + Name string + Plugin *PluginConfig + Redis *RedisLoader + Reload time.Duration + Reverse bool + Whitelist bool + type AuthConfig struct + Password string + Username string + type AutherConfig struct + Auths []*AuthConfig + File *FileLoader + HTTP *HTTPLoader + Name string + Plugin *PluginConfig + Redis *RedisLoader + Reload time.Duration + type BypassConfig struct + File *FileLoader + HTTP *HTTPLoader + Matchers []string + Name string + Plugin *PluginConfig + Redis *RedisLoader + Reload time.Duration + Reverse bool + Whitelist bool + type ChainConfig struct + Hops []*HopConfig + Metadata map[string]any + Name string + type ChainGroupConfig struct + Chains []string + Selector *SelectorConfig + type Config struct + API *APIConfig + Admissions []*AdmissionConfig + Authers []*AutherConfig + Bypasses []*BypassConfig + CLimiters []*LimiterConfig + Chains []*ChainConfig + Hops []*HopConfig + Hosts []*HostsConfig + Ingresses []*IngressConfig + Limiters []*LimiterConfig + Log *LogConfig + Loggers []*LoggerConfig + Metrics *MetricsConfig + Observers []*ObserverConfig + Profiling *ProfilingConfig + RLimiters []*LimiterConfig + Recorders []*RecorderConfig + Resolvers []*ResolverConfig + Routers []*RouterConfig + SDs []*SDConfig + Services []*ServiceConfig + TLS *TLSConfig + func GetConfig() *Config + type ConnectorConfig struct + Auth *AuthConfig + Metadata map[string]any + TLS *TLSConfig + Type string + type DialerConfig struct + Auth *AuthConfig + Metadata map[string]any + TLS *TLSConfig + Type string + type FileLoader struct + Path string + type FileRecorder struct + Path string + Sep string + type ForwardNodeConfig struct + Addr string + Auth *AuthConfig + Bypass string + Bypasses []string + Filter *NodeFilterConfig + HTTP *HTTPNodeConfig + Host string + Name string + Network string + Path string + Protocol string + TLS *TLSNodeConfig + type ForwarderConfig struct + Hop string + Nodes []*ForwardNodeConfig + Selector *SelectorConfig + type HTTPLoader struct + Timeout time.Duration + URL string + type HTTPNodeConfig struct + Auth *AuthConfig + Header map[string]string + Host string + Rewrite []HTTPURLRewriteConfig + type HTTPRecorder struct + Timeout time.Duration + URL string + type HTTPURLRewriteConfig struct + Match string + Replacement string + type HandlerConfig struct + Auth *AuthConfig + Auther string + Authers []string + Chain string + ChainGroup *ChainGroupConfig + Limiter string + Metadata map[string]any + Observer string + Retries int + TLS *TLSConfig + Type string + type HopConfig struct + Bypass string + Bypasses []string + File *FileLoader + HTTP *HTTPLoader + Hosts string + Interface string + Name string + Nodes []*NodeConfig + Plugin *PluginConfig + Redis *RedisLoader + Reload time.Duration + Resolver string + Selector *SelectorConfig + SockOpts *SockOptsConfig + type HostMappingConfig struct + Aliases []string + Hostname string + IP string + type HostsConfig struct + File *FileLoader + HTTP *HTTPLoader + Mappings []*HostMappingConfig + Name string + Plugin *PluginConfig + Redis *RedisLoader + Reload time.Duration + type IngressConfig struct + File *FileLoader + HTTP *HTTPLoader + Name string + Plugin *PluginConfig + Redis *RedisLoader + Reload time.Duration + Rules []*IngressRuleConfig + type IngressRuleConfig struct + Endpoint string + Hostname string + type LimiterConfig struct + File *FileLoader + HTTP *HTTPLoader + Limits []string + Name string + Plugin *PluginConfig + Redis *RedisLoader + Reload time.Duration + type ListenerConfig struct + Auth *AuthConfig + Auther string + Authers []string + Chain string + ChainGroup *ChainGroupConfig + Metadata map[string]any + TLS *TLSConfig + Type string + type LogConfig struct + Format string + Level string + Output string + Rotation *LogRotationConfig + type LogRotationConfig struct + Compress bool + LocalTime bool + MaxAge int + MaxBackups int + MaxSize int + type LoggerConfig struct + Log *LogConfig + Name string + type Metadata map[string]any + func NewMetadata(m map[string]any) Metadata + func (md Metadata) Get(key string) any + func (md Metadata) GetBool(keys ...string) (v bool) + func (md Metadata) GetDuration(keys ...string) (v time.Duration) + func (md Metadata) GetFloat(keys ...string) (v float64) + func (md Metadata) GetInt(keys ...string) (v int) + func (md Metadata) GetString(keys ...string) (v string) + func (md Metadata) IsExists(key string) bool + type MetricsConfig struct + Addr string + Auth *AuthConfig + Auther string + Path string + type NameserverConfig struct + Addr string + Async bool + Chain string + ClientIP string + Hostname string + Only string + Prefer string + TTL time.Duration + Timeout time.Duration + type NodeConfig struct + Addr string + Bypass string + Bypasses []string + Connector *ConnectorConfig + Dialer *DialerConfig + Filter *NodeFilterConfig + HTTP *HTTPNodeConfig + Hosts string + Interface string + Metadata map[string]any + Name string + Network string + Resolver string + SockOpts *SockOptsConfig + TLS *TLSNodeConfig + type NodeFilterConfig struct + Host string + Path string + Protocol string + type ObserverConfig struct + Name string + Plugin *PluginConfig + type PluginConfig struct + Addr string + TLS *TLSConfig + Timeout time.Duration + Token string + Type string + type ProfilingConfig struct + Addr string + type RecorderConfig struct + File *FileRecorder + HTTP *HTTPRecorder + Name string + Plugin *PluginConfig + Redis *RedisRecorder + TCP *TCPRecorder + type RecorderObject struct + Metadata map[string]any + Name string + Record string + type RedisLoader struct + Addr string + DB int + Key string + Password string + Type string + type RedisRecorder struct + Addr string + DB int + Key string + Password string + Type string + type ResolverConfig struct + Name string + Nameservers []*NameserverConfig + Plugin *PluginConfig + type Response struct + Code int + Msg string + type RouterConfig struct + File *FileLoader + HTTP *HTTPLoader + Name string + Plugin *PluginConfig + Redis *RedisLoader + Reload time.Duration + Routes []*RouterRouteConfig + type RouterRouteConfig struct + Gateway string + Net string + type SDConfig struct + Name string + Plugin *PluginConfig + type SelectorConfig struct + FailTimeout time.Duration + MaxFails int + Strategy string + type ServiceConfig struct + Addr string + Admission string + Admissions []string + Bypass string + Bypasses []string + CLimiter string + Forwarder *ForwarderConfig + Handler *HandlerConfig + Hosts string + Interface string + Limiter string + Listener *ListenerConfig + Logger string + Loggers []string + Metadata map[string]any + Name string + Observer string + RLimiter string + Recorders []*RecorderObject + Resolver string + SockOpts *SockOptsConfig + Status *ServiceStatus + func (p *ServiceConfig) Copy() *ServiceConfig + type ServiceEvent struct + Msg string + Time int64 + type ServiceStats struct + CurrentConns uint64 + InputBytes uint64 + InputRateBytes uint64 + OutputBytes uint64 + OutputRateBytes uint64 + RequestRate float64 + Time time.Time + TotalConns uint64 + TotalErrs uint64 + type ServiceStatus struct + CreateTime int64 + Events []ServiceEvent + State string + Stats *ServiceStats + type SockOptsConfig struct + Mark int + type TCPRecorder struct + Addr string + Timeout time.Duration + type TLSConfig struct + CAFile string + CertFile string + CommonName string + KeyFile string + Options *TLSOptions + Organization string + Secure bool + ServerName string + Validity time.Duration + type TLSNodeConfig struct + Options *TLSOptions + Secure bool + ServerName string + type TLSOptions struct + CipherSuites []string + MaxVersion string + MinVersion string