Documentation ¶
Index ¶
- Constants
- type ClusterLogDestination
- type ClusterLogDestinationSpec
- type ClusterLogDestinationStatus
- type ClusterLoggingConfig
- type ClusterLoggingConfigSpec
- type ClusterLoggingConfigStatus
- type CommonTLSClientCert
- type CommonTLSSpec
- type ElasticsearchAuthSpec
- type ElasticsearchSpec
- type FileSpec
- type Filter
- type FilterOperator
- type KafkaSpec
- type KubernetesPodsSpec
- type LogstashSpec
- type LokiAuthSpec
- type LokiSpec
- type MultiLineParser
- type MultiLineParserType
- type NamespaceSelector
- type PodLoggingConfig
- type PodLoggingConfigSpec
- type PodLoggingConfigStatus
- type RateLimitSpec
- type VectorSpec
Constants ¶
View Source
const ( DestElasticsearch = "Elasticsearch" DestLogstash = "Logstash" DestLoki = "Loki" DestVector = "Vector" DestKafka = "Kafka" )
View Source
const ( SourceKubernetesPods = "KubernetesPods" SourceFile = "File" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClusterLogDestination ¶
type ClusterLogDestination struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // Spec defines the behavior of a cluster log source. Spec ClusterLogDestinationSpec `json:"spec"` // Most recently observed status of a cluster log source. // Populated by the system. Status ClusterLogDestinationStatus `json:"status,omitempty"` }
ClusterLogDestination specify output for logs stream
type ClusterLogDestinationSpec ¶
type ClusterLogDestinationSpec struct { // Type of cluster log source: Loki, Elasticsearch, Logstash, Vector Type string `json:"type,omitempty"` // Loki describes spec for loki endpoint Loki LokiSpec `json:"loki"` // Elasticsearch spec for the Elasticsearch endpoint Elasticsearch ElasticsearchSpec `json:"elasticsearch"` // Logstash spec for the Logstash endpoint Logstash LogstashSpec `json:"logstash"` // Kafka spec for the Kafka endpoint Kafka KafkaSpec `json:"kafka"` // Vector spec for the Vector endpoint Vector VectorSpec `json:"vector"` // Add extra labels for sources ExtraLabels map[string]string `json:"extraLabels,omitempty"` // Add rateLimit for sink RateLimit RateLimitSpec `json:"rateLimit,omitempty"` }
type ClusterLogDestinationStatus ¶
type ClusterLogDestinationStatus struct { }
type ClusterLoggingConfig ¶
type ClusterLoggingConfig struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // Spec defines the behavior of a cluster log source. Spec ClusterLoggingConfigSpec `json:"spec"` Status ClusterLoggingConfigStatus `json:"status,omitempty"` }
ClusterLoggingConfig specify target for logs collecting
func NamespacedToCluster ¶
func NamespacedToCluster(namespaced PodLoggingConfig) ClusterLoggingConfig
type ClusterLoggingConfigSpec ¶
type ClusterLoggingConfigSpec struct { // Type of cluster log source: KubernetesPods, File Type string `json:"type,omitempty"` // KubernetesPods describes spec for kubernetes pod source KubernetesPods KubernetesPodsSpec `json:"kubernetesPods,omitempty"` // File describes spec for file source File FileSpec `json:"file,omitempty"` // Filters LogFilters []Filter `json:"logFilter,omitempty"` LabelFilters []Filter `json:"labelFilter,omitempty"` // Multiline parsers MultiLineParser MultiLineParser `json:"multilineParser,omitempty"` // DestinationRefs slice of ClusterLogDestination names DestinationRefs []string `json:"destinationRefs,omitempty"` }
type ClusterLoggingConfigStatus ¶
type ClusterLoggingConfigStatus struct { }
type CommonTLSClientCert ¶
type CommonTLSSpec ¶
type CommonTLSSpec struct { CommonTLSClientCert `json:"clientCrt,omitempty"` CAFile string `json:"caFile,omitempty"` VerifyHostname *bool `json:"verifyHostname,omitempty"` VerifyCertificate *bool `json:"verifyCertificate,omitempty"` }
type ElasticsearchAuthSpec ¶
type ElasticsearchAuthSpec struct { Password string `json:"password,omitempty"` Strategy string `json:"strategy,omitempty"` User string `json:"user,omitempty"` AwsAccessKey string `json:"awsAccessKey,omitempty"` AwsSecretKey string `json:"awsSecretAccessKey,omitempty"` AwsAssumeRole string `json:"awsAssumeRole,omitempty"` AwsRegion string `json:"awsRegion,omitempty"` }
type ElasticsearchSpec ¶
type ElasticsearchSpec struct { Endpoint string `json:"endpoint,omitempty"` Index string `json:"index,omitempty"` Pipeline string `json:"pipeline,omitempty"` Type string `json:"type,omitempty"` Auth ElasticsearchAuthSpec `json:"auth,omitempty"` DataStreamEnabled bool `json:"dataStreamEnabled"` DocType string `json:"docType"` TLS CommonTLSSpec `json:"tls,omitempty"` }
type Filter ¶
type Filter struct { Field string `json:"field"` Operator FilterOperator `json:"operator"` Values []interface{} `json:"values,omitempty"` }
type FilterOperator ¶
type FilterOperator string
const ( FilterOpIn FilterOperator = "In" FilterOpNotIn FilterOperator = "NotIn" FilterOpExists FilterOperator = "Exists" FilterOpDoesNotExist FilterOperator = "DoesNotExist" FilterOpRegex FilterOperator = "Regex" FilterOpNotRegex FilterOperator = "NotRegex" )
type KafkaSpec ¶ added in v1.39.0
type KafkaSpec struct { BootstrapServers []string `json:"bootstrapServers,omitempty"` Topic string `json:"topic,omitempty"` TLS CommonTLSSpec `json:"tls,omitempty"` }
type KubernetesPodsSpec ¶
type KubernetesPodsSpec struct { NamespaceSelector NamespaceSelector `json:"namespaceSelector,omitempty"` LabelSelector metav1.LabelSelector `json:"labelSelector,omitempty"` }
type LogstashSpec ¶
type LogstashSpec struct { Endpoint string `json:"endpoint,omitempty"` TLS CommonTLSSpec `json:"tls,omitempty"` }
type LokiAuthSpec ¶
type LokiSpec ¶
type LokiSpec struct { Endpoint string `json:"endpoint,omitempty"` Auth LokiAuthSpec `json:"auth,omitempty"` TLS CommonTLSSpec `json:"tls,omitempty"` }
type MultiLineParser ¶
type MultiLineParser struct {
Type MultiLineParserType `json:"type,omitempty"`
}
type MultiLineParserType ¶
type MultiLineParserType string
const ( MultiLineParserNone MultiLineParserType = "None" MultiLineParserGeneral MultiLineParserType = "General" MultiLineParserBackslash MultiLineParserType = "Backslash" MultiLineParserLogWithTime MultiLineParserType = "LogWithTime" MultiLineParserMultilineJSON MultiLineParserType = "MultilineJSON" )
type NamespaceSelector ¶
type NamespaceSelector struct { MatchNames []string `json:"matchNames"` ExcludeNames []string `json:"excludeNames"` LabelSelector metav1.LabelSelector `json:"labelSelector,omitempty"` }
type PodLoggingConfig ¶
type PodLoggingConfig struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // Spec defines the behavior of a namespaced log source. Spec PodLoggingConfigSpec `json:"spec"` // Most recently observed status of a namespaced log source. Status PodLoggingConfigStatus `json:"status,omitempty"` }
PodLoggingConfig specify target for kubernetes pods logs collecting in specified namespace
type PodLoggingConfigSpec ¶
type PodLoggingConfigSpec struct { // LabelSelector filter pods by label LabelSelector metav1.LabelSelector `json:"labelSelector,omitempty"` // Filters LogFilters []Filter `json:"logFilter,omitempty"` LabelFilters []Filter `json:"labelFilter,omitempty"` // Multiline parsers MultiLineParser MultiLineParser `json:"multilineParser,omitempty"` // ClusterDestinationRefs slice of ClusterLogDestination names ClusterDestinationRefs []string `json:"clusterDestinationRefs,omitempty"` }
type PodLoggingConfigStatus ¶
type PodLoggingConfigStatus struct { }
type RateLimitSpec ¶
type RateLimitSpec struct {
LinesPerMinute *int32 `json:"linesPerMinute,omitempty"`
}
RateLimitSpec is throttle-transform configuration.
type VectorSpec ¶
type VectorSpec struct { Endpoint string `json:"endpoint,omitempty"` TLS CommonTLSSpec `json:"tls,omitempty"` }
Click to show internal directories.
Click to hide internal directories.