This repository has been archived by the owner on Apr 29, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 9
/
logcollection.go
42 lines (38 loc) · 1.69 KB
/
logcollection.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package latest
import (
"github.com/caos/orbos/internal/operator/boom/api/latest/k8s"
"github.com/caos/orbos/internal/operator/boom/api/latest/storage"
)
type LogCollection struct {
//Flag if tool should be deployed
//@default: false
Deploy bool `json:"deploy" yaml:"deploy"`
//Fluentd Specs
Fluentd *Fluentd `json:"fluentd,omitempty" yaml:"fluentd,omitempty"`
//Fluentbit Specs
Fluentbit *Component `json:"fluentbit,omitempty" yaml:"fluentbit,omitempty"`
//Logging operator Specs
Operator *Component `json:"operator,omitempty" yaml:"operator,omitempty"`
//ClusterOutputs used by BOOM managed flows. BOOM managed Loki doesn't need to be specified
ClusterOutputs []string `json:"clusterOutputs,omitempty" yaml:"clusterOutputs,omitempty"`
//Outputs used by BOOM managed flows. BOOM managed Loki doesn't need to be specified
Outputs []string `json:"outputs,omitempty" yaml:"outputs,omitempty"`
//Watch these namespaces
WatchNamespaces []string `json:"watchNamespaces,omitempty" yaml:"watchNamespaces,omitempty"`
}
type Component struct {
//NodeSelector for deployment
NodeSelector map[string]string `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty"`
//Tolerations to run fluentbit on nodes
Tolerations k8s.Tolerations `json:"tolerations,omitempty" yaml:"tolerations,omitempty"`
//Resource requirements
Resources *k8s.Resources `json:"resources,omitempty" yaml:"resources,omitempty"`
}
type Fluentd struct {
*Component `json:",inline" yaml:",inline"`
//Spec to define how the persistence should be handled
PVC *storage.Spec `json:"pvc,omitempty" yaml:"pvc,omitempty"`
//Replicas number of fluentd instances
//@default: 1
Replicas *int `json:"replicas,omitempty" yaml:"replicas,omitempty"`
}