github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/operator/boom/api/latest/logspersisting.go (about) 1 package latest 2 3 import ( 4 "github.com/caos/orbos/internal/operator/boom/api/latest/storage" 5 "github.com/caos/orbos/pkg/kubernetes/k8s" 6 ) 7 8 type LogsPersisting struct { 9 //Flag if tool should be deployed 10 //@default: false 11 Deploy bool `json:"deploy" yaml:"deploy"` 12 //Spec to define which logs will get persisted 13 //@default: nil 14 Logs *Logs `json:"logs,omitempty" yaml:"logs,omitempty"` 15 //Spec to define how the persistence should be handled 16 //@default: nil 17 Storage *storage.Spec `json:"storage,omitempty" yaml:"storage,omitempty"` 18 //Flag if loki-output should be a clusteroutput instead a output crd 19 //@default: false 20 ClusterOutput bool `json:"clusterOutput,omitempty" yaml:"clusterOutput,omitempty"` 21 //NodeSelector for statefulset 22 NodeSelector map[string]string `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty"` 23 //Tolerations to run loki on nodes 24 Tolerations k8s.Tolerations `json:"tolerations,omitempty" yaml:"tolerations,omitempty"` 25 //Resource requirements 26 Resources *k8s.Resources `json:"resources,omitempty" yaml:"resources,omitempty"` 27 //Overwrite used image 28 OverwriteImage string `json:"overwriteImage,omitempty" yaml:"overwriteImage,omitempty"` 29 //Overwrite used image version 30 OverwriteVersion string `json:"overwriteVersion,omitempty" yaml:"overwriteVersion,omitempty"` 31 } 32 33 // Logs: When the logs spec is nil all logs will get persisted in loki. 34 type Logs struct { 35 //Bool if logs will get persisted for ambassador 36 Ambassador bool `json:"ambassador" yaml:"ambassador"` 37 //Bool if logs will get persisted for grafana 38 Grafana bool `json:"grafana" yaml:"grafana"` 39 //Bool if logs will get persisted for argo-cd 40 Argocd bool `json:"argocd" yaml:"argocd"` 41 //Bool if logs will get persisted for kube-state-metrics 42 KubeStateMetrics bool `json:"kube-state-metrics" yaml:"kube-state-metrics"` 43 //Bool if logs will get persisted for prometheus-node-exporter 44 PrometheusNodeExporter bool `json:"prometheus-node-exporter" yaml:"prometheus-node-exporter"` 45 //Bool if logs will get persisted for prometheus-operator 46 PrometheusOperator bool `json:"prometheus-operator" yaml:"prometheus-operator"` 47 //Bool if logs will get persisted for Prometheus-Systemd-Exporter 48 PrometheusSystemdExporter bool `json:"prometheus-systemd-exporter" yaml:"prometheus-systemd-exporter"` 49 //Bool if logs will get persisted for logging-operator 50 LoggingOperator bool `json:"logging-operator" yaml:"logging-operator"` 51 //Bool if logs will get persisted for loki 52 Loki bool `json:"loki" yaml:"loki"` 53 //Bool if logs will get persisted for prometheus 54 Prometheus bool `json:"prometheus" yaml:"prometheus"` 55 //Bool if logs will get persisted for the metrics-secret 56 MetricsServer bool `json:"metrics-server" yaml:"metrics-server"` 57 //Bool if logs will get persisted for ORBITER 58 Orbiter bool `json:"orbiter" yaml:"orbiter"` 59 //Bool if logs will get persisted for BOOM 60 Boom bool `json:"boom" yaml:"boom"` 61 //Bool if logs will get persisted for ZITADEL 62 Zitadel bool `json:"zitadel" yaml:"zitadel"` 63 //Bool if logs will get persisted for Database 64 Database bool `json:"database" yaml:"database"` 65 //Bool if logs will get persisted for Networking 66 Networking bool `json:"networking" yaml:"networking"` 67 }