Documentation ¶
Overview ¶
Package v1alpha2 contains API Schema definitions for the logging v1alpha2 API group +kubebuilder:object:generate=true +groupName=logging.banzaicloud.io
Index ¶
- Constants
- Variables
- func APITypes() []runtime.Object
- func GenerateLoggingRefLabels(loggingRef string) map[string]string
- func SetupWebhookWithManager(mgr ctrl.Manager, apiTypes ...runtime.Object) error
- type BufferStorage
- type ClusterExclude
- type ClusterFlow
- type ClusterFlowList
- type ClusterFlowSpec
- type ClusterMatch
- type ClusterOutput
- type ClusterOutputList
- type ClusterOutputSpec
- type ClusterSelect
- type DefaultFlowSpec
- type Exclude
- type Filter
- type FilterAws
- type FilterKubernetes
- type Flow
- type FlowList
- type FlowSpec
- type FlowStatus
- type FluentOutLogrotate
- type FluentbitNetwork
- type FluentbitSpec
- type FluentbitTLS
- type FluentdDrainConfig
- type FluentdScaling
- type FluentdSpec
- type FluentdTLS
- type ForwardOptions
- type ImageSpec
- type InputTail
- type Logging
- func (in *Logging) DeepCopy() *Logging
- func (in *Logging) DeepCopyInto(out *Logging)
- func (in *Logging) DeepCopyObject() runtime.Object
- func (l *Logging) Default()
- func (l *Logging) FluentdObjectMeta(name, component string) metav1.ObjectMeta
- func (l *Logging) GetFluentdLabels(component string) map[string]string
- func (l *Logging) Hub()
- func (l *Logging) QualifiedName(name string) string
- func (l *Logging) SetDefaults() error
- func (l *Logging) SetDefaultsOnCopy() (*Logging, error)
- type LoggingList
- type LoggingSpec
- type LoggingStatus
- type Match
- type Metrics
- type NodeAgent
- type NodeAgentFluentbit
- type Output
- type OutputList
- type OutputSpec
- type OutputStatus
- type ReadinessDefaultCheck
- type Security
- type Select
- type ServiceMonitorConfig
- type VolumeMount
Constants ¶
const ( DefaultFluentbitImageRepository = "fluent/fluent-bit" DefaultFluentbitImageTag = "1.8.9" DefaultFluentdImageRepository = "ghcr.io/banzaicloud/fluentd" DefaultFluentdImageTag = "v1.13.3-alpine-12" DefaultFluentdBufferStorageVolumeName = "fluentd-buffer" DefaultFluentdDrainWatchImageRepository = "ghcr.io/banzaicloud/fluentd-drain-watch" DefaultFluentdDrainWatchImageTag = "v0.0.1" DefaultFluentdDrainPauseImageRepository = "k8s.gcr.io/pause" DefaultFluentdDrainPauseImageTag = "latest" )
const (
HostPath = "/opt/logging-operator/%s/%s"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "logging.banzaicloud.io", Version: "v1beta1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var Log = ctrl.Log.WithName("Defaulter:v1beta1")
Functions ¶
func GenerateLoggingRefLabels ¶ added in v0.7.12
Types ¶
type BufferStorage ¶
type BufferStorage struct { // Set an optional location in the file system to store streams and chunks of data. If this parameter is not set, Input plugins can only use in-memory buffering. StoragePath string `json:"storage.path,omitempty"` // Configure the synchronization mode used to store the data into the file system. It can take the values normal or full. (default:normal) StorageSync string `json:"storage.sync,omitempty"` // Enable the data integrity check when writing and reading data from the filesystem. The storage layer uses the CRC32 algorithm. (default:Off) StorageChecksum string `json:"storage.checksum,omitempty"` // If storage.path is set, Fluent Bit will look for data chunks that were not delivered and are still in the storage layer, these are called backlog data. This option configure a hint of maximum value of memory to use when processing these records. (default:5M) StorageBacklogMemLimit string `json:"storage.backlog.mem_limit,omitempty"` }
BufferStorage is the Service Section Configuration of fluent-bit
func (*BufferStorage) DeepCopy ¶
func (in *BufferStorage) DeepCopy() *BufferStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BufferStorage.
func (*BufferStorage) DeepCopyInto ¶
func (in *BufferStorage) DeepCopyInto(out *BufferStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterExclude ¶ added in v0.3.0
type ClusterExclude struct { Namespaces []string `json:"namespaces,omitempty"` Labels map[string]string `json:"labels,omitempty"` Hosts []string `json:"hosts,omitempty"` ContainerNames []string `json:"container_names,omitempty"` }
func (*ClusterExclude) DeepCopy ¶ added in v0.3.0
func (in *ClusterExclude) DeepCopy() *ClusterExclude
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterExclude.
func (*ClusterExclude) DeepCopyInto ¶ added in v0.3.0
func (in *ClusterExclude) DeepCopyInto(out *ClusterExclude)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterFlow ¶
type ClusterFlow struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Name of the logging cluster to be attached Spec ClusterFlowSpec `json:"spec,omitempty"` Status FlowStatus `json:"status,omitempty"` }
ClusterFlow is the Schema for the clusterflows API
func (*ClusterFlow) DeepCopy ¶
func (in *ClusterFlow) DeepCopy() *ClusterFlow
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterFlow.
func (*ClusterFlow) DeepCopyInto ¶
func (in *ClusterFlow) DeepCopyInto(out *ClusterFlow)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterFlow) DeepCopyObject ¶
func (in *ClusterFlow) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterFlow) Hub ¶ added in v0.7.3
func (c *ClusterFlow) Hub()
type ClusterFlowList ¶
type ClusterFlowList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ClusterFlow `json:"items"` }
ClusterFlowList contains a list of ClusterFlow
func (*ClusterFlowList) DeepCopy ¶
func (in *ClusterFlowList) DeepCopy() *ClusterFlowList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterFlowList.
func (*ClusterFlowList) DeepCopyInto ¶
func (in *ClusterFlowList) DeepCopyInto(out *ClusterFlowList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterFlowList) DeepCopyObject ¶
func (in *ClusterFlowList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterFlowSpec ¶ added in v0.3.0
type ClusterFlowSpec struct { // Deprecated Selectors map[string]string `json:"selectors,omitempty"` Match []ClusterMatch `json:"match,omitempty"` Filters []Filter `json:"filters,omitempty"` LoggingRef string `json:"loggingRef,omitempty"` // Deprecated OutputRefs []string `json:"outputRefs,omitempty"` GlobalOutputRefs []string `json:"globalOutputRefs,omitempty"` }
FlowSpec is the Kubernetes spec for Flows
func (*ClusterFlowSpec) DeepCopy ¶ added in v0.3.0
func (in *ClusterFlowSpec) DeepCopy() *ClusterFlowSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterFlowSpec.
func (*ClusterFlowSpec) DeepCopyInto ¶ added in v0.3.0
func (in *ClusterFlowSpec) DeepCopyInto(out *ClusterFlowSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterMatch ¶ added in v0.3.0
type ClusterMatch struct { *ClusterSelect `json:"select,omitempty"` *ClusterExclude `json:"exclude,omitempty"` }
func (*ClusterMatch) DeepCopy ¶ added in v0.3.0
func (in *ClusterMatch) DeepCopy() *ClusterMatch
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterMatch.
func (*ClusterMatch) DeepCopyInto ¶ added in v0.3.0
func (in *ClusterMatch) DeepCopyInto(out *ClusterMatch)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterOutput ¶
type ClusterOutput struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterOutputSpec `json:"spec"` Status OutputStatus `json:"status,omitempty"` }
ClusterOutput is the Schema for the clusteroutputs API
func (*ClusterOutput) DeepCopy ¶
func (in *ClusterOutput) DeepCopy() *ClusterOutput
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterOutput.
func (*ClusterOutput) DeepCopyInto ¶
func (in *ClusterOutput) DeepCopyInto(out *ClusterOutput)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterOutput) DeepCopyObject ¶
func (in *ClusterOutput) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterOutput) Hub ¶ added in v0.7.3
func (c *ClusterOutput) Hub()
type ClusterOutputList ¶
type ClusterOutputList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ClusterOutput `json:"items"` }
ClusterOutputList contains a list of ClusterOutput
func (*ClusterOutputList) DeepCopy ¶
func (in *ClusterOutputList) DeepCopy() *ClusterOutputList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterOutputList.
func (*ClusterOutputList) DeepCopyInto ¶
func (in *ClusterOutputList) DeepCopyInto(out *ClusterOutputList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterOutputList) DeepCopyObject ¶
func (in *ClusterOutputList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterOutputSpec ¶
type ClusterOutputSpec struct { OutputSpec `json:",inline"` EnabledNamespaces []string `json:"enabledNamespaces,omitempty"` }
ClusterOutputSpec contains Kubernetes spec for CLusterOutput
func (*ClusterOutputSpec) DeepCopy ¶
func (in *ClusterOutputSpec) DeepCopy() *ClusterOutputSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterOutputSpec.
func (*ClusterOutputSpec) DeepCopyInto ¶
func (in *ClusterOutputSpec) DeepCopyInto(out *ClusterOutputSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSelect ¶ added in v0.3.0
type ClusterSelect struct { Namespaces []string `json:"namespaces,omitempty"` Labels map[string]string `json:"labels,omitempty"` Hosts []string `json:"hosts,omitempty"` ContainerNames []string `json:"container_names,omitempty"` }
func (*ClusterSelect) DeepCopy ¶ added in v0.3.0
func (in *ClusterSelect) DeepCopy() *ClusterSelect
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSelect.
func (*ClusterSelect) DeepCopyInto ¶ added in v0.3.0
func (in *ClusterSelect) DeepCopyInto(out *ClusterSelect)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DefaultFlowSpec ¶ added in v0.3.13
type DefaultFlowSpec struct { Filters []Filter `json:"filters,omitempty"` // Deprecated OutputRefs []string `json:"outputRefs,omitempty"` GlobalOutputRefs []string `json:"globalOutputRefs,omitempty"` }
DefaultFlowSpec is a Flow for logs that did not match any other Flow
func (*DefaultFlowSpec) DeepCopy ¶ added in v0.3.13
func (in *DefaultFlowSpec) DeepCopy() *DefaultFlowSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultFlowSpec.
func (*DefaultFlowSpec) DeepCopyInto ¶ added in v0.3.13
func (in *DefaultFlowSpec) DeepCopyInto(out *DefaultFlowSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Exclude ¶ added in v0.3.0
type Exclude struct { Labels map[string]string `json:"labels,omitempty"` Hosts []string `json:"hosts,omitempty"` ContainerNames []string `json:"container_names,omitempty"` }
func (*Exclude) DeepCopy ¶ added in v0.3.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Exclude.
func (*Exclude) DeepCopyInto ¶ added in v0.3.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Filter ¶
type Filter struct { StdOut *filter.StdOutFilterConfig `json:"stdout,omitempty"` Parser *filter.ParserConfig `json:"parser,omitempty"` TagNormaliser *filter.TagNormaliser `json:"tag_normaliser,omitempty"` Dedot *filter.DedotFilterConfig `json:"dedot,omitempty"` RecordTransformer *filter.RecordTransformer `json:"record_transformer,omitempty"` RecordModifier *filter.RecordModifier `json:"record_modifier,omitempty"` GeoIP *filter.GeoIP `json:"geoip,omitempty"` Concat *filter.Concat `json:"concat,omitempty"` DetectExceptions *filter.DetectExceptions `json:"detectExceptions,omitempty"` Grep *filter.GrepConfig `json:"grep,omitempty"` Prometheus *filter.PrometheusConfig `json:"prometheus,omitempty"` Throttle *filter.Throttle `json:"throttle,omitempty"` SumoLogic *filter.SumoLogic `json:"sumologic,omitempty"` EnhanceK8s *filter.EnhanceK8s `json:"enhanceK8s,omitempty"` KubeEventsTimestamp *filter.KubeEventsTimestampConfig `json:"kube_events_timestamp,omitempty"` }
Filter definition for FlowSpec
func (*Filter) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Filter.
func (*Filter) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FilterAws ¶ added in v0.3.10
type FilterAws struct { // Specify which version of the instance metadata service to use. Valid values are 'v1' or 'v2' (default). ImdsVersion string `json:"imds_version,omitempty" plugin:"default:v2"` // The availability zone (default:true). AZ *bool `json:"az,omitempty" plugin:"default:true"` // The EC2 instance ID. (default:true) Ec2InstanceID *bool `json:"ec2_instance_id,omitempty" plugin:"default:true"` // The EC2 instance type. (default:false) Ec2InstanceType *bool `json:"ec2_instance_type,omitempty" plugin:"default:false"` // The EC2 instance private ip. (default:false) PrivateIP *bool `json:"private_ip,omitempty" plugin:"default:false"` // The EC2 instance image id. (default:false) AmiID *bool `json:"ami_id,omitempty" plugin:"default:false"` // The account ID for current EC2 instance. (default:false) AccountID *bool `json:"account_id,omitempty" plugin:"default:false"` // The hostname for current EC2 instance. (default:false) Hostname *bool `json:"hostname,omitempty" plugin:"default:false"` // The VPC ID for current EC2 instance. (default:false) VpcID *bool `json:"vpc_id,omitempty" plugin:"default:false"` // Match filtered records (default:*) Match string `json:"Match,omitempty" plugin:"default:*"` }
FilterAws The AWS Filter Enriches logs with AWS Metadata.
func (*FilterAws) DeepCopy ¶ added in v0.3.10
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterAws.
func (*FilterAws) DeepCopyInto ¶ added in v0.3.10
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FilterKubernetes ¶
type FilterKubernetes struct { // Match filtered records (default:kube.*) Match string `json:"Match,omitempty" plugin:"default:kubernetes.*"` // Set the buffer size for HTTP client when reading responses from Kubernetes API server. The value must be according to the Unit Size specification. A value of 0 results in no limit, and the buffer will expand as-needed. Note that if pod specifications exceed the buffer limit, the API response will be discarded when retrieving metadata, and some kubernetes metadata will fail to be injected to the logs. If this value is empty we will set it "0". (default:"0") BufferSize string `json:"Buffer_Size,omitempty"` // API Server end-point (default:https://kubernetes.default.svc:443) KubeURL string `json:"Kube_URL,omitempty" plugin:"default:https://kubernetes.default.svc:443"` // CA certificate file (default:/var/run/secrets/kubernetes.io/serviceaccount/ca.crt) KubeCAFile string `json:"Kube_CA_File,omitempty" plugin:"default:/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"` // Absolute path to scan for certificate files KubeCAPath string `json:"Kube_CA_Path,omitempty"` // Token file (default:/var/run/secrets/kubernetes.io/serviceaccount/token) KubeTokenFile string `json:"Kube_Token_File,omitempty" plugin:"default:/var/run/secrets/kubernetes.io/serviceaccount/token"` // When the source records comes from Tail input plugin, this option allows to specify what's the prefix used in Tail configuration. (default:kube.var.log.containers.) KubeTagPrefix string `json:"Kube_Tag_Prefix,omitempty" plugin:"default:kubernetes.var.log.containers"` // When enabled, it checks if the log field content is a JSON string map, if so, it append the map fields as part of the log structure. (default:Off) MergeLog string `json:"Merge_Log,omitempty" plugin:"default:On"` // When Merge_Log is enabled, the filter tries to assume the log field from the incoming message is a JSON string message and make a structured representation of it at the same level of the log field in the map. Now if Merge_Log_Key is set (a string name), all the new structured fields taken from the original log content are inserted under the new key. MergeLogKey string `json:"Merge_Log_Key,omitempty"` // When Merge_Log is enabled, trim (remove possible \n or \r) field values. (default:On) MergeLogTrim string `json:"Merge_Log_Trim,omitempty"` // Optional parser name to specify how to parse the data contained in the log key. Recommended use is for developers or testing only. MergeParser string `json:"Merge_Parser,omitempty"` // When Keep_Log is disabled, the log field is removed from the incoming message once it has been successfully merged (Merge_Log must be enabled as well). (default:On) KeepLog string `json:"Keep_Log,omitempty"` // Debug level between 0 (nothing) and 4 (every detail). (default:-1) TLSDebug string `json:"tls.debug,omitempty"` // When enabled, turns on certificate validation when connecting to the Kubernetes API server. (default:On) TLSVerify string `json:"tls.verify,omitempty"` // When enabled, the filter reads logs coming in Journald format. (default:Off) UseJournal string `json:"Use_Journal,omitempty"` // Set an alternative Parser to process record Tag and extract pod_name, namespace_name, container_name and docker_id. The parser must be registered in a parsers file (refer to parser filter-kube-test as an example). RegexParser string `json:"Regex_Parser,omitempty"` // Allow Kubernetes Pods to suggest a pre-defined Parser (read more about it in Kubernetes Annotations section) (default:Off) K8SLoggingParser string `json:"K8S-Logging.Parser,omitempty"` // Allow Kubernetes Pods to exclude their logs from the log processor (read more about it in Kubernetes Annotations section). (default:Off) K8SLoggingExclude string `json:"K8S-Logging.Exclude,omitempty"` // Include Kubernetes resource labels in the extra metadata. (default:On) Labels string `json:"Labels,omitempty"` // Include Kubernetes resource annotations in the extra metadata. (default:On) Annotations string `json:"Annotations,omitempty"` // If set, Kubernetes meta-data can be cached/pre-loaded from files in JSON format in this directory, named as namespace-pod.meta KubeMetaPreloadCacheDir string `json:"Kube_meta_preload_cache_dir,omitempty"` // If set, use dummy-meta data (for test/dev purposes) (default:Off) DummyMeta string `json:"Dummy_Meta,omitempty"` // DNS lookup retries N times until the network start working (default:6) DNSRetries string `json:"DNS_Retries,omitempty"` // DNS lookup interval between network status checks (default:30) DNSWaitTime string `json:"DNS_Wait_Time,omitempty"` // This is an optional feature flag to get metadata information from kubelet instead of calling Kube Server API to enhance the log. (default:Off) UseKubelet string `json:"Use_Kubelet,omitempty"` // kubelet port using for HTTP request, this only works when Use_Kubelet set to On (default:10250) KubeletPort string `json:"Kubelet_Port,omitempty"` }
FilterKubernetes Fluent Bit Kubernetes Filter allows to enrich your log files with Kubernetes metadata.
func (*FilterKubernetes) DeepCopy ¶
func (in *FilterKubernetes) DeepCopy() *FilterKubernetes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterKubernetes.
func (*FilterKubernetes) DeepCopyInto ¶
func (in *FilterKubernetes) DeepCopyInto(out *FilterKubernetes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Flow ¶
type Flow struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec FlowSpec `json:"spec,omitempty"` Status FlowStatus `json:"status,omitempty"` }
Flow Kubernetes object
func (*Flow) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Flow.
func (*Flow) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Flow) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FlowList ¶
type FlowList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Flow `json:"items"` }
FlowList contains a list of Flow
func (*FlowList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlowList.
func (*FlowList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FlowList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FlowSpec ¶
type FlowSpec struct { // Deprecated Selectors map[string]string `json:"selectors,omitempty"` Match []Match `json:"match,omitempty"` Filters []Filter `json:"filters,omitempty"` LoggingRef string `json:"loggingRef,omitempty"` // Deprecated OutputRefs []string `json:"outputRefs,omitempty"` GlobalOutputRefs []string `json:"globalOutputRefs,omitempty"` LocalOutputRefs []string `json:"localOutputRefs,omitempty"` }
FlowSpec is the Kubernetes spec for Flows
func (*FlowSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlowSpec.
func (*FlowSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FlowStatus ¶
type FlowStatus struct { Active *bool `json:"active,omitempty"` Problems []string `json:"problems,omitempty"` ProblemsCount int `json:"problemsCount,omitempty"` }
FlowStatus defines the observed state of Flow
func (*FlowStatus) DeepCopy ¶
func (in *FlowStatus) DeepCopy() *FlowStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlowStatus.
func (*FlowStatus) DeepCopyInto ¶
func (in *FlowStatus) DeepCopyInto(out *FlowStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluentOutLogrotate ¶
type FluentOutLogrotate struct { Enabled bool `json:"enabled"` Path string `json:"path,omitempty"` Age string `json:"age,omitempty"` Size string `json:"size,omitempty"` }
func (*FluentOutLogrotate) DeepCopy ¶
func (in *FluentOutLogrotate) DeepCopy() *FluentOutLogrotate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentOutLogrotate.
func (*FluentOutLogrotate) DeepCopyInto ¶
func (in *FluentOutLogrotate) DeepCopyInto(out *FluentOutLogrotate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluentbitNetwork ¶ added in v0.6.4
type FluentbitNetwork struct { // Sets the timeout for connecting to an upstream (default: 10) ConnectTimeout *uint32 `json:"connectTimeout,omitempty"` // Whether or not TCP keepalive is used for the upstream connection (default: true) Keepalive *bool `json:"keepalive,omitempty"` // How long in seconds a TCP keepalive connection can be idle before being recycled (default: 30) KeepaliveIdleTimeout *uint32 `json:"keepaliveIdleTimeout,omitempty"` // How many times a TCP keepalive connection can be used before being recycled (default: 0, disabled) KeepaliveMaxRecycle *uint32 `json:"keepaliveMaxRecycle,omitempty"` }
FluentbitNetwork defines network configuration for fluentbit
func (*FluentbitNetwork) DeepCopy ¶ added in v0.6.4
func (in *FluentbitNetwork) DeepCopy() *FluentbitNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentbitNetwork.
func (*FluentbitNetwork) DeepCopyInto ¶ added in v0.6.4
func (in *FluentbitNetwork) DeepCopyInto(out *FluentbitNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluentbitSpec ¶
type FluentbitSpec struct { Annotations map[string]string `json:"annotations,omitempty"` Labels map[string]string `json:"labels,omitempty"` EnvVars []corev1.EnvVar `json:"envVars,omitempty"` Image ImageSpec `json:"image,omitempty"` TLS *FluentbitTLS `json:"tls,omitempty"` TargetHost string `json:"targetHost,omitempty"` TargetPort int32 `json:"targetPort,omitempty"` // Set the flush time in seconds.nanoseconds. The engine loop uses a Flush timeout to define when is required to flush the records ingested by input plugins through the defined output plugins. (default: 1) Flush int32 `json:"flush,omitempty" plugin:"default:1"` // Set the grace time in seconds as Integer value. The engine loop uses a Grace timeout to define wait time on exit (default: 5) Grace int32 `json:"grace,omitempty" plugin:"default:5"` // Set the logging verbosity level. Allowed values are: error, warn, info, debug and trace. Values are accumulative, e.g: if 'debug' is set, it will include error, warning, info and debug. Note that trace mode is only available if Fluent Bit was built with the WITH_TRACE option enabled. (default: info) LogLevel string `json:"logLevel,omitempty" plugin:"default:info"` // Set the coroutines stack size in bytes. The value must be greater than the page size of the running system. Don't set too small value (say 4096), or coroutine threads can overrun the stack buffer. //Do not change the default value of this parameter unless you know what you are doing. (default: 24576) CoroStackSize int32 `json:"coroStackSize,omitempty" plugin:"default:24576"` Resources corev1.ResourceRequirements `json:"resources,omitempty"` Tolerations []corev1.Toleration `json:"tolerations,omitempty"` NodeSelector map[string]string `json:"nodeSelector,omitempty"` Affinity *corev1.Affinity `json:"affinity,omitempty"` Metrics *Metrics `json:"metrics,omitempty"` Security *Security `json:"security,omitempty"` // +docLink:"volume.KubernetesVolume,https://github.com/banzaicloud/operator-tools/tree/master/docs/types" PositionDB volume.KubernetesVolume `json:"positiondb,omitempty"` // Deprecated, use positiondb PosisionDBLegacy *volume.KubernetesVolume `json:"position_db,omitempty"` MountPath string `json:"mountPath,omitempty"` ExtraVolumeMounts []*VolumeMount `json:"extraVolumeMounts,omitempty"` InputTail InputTail `json:"inputTail,omitempty"` FilterAws *FilterAws `json:"filterAws,omitempty"` // Deprecated, use inputTail.parser Parser string `json:"parser,omitempty"` // Parameters for Kubernetes metadata filter FilterKubernetes FilterKubernetes `json:"filterKubernetes,omitempty"` // Disable Kubernetes metadata filter DisableKubernetesFilter *bool `json:"disableKubernetesFilter,omitempty"` BufferStorage BufferStorage `json:"bufferStorage,omitempty"` // +docLink:"volume.KubernetesVolume,https://github.com/banzaicloud/operator-tools/tree/master/docs/types" BufferStorageVolume volume.KubernetesVolume `json:"bufferStorageVolume,omitempty"` CustomConfigSecret string `json:"customConfigSecret,omitempty"` PodPriorityClassName string `json:"podPriorityClassName,omitempty"` LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"` LivenessDefaultCheck bool `json:"livenessDefaultCheck,omitempty"` ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"` Network *FluentbitNetwork `json:"network,omitempty"` ForwardOptions *ForwardOptions `json:"forwardOptions,omitempty"` EnableUpstream bool `json:"enableUpstream,omitempty"` ServiceAccountOverrides *typeoverride.ServiceAccount `json:"serviceAccount,omitempty"` DNSPolicy corev1.DNSPolicy `json:"dnsPolicy,omitempty"` DNSConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"` }
FluentbitSpec defines the desired state of Fluentbit
func (*FluentbitSpec) DeepCopy ¶
func (in *FluentbitSpec) DeepCopy() *FluentbitSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentbitSpec.
func (*FluentbitSpec) DeepCopyInto ¶
func (in *FluentbitSpec) DeepCopyInto(out *FluentbitSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (FluentbitSpec) GetPrometheusPortFromAnnotation ¶
func (spec FluentbitSpec) GetPrometheusPortFromAnnotation() int32
GetPrometheusPortFromAnnotation gets the port value from annotation
type FluentbitTLS ¶
type FluentbitTLS struct { Enabled *bool `json:"enabled"` SecretName string `json:"secretName,omitempty"` }
FluentbitTLS defines the TLS configs
func (*FluentbitTLS) DeepCopy ¶
func (in *FluentbitTLS) DeepCopy() *FluentbitTLS
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentbitTLS.
func (*FluentbitTLS) DeepCopyInto ¶
func (in *FluentbitTLS) DeepCopyInto(out *FluentbitTLS)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluentdDrainConfig ¶ added in v0.7.4
type FluentdDrainConfig struct { // Should buffers on persistent volumes left after scaling down the statefulset be drained Enabled bool `json:"enabled,omitempty"` // Container image to use for the drain watch sidecar Annotations map[string]string `json:"annotations,omitempty"` Image ImageSpec `json:"image,omitempty"` // Container image to use for the fluentd placeholder pod PauseImage ImageSpec `json:"pauseImage,omitempty"` }
FluentdDrainConfig enables configuring the drain behavior when scaling down the fluentd statefulset
func (*FluentdDrainConfig) DeepCopy ¶ added in v0.7.4
func (in *FluentdDrainConfig) DeepCopy() *FluentdDrainConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentdDrainConfig.
func (*FluentdDrainConfig) DeepCopyInto ¶ added in v0.7.4
func (in *FluentdDrainConfig) DeepCopyInto(out *FluentdDrainConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluentdScaling ¶
type FluentdScaling struct { Replicas int `json:"replicas,omitempty"` PodManagementPolicy string `json:"podManagementPolicy,omitempty"` Drain FluentdDrainConfig `json:"drain,omitempty"` }
FluentdScaling enables configuring the scaling behaviour of the fluentd statefulset
func (*FluentdScaling) DeepCopy ¶
func (in *FluentdScaling) DeepCopy() *FluentdScaling
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentdScaling.
func (*FluentdScaling) DeepCopyInto ¶
func (in *FluentdScaling) DeepCopyInto(out *FluentdScaling)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluentdSpec ¶
type FluentdSpec struct { Annotations map[string]string `json:"annotations,omitempty"` ConfigCheckAnnotations map[string]string `json:"configCheckAnnotations,omitempty"` Labels map[string]string `json:"labels,omitempty"` EnvVars []corev1.EnvVar `json:"envVars,omitempty"` TLS FluentdTLS `json:"tls,omitempty"` Image ImageSpec `json:"image,omitempty"` DisablePvc bool `json:"disablePvc,omitempty"` // BufferStorageVolume is by default configured as PVC using FluentdPvcSpec // +docLink:"volume.KubernetesVolume,https://github.com/banzaicloud/operator-tools/tree/master/docs/types" BufferStorageVolume volume.KubernetesVolume `json:"bufferStorageVolume,omitempty"` // Deprecated, use bufferStorageVolume FluentdPvcSpec *volume.KubernetesVolume `json:"fluentdPvcSpec,omitempty"` VolumeMountChmod bool `json:"volumeMountChmod,omitempty"` VolumeModImage ImageSpec `json:"volumeModImage,omitempty"` ConfigReloaderImage ImageSpec `json:"configReloaderImage,omitempty"` Resources corev1.ResourceRequirements `json:"resources,omitempty"` ConfigCheckResources corev1.ResourceRequirements `json:"configCheckResources,omitempty"` ConfigReloaderResources corev1.ResourceRequirements `json:"configReloaderResources,omitempty"` LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"` LivenessDefaultCheck bool `json:"livenessDefaultCheck,omitempty"` ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"` ReadinessDefaultCheck ReadinessDefaultCheck `json:"readinessDefaultCheck,omitempty"` Port int32 `json:"port,omitempty"` Tolerations []corev1.Toleration `json:"tolerations,omitempty"` NodeSelector map[string]string `json:"nodeSelector,omitempty"` Affinity *corev1.Affinity `json:"affinity,omitempty"` TopologySpreadConstraints []corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"` Metrics *Metrics `json:"metrics,omitempty"` BufferVolumeMetrics *Metrics `json:"bufferVolumeMetrics,omitempty"` BufferVolumeImage ImageSpec `json:"bufferVolumeImage,omitempty"` BufferVolumeArgs []string `json:"bufferVolumeArgs,omitempty"` Security *Security `json:"security,omitempty"` Scaling *FluentdScaling `json:"scaling,omitempty"` Workers int32 `json:"workers,omitempty"` RootDir string `json:"rootDir,omitempty"` // +kubebuilder:validation:enum=fatal,error,warn,info,debug,trace LogLevel string `json:"logLevel,omitempty"` // Ignore same log lines // +docLink:"more info, https://docs.fluentd.org/deployment/logging#ignore_same_log_interval" IgnoreSameLogInterval string `json:"ignoreSameLogInterval,omitempty"` // Ignore repeated log lines // +docLink:"more info, https://docs.fluentd.org/deployment/logging#ignore_repeated_log_interval" IgnoreRepeatedLogInterval string `json:"ignoreRepeatedLogInterval,omitempty"` PodPriorityClassName string `json:"podPriorityClassName,omitempty"` // +kubebuilder:validation:enum=stdout,null FluentLogDestination string `json:"fluentLogDestination,omitempty"` // FluentOutLogrotate sends fluent's stdout to file and rotates it FluentOutLogrotate *FluentOutLogrotate `json:"fluentOutLogrotate,omitempty"` ForwardInputConfig *input.ForwardInputConfig `json:"forwardInputConfig,omitempty"` ServiceAccountOverrides *typeoverride.ServiceAccount `json:"serviceAccount,omitempty"` DNSPolicy corev1.DNSPolicy `json:"dnsPolicy,omitempty"` DNSConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"` ServiceTopologyKeys []string `json:"serviceTopologyKeys,omitempty"` HeadlessServiceTopologyKeys []string `json:"headlessServiceTopologyKeys,omitempty"` }
FluentdSpec defines the desired state of Fluentd
func (*FluentdSpec) DeepCopy ¶
func (in *FluentdSpec) DeepCopy() *FluentdSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentdSpec.
func (*FluentdSpec) DeepCopyInto ¶
func (in *FluentdSpec) DeepCopyInto(out *FluentdSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluentdTLS ¶
type FluentdTLS struct { Enabled bool `json:"enabled"` SecretName string `json:"secretName,omitempty"` }
FluentdTLS defines the TLS configs
func (*FluentdTLS) DeepCopy ¶
func (in *FluentdTLS) DeepCopy() *FluentdTLS
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluentdTLS.
func (*FluentdTLS) DeepCopyInto ¶
func (in *FluentdTLS) DeepCopyInto(out *FluentdTLS)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ForwardOptions ¶ added in v0.6.7
type ForwardOptions struct { TimeAsInteger bool `json:"Time_as_Integer,omitempty"` SendOptions bool `json:"Send_options,omitempty"` RequireAckResponse bool `json:"Require_ack_response,omitempty"` Tag string `json:"Tag,omitempty"` RetryLimit string `json:"Retry_Limit,omitempty"` // `storage.total_limit_size` Limit the maximum number of Chunks in the filesystem for the current output logical destination. StorageTotalLimitSize string `json:"storage.total_limit_size,omitempty"` }
ForwardOptions defines custom forward output plugin options, see https://docs.fluentbit.io/manual/pipeline/outputs/forward
func (*ForwardOptions) DeepCopy ¶ added in v0.6.7
func (in *ForwardOptions) DeepCopy() *ForwardOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardOptions.
func (*ForwardOptions) DeepCopyInto ¶ added in v0.6.7
func (in *ForwardOptions) DeepCopyInto(out *ForwardOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageSpec ¶
type ImageSpec struct { Repository string `json:"repository,omitempty"` Tag string `json:"tag,omitempty"` PullPolicy string `json:"pullPolicy,omitempty"` ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` }
ImageSpec struct hold information about image specification
func (*ImageSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSpec.
func (*ImageSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ImageSpec) RepositoryWithTag ¶ added in v0.7.4
type InputTail ¶
type InputTail struct { // Specify the buffering mechanism to use. It can be memory or filesystem. (default:memory) StorageType string `json:"storage.type,omitempty"` // Set the buffer size for HTTP client when reading responses from Kubernetes API server. The value must be according to the Unit Size specification. (default:32k) BufferChunkSize string `json:"Buffer_Chunk_Size,omitempty"` // Set the limit of the buffer size per monitored file. When a buffer needs to be increased (e.g: very long lines), this value is used to restrict how much the memory buffer can grow. If reading a file exceed this limit, the file is removed from the monitored file list. The value must be according to the Unit Size specification. (default:Buffer_Chunk_Size) BufferMaxSize string `json:"Buffer_Max_Size,omitempty"` // Pattern specifying a specific log files or multiple ones through the use of common wildcards. Path string `json:"Path,omitempty"` // If enabled, it appends the name of the monitored file as part of the record. The value assigned becomes the key in the map. PathKey string `json:"Path_Key,omitempty"` // Set one or multiple shell patterns separated by commas to exclude files matching a certain criteria, e.g: exclude_path=*.gz,*.zip ExcludePath string `json:"Exclude_Path,omitempty"` // The interval of refreshing the list of watched files in seconds. (default:60) RefreshInterval string `json:"Refresh_Interval,omitempty"` // Specify the number of extra time in seconds to monitor a file once is rotated in case some pending data is flushed. (default:5) RotateWait string `json:"Rotate_Wait,omitempty"` // Ignores files that have been last modified before this time in seconds. Supports m,h,d (minutes, hours,days) syntax. Default behavior is to read all specified files. IgnoreOlder string `json:"Ignore_Older,omitempty"` // When a monitored file reach it buffer capacity due to a very long line (Buffer_Max_Size), the default behavior is to stop monitoring that file. Skip_Long_Lines alter that behavior and instruct Fluent Bit to skip long lines and continue processing other lines that fits into the buffer size. (default:Off) SkipLongLines string `json:"Skip_Long_Lines,omitempty"` // Specify the database file to keep track of monitored files and offsets. DB *string `json:"DB,omitempty"` // Set a default synchronization (I/O) method. Values: Extra, Full, Normal, Off. This flag affects how the internal SQLite engine do synchronization to disk, for more details about each option please refer to this section. (default:Full) DBSync string `json:"DB_Sync,omitempty"` // Set a limit of memory that Tail plugin can use when appending data to the Engine. If the limit is reach, it will be paused; when the data is flushed it resumes. MemBufLimit string `json:"Mem_Buf_Limit,omitempty"` // Specify the name of a parser to interpret the entry as a structured message. Parser string `json:"Parser,omitempty"` // When a message is unstructured (no parser applied), it's appended as a string under the key name log. This option allows to define an alternative name for that key. (default:log) Key string `json:"Key,omitempty"` // Set a tag (with regex-extract fields) that will be placed on lines read. Tag string `json:"Tag,omitempty"` // Set a regex to extract fields from the file. TagRegex string `json:"Tag_Regex,omitempty"` // If enabled, the plugin will try to discover multiline messages and use the proper parsers to compose the outgoing messages. Note that when this option is enabled the Parser option is not used. (default:Off) Multiline string `json:"Multiline,omitempty"` // Wait period time in seconds to process queued multiline messages (default:4) MultilineFlush string `json:"Multiline_Flush,omitempty"` // Name of the parser that machs the beginning of a multiline message. Note that the regular expression defined in the parser must include a group name (named capture) ParserFirstline string `json:"Parser_Firstline,omitempty"` // Optional-extra parser to interpret and structure multiline entries. This option can be used to define multiple parsers, e.g: Parser_1 ab1, Parser_2 ab2, Parser_N abN. ParserN []string `json:"Parser_N,omitempty"` // If enabled, the plugin will recombine split Docker log lines before passing them to any parser as configured above. This mode cannot be used at the same time as Multiline. (default:Off) DockerMode string `json:"Docker_Mode,omitempty"` // Specify an optional parser for the first line of the docker multiline mode. DockerModeParser string `json:"Docker_Mode_Parser,omitempty"` //Wait period time in seconds to flush queued unfinished split lines. (default:4) DockerModeFlush string `json:"Docker_Mode_Flush,omitempty"` // Specify one or multiple parser definitions to apply to the content. Part of the new Multiline Core support in 1.8 (default: "") MultilineParser []string `json:"multiline.parser,omitempty"` }
InputTail defines Fluentbit tail input configuration The tail input plugin allows to monitor one or several text files. It has a similar behavior like tail -f shell command.
func (*InputTail) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputTail.
func (*InputTail) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Logging ¶
type Logging struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec LoggingSpec `json:"spec,omitempty"` Status LoggingStatus `json:"status,omitempty"` }
Logging is the Schema for the loggings API
func (*Logging) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Logging.
func (*Logging) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Logging) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Logging) FluentdObjectMeta ¶ added in v0.7.12
func (l *Logging) FluentdObjectMeta(name, component string) metav1.ObjectMeta
FluentdObjectMeta creates an objectMeta for resource fluentd
func (*Logging) GetFluentdLabels ¶ added in v0.7.12
func (*Logging) Hub ¶ added in v0.7.3
func (l *Logging) Hub()
Hub marks these types as conversion hub.
func (*Logging) QualifiedName ¶
QualifiedName is the "logging-resource" name combined
func (*Logging) SetDefaults ¶
SetDefaults fills empty attributes
func (*Logging) SetDefaultsOnCopy ¶ added in v0.6.1
SetDefaultsOnCopy makes a deep copy of the instance and sets defaults on the copy
type LoggingList ¶
type LoggingList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Logging `json:"items"` }
LoggingList contains a list of Logging
func (*LoggingList) DeepCopy ¶
func (in *LoggingList) DeepCopy() *LoggingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingList.
func (*LoggingList) DeepCopyInto ¶
func (in *LoggingList) DeepCopyInto(out *LoggingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LoggingList) DeepCopyObject ¶
func (in *LoggingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type LoggingSpec ¶
type LoggingSpec struct { // Reference to the logging system. Each of the `loggingRef`s can manage a fluentbit daemonset and a fluentd statefulset. LoggingRef string `json:"loggingRef,omitempty"` // Disable configuration check before applying new fluentd configuration. FlowConfigCheckDisabled bool `json:"flowConfigCheckDisabled,omitempty"` // Override generated config. This is a *raw* configuration string for troubleshooting purposes. FlowConfigOverride string `json:"flowConfigOverride,omitempty"` // Fluentbit daemonset configuration. FluentbitSpec *FluentbitSpec `json:"fluentbit,omitempty"` // Fluentd statefulset configuration FluentdSpec *FluentdSpec `json:"fluentd,omitempty"` // Default flow for unmatched logs. This Flow configuration collects all logs that didn't matched any other Flow. DefaultFlowSpec *DefaultFlowSpec `json:"defaultFlow,omitempty"` // GlobalOutput name to flush ERROR events to ErrorOutputRef string `json:"errorOutputRef,omitempty"` // Global filters to apply on logs before any match or filter mechanism. GlobalFilters []Filter `json:"globalFilters,omitempty"` // Limit namespaces to watch Flow and Output custom reasources. WatchNamespaces []string `json:"watchNamespaces,omitempty"` // Namespace for cluster wide configuration resources like CLusterFlow and ClusterOutput. // This should be a protected namespace from regular users. // Resources like fluentbit and fluentd will run in this namespace as well. ControlNamespace string `json:"controlNamespace"` // Allow configuration of cluster resources from any namespace. Mutually exclusive with ControlNamespace restriction of Cluster resources AllowClusterResourcesFromAllNamespaces bool `json:"allowClusterResourcesFromAllNamespaces,omitempty"` // NodeAgent Configuration NodeAgents []*NodeAgent `json:"nodeAgents,omitempty"` // EnableRecreateWorkloadOnImmutableFieldChange enables the operator to recreate the // fluentbit daemonset and the fluentd statefulset (and possibly other resource in the future) // in case there is a change in an immutable field // that otherwise couldn't be managed with a simple update. EnableRecreateWorkloadOnImmutableFieldChange bool `json:"enableRecreateWorkloadOnImmutableFieldChange,omitempty"` }
LoggingSpec defines the desired state of Logging
func (*LoggingSpec) DeepCopy ¶
func (in *LoggingSpec) DeepCopy() *LoggingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingSpec.
func (*LoggingSpec) DeepCopyInto ¶
func (in *LoggingSpec) DeepCopyInto(out *LoggingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoggingStatus ¶
type LoggingStatus struct {
ConfigCheckResults map[string]bool `json:"configCheckResults,omitempty"`
}
LoggingStatus defines the observed state of Logging
func (*LoggingStatus) DeepCopy ¶
func (in *LoggingStatus) DeepCopy() *LoggingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingStatus.
func (*LoggingStatus) DeepCopyInto ¶
func (in *LoggingStatus) DeepCopyInto(out *LoggingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Match ¶ added in v0.3.0
func (*Match) DeepCopy ¶ added in v0.3.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Match.
func (*Match) DeepCopyInto ¶ added in v0.3.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Metrics ¶
type Metrics struct { Interval string `json:"interval,omitempty"` Timeout string `json:"timeout,omitempty"` Port int32 `json:"port,omitempty"` Path string `json:"path,omitempty"` ServiceMonitor bool `json:"serviceMonitor,omitempty"` ServiceMonitorConfig ServiceMonitorConfig `json:"serviceMonitorConfig,omitempty"` PrometheusAnnotations bool `json:"prometheusAnnotations,omitempty"` PrometheusRules bool `json:"prometheusRules,omitempty"` }
Metrics defines the service monitor endpoints
func (*Metrics) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metrics.
func (*Metrics) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeAgent ¶ added in v0.6.16
type NodeAgent struct { //NodeAgent unique name. Name string `json:"name,omitempty"` // Specify the Logging-Operator nodeAgents profile. It can be linux or windows . (default:linux) Profile string `json:"profile,omitempty"` Metadata types.MetaBase `json:"metadata,omitempty"` FluentbitSpec *NodeAgentFluentbit `json:"nodeAgentFluentbit,omitempty"` }
func (*NodeAgent) DeepCopy ¶ added in v0.6.16
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAgent.
func (*NodeAgent) DeepCopyInto ¶ added in v0.6.16
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeAgentFluentbit ¶ added in v0.6.16
type NodeAgentFluentbit struct { Enabled *bool `json:"enabled,omitempty"` DaemonSetOverrides *typeoverride.DaemonSet `json:"daemonSet,omitempty"` ServiceAccountOverrides *typeoverride.ServiceAccount `json:"serviceAccount,omitempty"` TLS *FluentbitTLS `json:"tls,omitempty"` TargetHost string `json:"targetHost,omitempty"` TargetPort int32 `json:"targetPort,omitempty"` // Set the flush time in seconds.nanoseconds. The engine loop uses a Flush timeout to define when is required to flush the records ingested by input plugins through the defined output plugins. (default: 1) Flush int32 `json:"flush,omitempty" plugin:"default:1"` // Set the grace time in seconds as Integer value. The engine loop uses a Grace timeout to define wait time on exit (default: 5) Grace int32 `json:"grace,omitempty" plugin:"default:5"` // Set the logging verbosity level. Allowed values are: error, warn, info, debug and trace. Values are accumulative, e.g: if 'debug' is set, it will include error, warning, info and debug. Note that trace mode is only available if Fluent Bit was built with the WITH_TRACE option enabled. (default: info) LogLevel string `json:"logLevel,omitempty" plugin:"default:info"` // Set the coroutines stack size in bytes. The value must be greater than the page size of the running system. Don't set too small value (say 4096), or coroutine threads can overrun the stack buffer. //Do not change the default value of this parameter unless you know what you are doing. (default: 24576) CoroStackSize int32 `json:"coroStackSize,omitempty" plugin:"default:24576"` Metrics *Metrics `json:"metrics,omitempty"` MetricsService *typeoverride.Service `json:"metricsService,omitempty"` Security *Security `json:"security,omitempty"` // +docLink:"volume.KubernetesVolume,https://github.com/banzaicloud/operator-tools/tree/master/docs/types" PositionDB volume.KubernetesVolume `json:"positiondb,omitempty"` ContainersPath string `json:"containersPath,omitempty"` VarLogsPath string `json:"varLogsPath,omitempty"` ExtraVolumeMounts []*VolumeMount `json:"extraVolumeMounts,omitempty"` InputTail InputTail `json:"inputTail,omitempty"` FilterAws *FilterAws `json:"filterAws,omitempty"` FilterKubernetes FilterKubernetes `json:"filterKubernetes,omitempty"` DisableKubernetesFilter *bool `json:"disableKubernetesFilter,omitempty"` BufferStorage BufferStorage `json:"bufferStorage,omitempty"` // +docLink:"volume.KubernetesVolume,https://github.com/banzaicloud/operator-tools/tree/master/docs/types" BufferStorageVolume volume.KubernetesVolume `json:"bufferStorageVolume,omitempty"` CustomConfigSecret string `json:"customConfigSecret,omitempty"` PodPriorityClassName string `json:"podPriorityClassName,omitempty"` LivenessDefaultCheck *bool `json:"livenessDefaultCheck,omitempty" plugin:"default:true"` Network *FluentbitNetwork `json:"network,omitempty"` ForwardOptions *ForwardOptions `json:"forwardOptions,omitempty"` EnableUpstream *bool `json:"enableUpstream,omitempty"` }
func (*NodeAgentFluentbit) DeepCopy ¶ added in v0.6.16
func (in *NodeAgentFluentbit) DeepCopy() *NodeAgentFluentbit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAgentFluentbit.
func (*NodeAgentFluentbit) DeepCopyInto ¶ added in v0.6.16
func (in *NodeAgentFluentbit) DeepCopyInto(out *NodeAgentFluentbit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Output ¶
type Output struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OutputSpec `json:"spec,omitempty"` Status OutputStatus `json:"status,omitempty"` }
Output is the Schema for the outputs API
func (*Output) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Output.
func (*Output) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Output) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OutputList ¶
type OutputList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Output `json:"items"` }
OutputList contains a list of Output
func (*OutputList) DeepCopy ¶
func (in *OutputList) DeepCopy() *OutputList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputList.
func (*OutputList) DeepCopyInto ¶
func (in *OutputList) DeepCopyInto(out *OutputList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OutputList) DeepCopyObject ¶
func (in *OutputList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OutputSpec ¶
type OutputSpec struct { LoggingRef string `json:"loggingRef,omitempty"` S3OutputConfig *output.S3OutputConfig `json:"s3,omitempty"` AzureStorage *output.AzureStorage `json:"azurestorage,omitempty"` GCSOutput *output.GCSOutput `json:"gcs,omitempty"` OSSOutput *output.OSSOutput `json:"oss,omitempty"` ElasticsearchOutput *output.ElasticsearchOutput `json:"elasticsearch,omitempty"` LogZOutput *output.LogZOutput `json:"logz,omitempty"` LokiOutput *output.LokiOutput `json:"loki,omitempty"` SumologicOutput *output.SumologicOutput `json:"sumologic,omitempty"` DatadogOutput *output.DatadogOutput `json:"datadog,omitempty"` ForwardOutput *output.ForwardOutput `json:"forward,omitempty"` FileOutput *output.FileOutputConfig `json:"file,omitempty"` NullOutputConfig *output.NullOutputConfig `json:"nullout,omitempty"` KafkaOutputConfig *output.KafkaOutputConfig `json:"kafka,omitempty"` CloudWatchOutput *output.CloudWatchOutput `json:"cloudwatch,omitempty"` KinesisStreamOutputConfig *output.KinesisStreamOutputConfig `json:"kinesisStream,omitempty"` LogDNAOutput *output.LogDNAOutput `json:"logdna,omitempty"` NewRelicOutputConfig *output.NewRelicOutputConfig `json:"newrelic,omitempty"` SplunkHecOutput *output.SplunkHecOutput `json:"splunkHec,omitempty"` HTTPOutput *output.HTTPOutputConfig `json:"http,omitempty"` AwsElasticsearchOutputConfig *output.AwsElasticsearchOutputConfig `json:"awsElasticsearch,omitempty"` RedisOutputConfig *output.RedisOutputConfig `json:"redis,omitempty"` SyslogOutputConfig *output.SyslogOutputConfig `json:"syslog,omitempty"` GELFOutputConfig *output.GELFOutputConfig `json:"gelf,omitempty"` SQSOutputConfig *output.SQSOutputConfig `json:"sqs,omitempty"` }
OutputSpec defines the desired state of Output
func (*OutputSpec) DeepCopy ¶
func (in *OutputSpec) DeepCopy() *OutputSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputSpec.
func (*OutputSpec) DeepCopyInto ¶
func (in *OutputSpec) DeepCopyInto(out *OutputSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OutputStatus ¶
type OutputStatus struct { Active *bool `json:"active,omitempty"` Problems []string `json:"problems,omitempty"` ProblemsCount int `json:"problemsCount,omitempty"` }
OutputStatus defines the observed state of Output
func (*OutputStatus) DeepCopy ¶
func (in *OutputStatus) DeepCopy() *OutputStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputStatus.
func (*OutputStatus) DeepCopyInto ¶
func (in *OutputStatus) DeepCopyInto(out *OutputStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReadinessDefaultCheck ¶ added in v0.7.7
type ReadinessDefaultCheck struct { // Enable default Readiness check it'll fail if the buffer volume free space exceeds the `readinessDefaultThreshold` percentage (90%). BufferFreeSpace bool `json:"bufferFreeSpace,omitempty"` BufferFreeSpaceThreshold int32 `json:"bufferFreeSpaceThreshold,omitempty"` BufferFileNumber bool `json:"bufferFileNumber,omitempty"` BufferFileNumberMax int32 `json:"bufferFileNumberMax,omitempty"` InitialDelaySeconds int32 `json:"initialDelaySeconds,omitempty"` TimeoutSeconds int32 `json:"timeoutSeconds,omitempty"` PeriodSeconds int32 `json:"periodSeconds,omitempty"` SuccessThreshold int32 `json:"successThreshold,omitempty"` FailureThreshold int32 `json:"failureThreshold,omitempty"` }
ReadinessDefaultCheck Enable default readiness checks
func (*ReadinessDefaultCheck) DeepCopy ¶ added in v0.7.7
func (in *ReadinessDefaultCheck) DeepCopy() *ReadinessDefaultCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadinessDefaultCheck.
func (*ReadinessDefaultCheck) DeepCopyInto ¶ added in v0.7.7
func (in *ReadinessDefaultCheck) DeepCopyInto(out *ReadinessDefaultCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Security ¶
type Security struct { ServiceAccount string `json:"serviceAccount,omitempty"` RoleBasedAccessControlCreate *bool `json:"roleBasedAccessControlCreate,omitempty"` PodSecurityPolicyCreate bool `json:"podSecurityPolicyCreate,omitempty"` SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"` PodSecurityContext *corev1.PodSecurityContext `json:"podSecurityContext,omitempty"` }
Security defines Fluentd, Fluentbit deployment security properties
func (*Security) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Security.
func (*Security) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Select ¶ added in v0.3.0
type Select struct { Labels map[string]string `json:"labels,omitempty"` Hosts []string `json:"hosts,omitempty"` ContainerNames []string `json:"container_names,omitempty"` }
func (*Select) DeepCopy ¶ added in v0.3.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Select.
func (*Select) DeepCopyInto ¶ added in v0.3.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceMonitorConfig ¶ added in v0.3.17
type ServiceMonitorConfig struct { AdditionalLabels map[string]string `json:"additionalLabels,omitempty"` HonorLabels bool `json:"honorLabels,omitempty"` Relabelings []*v1.RelabelConfig `json:"relabelings,omitempty"` MetricsRelabelings []*v1.RelabelConfig `json:"metricRelabelings,omitempty"` Scheme string `json:"scheme,omitempty"` TLSConfig *v1.TLSConfig `json:"tlsConfig,omitempty"` }
ServiceMonitorConfig defines the ServiceMonitor properties
func (*ServiceMonitorConfig) DeepCopy ¶ added in v0.3.17
func (in *ServiceMonitorConfig) DeepCopy() *ServiceMonitorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMonitorConfig.
func (*ServiceMonitorConfig) DeepCopyInto ¶ added in v0.3.17
func (in *ServiceMonitorConfig) DeepCopyInto(out *ServiceMonitorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeMount ¶ added in v0.3.0
type VolumeMount struct { // Source folder // +kubebuilder:validation:Pattern=^/.+$ Source string `json:"source"` // Destination Folder // +kubebuilder:validation:Pattern=^/.+$ Destination string `json:"destination"` // Mount Mode ReadOnly *bool `json:"readOnly,omitempty"` }
VolumeMount defines source and destination folders of a hostPath type pod mount
func (*VolumeMount) DeepCopy ¶ added in v0.3.0
func (in *VolumeMount) DeepCopy() *VolumeMount
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeMount.
func (*VolumeMount) DeepCopyInto ¶ added in v0.3.0
func (in *VolumeMount) DeepCopyInto(out *VolumeMount)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.