Documentation ¶
Overview ¶
Package v2alpha1 contains API Schema definitions for the datadoghq v2alpha1 API group +kubebuilder:object:generate=true +groupName=datadoghq.com
Index ¶
- Constants
- Variables
- func CheckAPIKeySufficiency(creds *DatadogCredentials, envVarName string) bool
- func CheckAppKeySufficiency(creds *DatadogCredentials, envVarName string) bool
- func DefaultDatadogAgent(dda *DatadogAgent)
- func DeleteDatadogAgentStatusCondition(status *DatadogAgentStatus, conditionType string)
- func GetAPIKeySecret(credentials *DatadogCredentials, defaultName string) (bool, string, string)
- func GetAgentServiceAccount(dda *DatadogAgent) string
- func GetAgentServiceAccountAnnotations(dda *DatadogAgent) map[string]string
- func GetAppKeySecret(credentials *DatadogCredentials, defaultName string) (bool, string, string)
- func GetClusterAgentServiceAccount(dda *DatadogAgent) string
- func GetClusterAgentServiceAccountAnnotations(dda *DatadogAgent) map[string]string
- func GetClusterChecksRunnerServiceAccount(dda *DatadogAgent) string
- func GetClusterChecksRunnerServiceAccountAnnotations(dda *DatadogAgent) map[string]string
- func GetConfName(owner metav1.Object, conf *CustomConfig, defaultName string) string
- func GetDefaultCredentialsSecretName(dda metav1.Object) string
- func GetDefaultDCATokenSecretName(dda metav1.Object) string
- func GetDefaultLivenessProbe() *corev1.Probe
- func GetDefaultReadinessProbe() *corev1.Probe
- func GetDefaultStartupProbe() *corev1.Probe
- func GetDefaultTraceAgentProbe() *corev1.Probe
- func GetImage(imageSpec *AgentImageConfig, registry *string) string
- func GetKeysFromCredentials(credentials *DatadogCredentials) map[string][]byte
- func GetLocalAgentServiceName(dda *DatadogAgent) string
- func GetMetav1ConditionStatus(status bool) metav1.ConditionStatus
- func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
- func IsCCREnabled(dda *DatadogAgent) bool
- func IsClusterChecksEnabled(dda *DatadogAgent) bool
- func IsHostNetworkEnabled(dda *DatadogAgent, component ComponentName) bool
- func NewDatadogAgentStatusCondition(conditionType string, conditionStatus metav1.ConditionStatus, now metav1.Time, ...) metav1.Condition
- func SetDatadogAgentStatusCondition(status *DatadogAgentStatus, condition *metav1.Condition)
- func UpdateDatadogAgentStatusCondition(condition *metav1.Condition, now metav1.Time, t string, ...) *metav1.Condition
- func UpdateDatadogAgentStatusConditions(status *DatadogAgentStatus, now metav1.Time, t string, ...)
- func UpdateDatadogAgentStatusConditionsFailure(status *DatadogAgentStatus, now metav1.Time, ...)
- type APMFeatureConfig
- type ASMFeatureConfig
- type ASMIASTConfig
- type ASMSCAConfig
- type ASMThreatsConfig
- type AdmissionControllerFeatureConfig
- type AgentConfigFileName
- type AgentImageConfig
- type AgentSidecarInjectionConfig
- type AutoscalingFeatureConfig
- type CSPMFeatureConfig
- type CSPMHostBenchmarksConfig
- type CWSFeatureConfig
- type CWSInstrumentationConfig
- type CWSNetworkConfig
- type CWSRemoteConfigurationConfig
- type CWSSecurityProfilesConfig
- type ClusterChecksFeatureConfig
- type ComponentName
- type ConfigMapConfig
- type ContainerStrategyType
- type CustomConfig
- type DaemonSetStatus
- func UpdateCombinedDaemonSetStatus(dsStatus []*DaemonSetStatus) *DaemonSetStatus
- func UpdateDaemonSetStatus(ds *appsv1.DaemonSet, dsStatus []*DaemonSetStatus, updateTime *metav1.Time) []*DaemonSetStatus
- func UpdateExtendedDaemonSetStatus(eds *edsdatadoghqv1alpha1.ExtendedDaemonSet, dsStatus []*DaemonSetStatus, ...) []*DaemonSetStatus
- type DatadogAgent
- type DatadogAgentComponentOverride
- type DatadogAgentGenericContainer
- type DatadogAgentList
- type DatadogAgentSpec
- type DatadogAgentState
- type DatadogAgentStatus
- type DatadogCredentials
- type DatadogFeatures
- type DeploymentStatus
- type DogstatsdFeatureConfig
- type EBPFCheckFeatureConfig
- type Endpoint
- type EventCollectionFeatureConfig
- type EventTypes
- type ExternalMetricsServerFeatureConfig
- type FIPSConfig
- type GlobalConfig
- type HelmCheckFeatureConfig
- type HostPortConfig
- type KubeStateMetricsCoreFeatureConfig
- type KubeletConfig
- type LanguageDetectionConfig
- type LiveContainerCollectionFeatureConfig
- type LiveProcessCollectionFeatureConfig
- type LocalService
- type LogCollectionFeatureConfig
- type MultiCustomConfig
- type NPMFeatureConfig
- type NetworkPolicyConfig
- type NetworkPolicyFlavor
- type OOMKillFeatureConfig
- type OTLPFeatureConfig
- type OTLPGRPCConfig
- type OTLPHTTPConfig
- type OTLPProtocolsConfig
- type OTLPReceiverConfig
- type OrchestratorExplorerFeatureConfig
- type OriginDetectionUnified
- type ProcessDiscoveryFeatureConfig
- type Profile
- type PrometheusScrapeFeatureConfig
- type RemoteConfigConfiguration
- type RemoteConfigurationFeatureConfig
- type SBOMContainerImageConfig
- type SBOMFeatureConfig
- type SBOMHostConfig
- type SeccompConfig
- type SecretBackendConfig
- type SecretBackendRolesConfig
- type SecretConfig
- type Selector
- type SingleStepInstrumentation
- type TCPQueueLengthFeatureConfig
- type USMFeatureConfig
- type UnixDomainSocketConfig
- type WorkloadAutoscalingFeatureConfig
Constants ¶
const ( // ClusterAgentReconcileConditionType ReconcileConditionType for Cluster Agent component ClusterAgentReconcileConditionType = "ClusterAgentReconcile" // AgentReconcileConditionType ReconcileConditionType for Agent component AgentReconcileConditionType = "AgentReconcile" // ClusterChecksRunnerReconcileConditionType ReconcileConditionType for Cluster Checks Runner component ClusterChecksRunnerReconcileConditionType = "ClusterChecksRunnerReconcile" // OverrideReconcileConflictConditionType ReconcileConditionType for override conflict OverrideReconcileConflictConditionType = "OverrideReconcileConflict" // DatadogAgentReconcileErrorConditionType ReconcileConditionType for DatadogAgent reconcile error DatadogAgentReconcileErrorConditionType = "DatadogAgentReconcileError" // ExtraConfdConfigMapName is the name of the ConfigMap storing Custom Confd data ExtraConfdConfigMapName = "%s-extra-confd" // ExtraChecksdConfigMapName is the name of the ConfigMap storing Custom Checksd data ExtraChecksdConfigMapName = "%s-extra-checksd" // DefaultAgentHealthPort default agent health port DefaultAgentHealthPort int32 = 5555 // Liveness probe default config DefaultLivenessProbeInitialDelaySeconds int32 = 15 DefaultLivenessProbePeriodSeconds int32 = 15 DefaultLivenessProbeTimeoutSeconds int32 = 5 DefaultLivenessProbeSuccessThreshold int32 = 1 DefaultLivenessProbeFailureThreshold int32 = 6 DefaultLivenessProbeHTTPPath = "/live" // Readiness probe default config DefaultReadinessProbeInitialDelaySeconds int32 = 15 DefaultReadinessProbePeriodSeconds int32 = 15 DefaultReadinessProbeTimeoutSeconds int32 = 5 DefaultReadinessProbeSuccessThreshold int32 = 1 DefaultReadinessProbeFailureThreshold int32 = 6 DefaultReadinessProbeHTTPPath = "/ready" // Startup probe default config DefaultStartupProbeInitialDelaySeconds int32 = 15 DefaultStartupProbePeriodSeconds int32 = 15 DefaultStartupProbeTimeoutSeconds int32 = 5 DefaultStartupProbeSuccessThreshold int32 = 1 DefaultStartupProbeFailureThreshold int32 = 6 DefaultStartupProbeHTTPPath = "/startup" // DefaultApmPort default apm port DefaultApmPort = 8126 // DefaultApmPortName default apm port name DefaultApmPortName = "traceport" // DefaultAgentResourceSuffix use as suffix for agent resource naming DefaultAgentResourceSuffix = "agent" // DefaultClusterAgentResourceSuffix use as suffix for cluster-agent resource naming DefaultClusterAgentResourceSuffix = "cluster-agent" // DefaultClusterChecksRunnerResourceSuffix use as suffix for cluster-checks-runner resource naming DefaultClusterChecksRunnerResourceSuffix = "cluster-checks-runner" // DefaultMetricsServerResourceSuffix use as suffix for cluster-agent metrics-server resource naming DefaultMetricsServerResourceSuffix = "cluster-agent-metrics-server" // DefaultAPPKeyKey default app-key key (use in secret for instance). DefaultAPPKeyKey = "app_key" // DefaultAPIKeyKey default api-key key (use in secret for instance). DefaultAPIKeyKey = "api_key" // DefaultTokenKey default token key (use in secret for instance). DefaultTokenKey = "token" // DefaultClusterAgentReplicas default cluster-agent deployment replicas DefaultClusterAgentReplicas = 1 // DefaultClusterAgentServicePort default cluster-agent service port DefaultClusterAgentServicePort = 5005 // DefaultClusterChecksRunnerReplicas default cluster checks runner deployment replicas DefaultClusterChecksRunnerReplicas = 1 // DefaultAdmissionControllerServicePort default admission controller service port DefaultAdmissionControllerServicePort = 443 // DefaultAdmissionControllerTargetPort default admission controller pod port DefaultAdmissionControllerTargetPort = 8000 // DefaultAdmissionControllerWebhookName default admission controller webhook name DefaultAdmissionControllerWebhookName string = "datadog-webhook" // DefaultDogstatsdOriginDetection default Origin Detection // DefaultDogstatsdOriginDetection = "false" // CELENE NOT USED! // DefaultDogstatsdPort default dogstatsd port DefaultDogstatsdPort = 8125 // DefaultDogstatsdPortName default dogstatsd port name DefaultDogstatsdPortName = "dogstatsdport" // DefaultKubeStateMetricsCoreConf default ksm core ConfigMap name DefaultKubeStateMetricsCoreConf string = "kube-state-metrics-core-config" // DefaultOrchestratorExplorerConf default orchestrator explorer ConfigMap name DefaultOrchestratorExplorerConf string = "orchestrator-explorer-config" // DefaultKubeAPIServerConf default Kubernetes APIServer ConfigMap name DefaultKubeAPIServerConf string = "kube-apiserver-config" // DefaultSystemProbeSocketPath default System Probe socket path DefaultSystemProbeSocketPath string = "/var/run/sysprobe/sysprobe.sock" // DefaultCSPMConf default CSPM ConfigMap name DefaultCSPMConf string = "cspm-config" // DefaultCWSConf default CWS ConfigMap name DefaultCWSConf string = "cws-config" // DefaultHelmCheckConf default Helm Check ConfigMap name DefaultHelmCheckConf string = "helm-check-config" // Default Image name DefaultAgentImageName string = "agent" DefaultClusterAgentImageName string = "cluster-agent" DefaultImageRegistry string = "gcr.io/datadoghq" DefaultAzureImageRegistry string = "datadoghq.azurecr.io" DefaultEuropeImageRegistry string = "eu.gcr.io/datadoghq" DefaultAsiaImageRegistry string = "asia.gcr.io/datadoghq" DefaultGovImageRegistry string = "public.ecr.aws/datadog" KubeServicesAndEndpointsConfigProviders = "kube_services kube_endpoints" KubeServicesAndEndpointsListeners = "kube_services kube_endpoints" EndpointsChecksConfigProvider = "endpointschecks" ClusterAndEndpointsConfigProviders = "clusterchecks endpointschecks" )
const ( // DefaultAdmissionControllerCWSInstrumentationEnabled default CWS Instrumentation enabled value DefaultAdmissionControllerCWSInstrumentationEnabled bool = false // DefaultAdmissionControllerCWSInstrumentationMode default CWS Instrumentation mode DefaultAdmissionControllerCWSInstrumentationMode string = "remote_copy" )
Default configuration values. These are the recommended settings for monitoring with Datadog in Kubernetes.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "datadoghq.com", Version: "v2alpha1"} // 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 )
Functions ¶
func CheckAPIKeySufficiency ¶
func CheckAPIKeySufficiency(creds *DatadogCredentials, envVarName string) bool
CheckAPIKeySufficiency use to check for the API key if: 1. an existing secret is defined, or 2. the corresponding env var is defined (whether in ENC format or not) If either of these is true, the secret is not needed.
func CheckAppKeySufficiency ¶
func CheckAppKeySufficiency(creds *DatadogCredentials, envVarName string) bool
CheckAppKeySufficiency use to check for the APP key if: 1. an existing secret is defined, or 2. the corresponding env var is defined (whether in ENC format or not) If either of these is true, the secret is not needed.
func DefaultDatadogAgent ¶
func DefaultDatadogAgent(dda *DatadogAgent)
DefaultDatadogAgent defaults the DatadogAgentSpec GlobalConfig and Features.
func DeleteDatadogAgentStatusCondition ¶
func DeleteDatadogAgentStatusCondition(status *DatadogAgentStatus, conditionType string)
DeleteDatadogAgentStatusCondition is used to delete a condition
func GetAPIKeySecret ¶
func GetAPIKeySecret(credentials *DatadogCredentials, defaultName string) (bool, string, string)
GetAPIKeySecret returns the API key secret name and the key inside the secret returns <isSet>, secretName, secretKey Note that the default name can differ depending on where this is called
func GetAgentServiceAccount ¶
func GetAgentServiceAccount(dda *DatadogAgent) string
GetAgentServiceAccount returns the agent service account name
func GetAgentServiceAccountAnnotations ¶ added in v1.10.0
func GetAgentServiceAccountAnnotations(dda *DatadogAgent) map[string]string
GetAgentServiceAccountAnnotations returns the annotations for the agent service account.
func GetAppKeySecret ¶
func GetAppKeySecret(credentials *DatadogCredentials, defaultName string) (bool, string, string)
GetAppKeySecret returns the APP key secret name and the key inside the secret returns <isSet>, secretName, secretKey Note that the default name can differ depending on where this is called
func GetClusterAgentServiceAccount ¶
func GetClusterAgentServiceAccount(dda *DatadogAgent) string
GetClusterAgentServiceAccount return the cluster-agent serviceAccountName
func GetClusterAgentServiceAccountAnnotations ¶ added in v1.10.0
func GetClusterAgentServiceAccountAnnotations(dda *DatadogAgent) map[string]string
GetClusterAgentServiceAccountAnnotations returns the annotations for the cluster-agent service account.
func GetClusterChecksRunnerServiceAccount ¶
func GetClusterChecksRunnerServiceAccount(dda *DatadogAgent) string
GetClusterChecksRunnerServiceAccount return the cluster-checks-runner service account name
func GetClusterChecksRunnerServiceAccountAnnotations ¶ added in v1.10.0
func GetClusterChecksRunnerServiceAccountAnnotations(dda *DatadogAgent) map[string]string
GetClusterChecksRunnerServiceAccountAnnotations returns the annotations for the cluster-checks-runner service account.
func GetConfName ¶
func GetConfName(owner metav1.Object, conf *CustomConfig, defaultName string) string
GetConfName get the name of the Configmap for a CustomConfigSpec
func GetDefaultCredentialsSecretName ¶
GetDefaultCredentialsSecretName returns the default name for credentials secret
func GetDefaultDCATokenSecretName ¶
GetDefaultDCATokenSecretName returns the default name for cluster-agent secret
func GetDefaultLivenessProbe ¶ added in v1.10.0
GetDefaultLivenessProbe creates a defaulted LivenessProbe
func GetDefaultReadinessProbe ¶ added in v1.10.0
GetDefaultReadinessProbe creates a defaulted ReadinessProbe
func GetDefaultStartupProbe ¶ added in v1.10.0
GetDefaultStartupProbe creates a defaulted StartupProbe
func GetDefaultTraceAgentProbe ¶ added in v1.10.0
GetDefaultTraceAgentProbe creates a defaulted liveness/readiness probe for the Trace Agent
func GetImage ¶ added in v1.10.0
func GetImage(imageSpec *AgentImageConfig, registry *string) string
GetImage builds the image string based on ImageConfig and the registry configuration.
func GetKeysFromCredentials ¶
func GetKeysFromCredentials(credentials *DatadogCredentials) map[string][]byte
GetKeysFromCredentials returns any key data that need to be stored in a new secret
func GetLocalAgentServiceName ¶
func GetLocalAgentServiceName(dda *DatadogAgent) string
GetLocalAgentServiceName returns the name used for the local agent service
func GetMetav1ConditionStatus ¶
func GetMetav1ConditionStatus(status bool) metav1.ConditionStatus
GetMetav1ConditionStatus converts a boolean to metav1.ConditionStatus
func GetOpenAPIDefinitions ¶
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
func IsCCREnabled ¶
func IsCCREnabled(dda *DatadogAgent) bool
IsCCREnabled returns whether the DDA should use Cluster Checks Runners
func IsClusterChecksEnabled ¶
func IsClusterChecksEnabled(dda *DatadogAgent) bool
IsClusterChecksEnabled returns whether the DDA should use cluster checks
func IsHostNetworkEnabled ¶
func IsHostNetworkEnabled(dda *DatadogAgent, component ComponentName) bool
IsHostNetworkEnabled returns whether the pod should use the host's network namespace
func NewDatadogAgentStatusCondition ¶
func NewDatadogAgentStatusCondition(conditionType string, conditionStatus metav1.ConditionStatus, now metav1.Time, reason, message string) metav1.Condition
NewDatadogAgentStatusCondition returns new metav1.Condition instance
func SetDatadogAgentStatusCondition ¶
func SetDatadogAgentStatusCondition(status *DatadogAgentStatus, condition *metav1.Condition)
SetDatadogAgentStatusCondition use to set a condition
func UpdateDatadogAgentStatusCondition ¶
func UpdateDatadogAgentStatusCondition(condition *metav1.Condition, now metav1.Time, t string, conditionStatus metav1.ConditionStatus, reason, message string) *metav1.Condition
UpdateDatadogAgentStatusCondition used to update a specific string
func UpdateDatadogAgentStatusConditions ¶
func UpdateDatadogAgentStatusConditions(status *DatadogAgentStatus, now metav1.Time, t string, conditionStatus metav1.ConditionStatus, reason, message string, writeFalseIfNotExist bool)
UpdateDatadogAgentStatusConditions used to update a specific string in conditions
func UpdateDatadogAgentStatusConditionsFailure ¶
func UpdateDatadogAgentStatusConditionsFailure(status *DatadogAgentStatus, now metav1.Time, conditionType, reason, message string, err error)
UpdateDatadogAgentStatusConditionsFailure used to update the failure StatusConditions
Types ¶
type APMFeatureConfig ¶
type APMFeatureConfig struct { // Enabled enables Application Performance Monitoring. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` // HostPortConfig contains host port configuration. // Enabled Default: false // Port Default: 8126 // +optional HostPortConfig *HostPortConfig `json:"hostPortConfig,omitempty"` // UnixDomainSocketConfig contains socket configuration. // See also: https://docs.datadoghq.com/agent/kubernetes/apm/?tab=helm#agent-environment-variables // Enabled Default: true // Path Default: `/var/run/datadog/apm.socket` // +optional UnixDomainSocketConfig *UnixDomainSocketConfig `json:"unixDomainSocketConfig,omitempty"` // SingleStepInstrumentation allows the agent to inject the Datadog APM libraries into all pods in the cluster. // Feature is in beta. // See also: https://docs.datadoghq.com/tracing/trace_collection/single-step-apm // Enabled Default: false // +optional SingleStepInstrumentation *SingleStepInstrumentation `json:"instrumentation,omitempty"` }
APMFeatureConfig contains APM (Application Performance Monitoring) configuration. APM runs in the Trace Agent.
func (*APMFeatureConfig) DeepCopy ¶
func (in *APMFeatureConfig) DeepCopy() *APMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APMFeatureConfig.
func (*APMFeatureConfig) DeepCopyInto ¶
func (in *APMFeatureConfig) DeepCopyInto(out *APMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ASMFeatureConfig ¶
type ASMFeatureConfig struct { // Threats configures ASM App & API Protection. // Enabled Default: false // +optional Threats *ASMThreatsConfig `json:"threats,omitempty"` // SCA configures Software Composition Analysis. // Enabled Default: false // +optional SCA *ASMSCAConfig `json:"sca,omitempty"` // IAST configures Interactive Application Security Testing. // Enabled Default: false // +optional IAST *ASMIASTConfig `json:"iast,omitempty"` }
ASMFeatureConfig contains Application Security Management (ASM) configuration. Note that this will only affect pods where the Datadog client libraries are installed or APM Single Step Instrumentation is enabled.
func (*ASMFeatureConfig) DeepCopy ¶
func (in *ASMFeatureConfig) DeepCopy() *ASMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ASMFeatureConfig.
func (*ASMFeatureConfig) DeepCopyInto ¶
func (in *ASMFeatureConfig) DeepCopyInto(out *ASMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ASMIASTConfig ¶
type ASMIASTConfig struct { // Enabled enables Interactive Application Security Testing (IAST). // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
func (*ASMIASTConfig) DeepCopy ¶
func (in *ASMIASTConfig) DeepCopy() *ASMIASTConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ASMIASTConfig.
func (*ASMIASTConfig) DeepCopyInto ¶
func (in *ASMIASTConfig) DeepCopyInto(out *ASMIASTConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ASMSCAConfig ¶
type ASMSCAConfig struct { // Enabled enables Software Composition Analysis (SCA). // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
func (*ASMSCAConfig) DeepCopy ¶
func (in *ASMSCAConfig) DeepCopy() *ASMSCAConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ASMSCAConfig.
func (*ASMSCAConfig) DeepCopyInto ¶
func (in *ASMSCAConfig) DeepCopyInto(out *ASMSCAConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ASMThreatsConfig ¶
type ASMThreatsConfig struct { // Enabled enables ASM App & API Protection. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
func (*ASMThreatsConfig) DeepCopy ¶
func (in *ASMThreatsConfig) DeepCopy() *ASMThreatsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ASMThreatsConfig.
func (*ASMThreatsConfig) DeepCopyInto ¶
func (in *ASMThreatsConfig) DeepCopyInto(out *ASMThreatsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdmissionControllerFeatureConfig ¶
type AdmissionControllerFeatureConfig struct { // Enabled enables the Admission Controller. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` // MutateUnlabelled enables config injection without the need of pod label 'admission.datadoghq.com/enabled="true"'. // Default: false // +optional MutateUnlabelled *bool `json:"mutateUnlabelled,omitempty"` // ServiceName corresponds to the webhook service name. // +optional ServiceName *string `json:"serviceName,omitempty"` // AgentCommunicationMode corresponds to the mode used by the Datadog application libraries to communicate with the Agent. // It can be "hostip", "service", or "socket". // +optional AgentCommunicationMode *string `json:"agentCommunicationMode,omitempty"` // FailurePolicy determines how unrecognized and timeout errors are handled. // +optional FailurePolicy *string `json:"failurePolicy,omitempty"` // WebhookName is a custom name for the MutatingWebhookConfiguration. // Default: "datadog-webhook" // +optional WebhookName *string `json:"webhookName,omitempty"` // AgentSidecarInjection contains Agent sidecar injection configurations. // +optional AgentSidecarInjection *AgentSidecarInjectionConfig `json:"agentSidecarInjection,omitempty"` // Registry defines an image registry for the admission controller. // +optional Registry *string `json:"registry,omitempty"` // CWSInstrumentation holds the CWS Instrumentation endpoint configuration // +optional CWSInstrumentation *CWSInstrumentationConfig `json:"cwsInstrumentation,omitempty"` }
AdmissionControllerFeatureConfig contains the Admission Controller feature configuration. The Admission Controller runs in the Cluster Agent.
func (*AdmissionControllerFeatureConfig) DeepCopy ¶
func (in *AdmissionControllerFeatureConfig) DeepCopy() *AdmissionControllerFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdmissionControllerFeatureConfig.
func (*AdmissionControllerFeatureConfig) DeepCopyInto ¶
func (in *AdmissionControllerFeatureConfig) DeepCopyInto(out *AdmissionControllerFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentConfigFileName ¶
type AgentConfigFileName string
AgentConfigFileName is the list of known Agent config files
const ( // AgentGeneralConfigFile is the name of the main Agent config file AgentGeneralConfigFile AgentConfigFileName = "datadog.yaml" // SystemProbeConfigFile is the name of the of System Probe config file SystemProbeConfigFile AgentConfigFileName = "system-probe.yaml" // SecurityAgentConfigFile is the name of the Security Agent config file SecurityAgentConfigFile AgentConfigFileName = "security-agent.yaml" // ClusterAgentConfigFile is the name of the Cluster Agent config file ClusterAgentConfigFile AgentConfigFileName = "datadog-cluster.yaml" )
type AgentImageConfig ¶ added in v1.10.0
type AgentImageConfig struct { // Define the image to use: // Use "gcr.io/datadoghq/agent:latest" for Datadog Agent 7. // Use "datadog/dogstatsd:latest" for standalone Datadog Agent DogStatsD 7. // Use "gcr.io/datadoghq/cluster-agent:latest" for Datadog Cluster Agent. // Use "agent" with the registry and tag configurations for <registry>/agent:<tag>. // Use "cluster-agent" with the registry and tag configurations for <registry>/cluster-agent:<tag>. // If the name is the full image string—`<name>:<tag>` or `<registry>/<name>:<tag>`, then `tag`, `jmxEnabled`, // and `global.registry` values are ignored. // Otherwise, image string is created by overriding default settings with supplied `name`, `tag`, and `jmxEnabled` values; // image string is created using default registry unless `global.registry` is configured. Name string `json:"name,omitempty"` // Define the image tag to use. // To be used if the Name field does not correspond to a full image string. // +optional Tag string `json:"tag,omitempty"` // Define whether the Agent image should support JMX. // To be used if the Name field does not correspond to a full image string. // +optional JMXEnabled bool `json:"jmxEnabled,omitempty"` // The Kubernetes pull policy: // Use Always, Never, or IfNotPresent. PullPolicy *corev1.PullPolicy `json:"pullPolicy,omitempty"` // It is possible to specify Docker registry credentials. // See https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod // +optional PullSecrets *[]corev1.LocalObjectReference `json:"pullSecrets,omitempty"` }
AgentImageConfig defines the agent container image config. +kubebuilder:object:generate=true
func (*AgentImageConfig) DeepCopy ¶ added in v1.10.0
func (in *AgentImageConfig) DeepCopy() *AgentImageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentImageConfig.
func (*AgentImageConfig) DeepCopyInto ¶ added in v1.10.0
func (in *AgentImageConfig) DeepCopyInto(out *AgentImageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentSidecarInjectionConfig ¶
type AgentSidecarInjectionConfig struct { // Enabled enables Sidecar injections. // Default: false // +optional Enabled *bool `json:"enabled"` // ClusterAgentCommunicationEnabled enables communication between Agent sidecars and the Cluster Agent. // Default : true // +optional ClusterAgentCommunicationEnabled *bool `json:"clusterAgentCommunicationEnabled,omitempty"` // Provider is used to add infrastructure provider-specific configurations to the Agent sidecar. // Currently only "fargate" is supported. // To use the feature in other environments (including local testing) omit the config. // See also: https://docs.datadoghq.com/integrations/eks_fargate // +optional Provider *string `json:"provider,omitempty"` // Registry overrides the default registry for the sidecar Agent. // +optional Registry *string `json:"registry,omitempty"` // Image overrides the default Agent image name and tag for the Agent sidecar. // +optional Image *AgentImageConfig `json:"image,omitempty"` // Selectors define the pod selector for sidecar injection. Only one rule is supported. // +optional // +listType=atomic Selectors []*Selector `json:"selectors,omitempty"` // Profiles define the sidecar configuration override. Only one profile is supported. // +optional // +listType=atomic Profiles []*Profile `json:"profiles,omitempty"` }
func (*AgentSidecarInjectionConfig) DeepCopy ¶
func (in *AgentSidecarInjectionConfig) DeepCopy() *AgentSidecarInjectionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentSidecarInjectionConfig.
func (*AgentSidecarInjectionConfig) DeepCopyInto ¶
func (in *AgentSidecarInjectionConfig) DeepCopyInto(out *AgentSidecarInjectionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoscalingFeatureConfig ¶
type AutoscalingFeatureConfig struct { // Workload contains the configuration for the workload autoscaling product. Workload *WorkloadAutoscalingFeatureConfig `json:"workload,omitempty"` }
AutoscalingFeatureConfig contains the Autoscaling product configuration.
func (*AutoscalingFeatureConfig) DeepCopy ¶
func (in *AutoscalingFeatureConfig) DeepCopy() *AutoscalingFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingFeatureConfig.
func (*AutoscalingFeatureConfig) DeepCopyInto ¶
func (in *AutoscalingFeatureConfig) DeepCopyInto(out *AutoscalingFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CSPMFeatureConfig ¶
type CSPMFeatureConfig struct { // Enabled enables Cloud Security Posture Management. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // CheckInterval defines the check interval. // +optional CheckInterval *metav1.Duration `json:"checkInterval,omitempty"` // CustomBenchmarks contains CSPM benchmarks. // The content of the ConfigMap will be merged with the benchmarks bundled with the agent. // Any benchmarks with the same name as those existing in the agent will take precedence. // +optional CustomBenchmarks *CustomConfig `json:"customBenchmarks,omitempty"` // HostBenchmarks contains configuration for host benchmarks. // +optional HostBenchmarks *CSPMHostBenchmarksConfig `json:"hostBenchmarks,omitempty"` }
CSPMFeatureConfig contains CSPM (Cloud Security Posture Management) configuration. CSPM runs in the Security Agent and Cluster Agent.
func (*CSPMFeatureConfig) DeepCopy ¶
func (in *CSPMFeatureConfig) DeepCopy() *CSPMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSPMFeatureConfig.
func (*CSPMFeatureConfig) DeepCopyInto ¶
func (in *CSPMFeatureConfig) DeepCopyInto(out *CSPMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CSPMHostBenchmarksConfig ¶
type CSPMHostBenchmarksConfig struct { // Enabled enables host benchmarks. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
CSPMHostBenchmarksConfig contains configuration for host benchmarks. +k8s:openapi-gen=true
func (*CSPMHostBenchmarksConfig) DeepCopy ¶
func (in *CSPMHostBenchmarksConfig) DeepCopy() *CSPMHostBenchmarksConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSPMHostBenchmarksConfig.
func (*CSPMHostBenchmarksConfig) DeepCopyInto ¶
func (in *CSPMHostBenchmarksConfig) DeepCopyInto(out *CSPMHostBenchmarksConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CWSFeatureConfig ¶
type CWSFeatureConfig struct { // Enabled enables Cloud Workload Security. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // SyscallMonitorEnabled enables Syscall Monitoring (recommended for troubleshooting only). // Default: false // +optional SyscallMonitorEnabled *bool `json:"syscallMonitorEnabled,omitempty"` Network *CWSNetworkConfig `json:"network,omitempty"` SecurityProfiles *CWSSecurityProfilesConfig `json:"securityProfiles,omitempty"` RemoteConfiguration *CWSRemoteConfigurationConfig `json:"remoteConfiguration,omitempty"` // CustomPolicies contains security policies. // The content of the ConfigMap will be merged with the policies bundled with the agent. // Any policies with the same name as those existing in the agent will take precedence. // +optional CustomPolicies *CustomConfig `json:"customPolicies,omitempty"` }
CWSFeatureConfig contains CWS (Cloud Workload Security) configuration. CWS runs in the Security Agent.
func (*CWSFeatureConfig) DeepCopy ¶
func (in *CWSFeatureConfig) DeepCopy() *CWSFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CWSFeatureConfig.
func (*CWSFeatureConfig) DeepCopyInto ¶
func (in *CWSFeatureConfig) DeepCopyInto(out *CWSFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CWSInstrumentationConfig ¶
type CWSInstrumentationConfig struct { // Enable the CWS Instrumentation admission controller endpoint. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // Mode defines the behavior of the CWS Instrumentation endpoint, and can be either "init_container" or "remote_copy". // Default: "remote_copy" // +optional Mode *string `json:"mode,omitempty"` }
CWSInstrumentationConfig contains the configuration of the CWS Instrumentation admission controller endpoint.
func (*CWSInstrumentationConfig) DeepCopy ¶
func (in *CWSInstrumentationConfig) DeepCopy() *CWSInstrumentationConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CWSInstrumentationConfig.
func (*CWSInstrumentationConfig) DeepCopyInto ¶
func (in *CWSInstrumentationConfig) DeepCopyInto(out *CWSInstrumentationConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CWSNetworkConfig ¶
type CWSNetworkConfig struct { // Enabled enables Cloud Workload Security Network detections. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
func (*CWSNetworkConfig) DeepCopy ¶
func (in *CWSNetworkConfig) DeepCopy() *CWSNetworkConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CWSNetworkConfig.
func (*CWSNetworkConfig) DeepCopyInto ¶
func (in *CWSNetworkConfig) DeepCopyInto(out *CWSNetworkConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CWSRemoteConfigurationConfig ¶
type CWSRemoteConfigurationConfig struct { // Enabled enables Remote Configuration for Cloud Workload Security. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
func (*CWSRemoteConfigurationConfig) DeepCopy ¶
func (in *CWSRemoteConfigurationConfig) DeepCopy() *CWSRemoteConfigurationConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CWSRemoteConfigurationConfig.
func (*CWSRemoteConfigurationConfig) DeepCopyInto ¶
func (in *CWSRemoteConfigurationConfig) DeepCopyInto(out *CWSRemoteConfigurationConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CWSSecurityProfilesConfig ¶
type CWSSecurityProfilesConfig struct { // Enabled enables Security Profiles collection for Cloud Workload Security. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
func (*CWSSecurityProfilesConfig) DeepCopy ¶
func (in *CWSSecurityProfilesConfig) DeepCopy() *CWSSecurityProfilesConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CWSSecurityProfilesConfig.
func (*CWSSecurityProfilesConfig) DeepCopyInto ¶
func (in *CWSSecurityProfilesConfig) DeepCopyInto(out *CWSSecurityProfilesConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterChecksFeatureConfig ¶
type ClusterChecksFeatureConfig struct { // Enables Cluster Checks scheduling in the Cluster Agent. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` // Enabled enables Cluster Checks Runners to run all Cluster Checks. // Default: false // +optional UseClusterChecksRunners *bool `json:"useClusterChecksRunners,omitempty"` }
ClusterChecksFeatureConfig contains the Cluster Checks feature configuration. Cluster Checks are picked up and scheduled by the Cluster Agent. Cluster Checks Runners are Agents dedicated to running Cluster Checks dispatched by the Cluster Agent. (If Cluster Checks Runners are not activated, checks are dispatched to Node Agents).
func (*ClusterChecksFeatureConfig) DeepCopy ¶
func (in *ClusterChecksFeatureConfig) DeepCopy() *ClusterChecksFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterChecksFeatureConfig.
func (*ClusterChecksFeatureConfig) DeepCopyInto ¶
func (in *ClusterChecksFeatureConfig) DeepCopyInto(out *ClusterChecksFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentName ¶
type ComponentName string
ComponentName is the name of a Deployment Component
const ( // NodeAgentComponentName is the name of the Datadog Node Agent NodeAgentComponentName ComponentName = "nodeAgent" // ClusterAgentComponentName is the name of the Cluster Agent ClusterAgentComponentName ComponentName = "clusterAgent" // ClusterChecksRunnerComponentName is the name of the Cluster Check Runner ClusterChecksRunnerComponentName ComponentName = "clusterChecksRunner" )
type ConfigMapConfig ¶ added in v1.10.0
type ConfigMapConfig struct { // Name is the name of the ConfigMap. Name string `json:"name,omitempty"` // Items maps a ConfigMap data `key` to a file `path` mount. // +listType=map // +listMapKey=key // +optional Items []corev1.KeyToPath `json:"items,omitempty"` }
ConfigMapConfig contains ConfigMap information used to store a configuration file. +kubebuilder:object:generate=true
func (*ConfigMapConfig) DeepCopy ¶ added in v1.10.0
func (in *ConfigMapConfig) DeepCopy() *ConfigMapConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapConfig.
func (*ConfigMapConfig) DeepCopyInto ¶ added in v1.10.0
func (in *ConfigMapConfig) DeepCopyInto(out *ConfigMapConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerStrategyType ¶
type ContainerStrategyType string
const ( // OptimizedContainerStrategy indicates multiple Agent containers with one process per // container (default) OptimizedContainerStrategy ContainerStrategyType = "optimized" // SingleContainerStrategy indicates a single Agent container with multiple (unprivileged) // processes in one container SingleContainerStrategy ContainerStrategyType = "single" )
type CustomConfig ¶
type CustomConfig struct { // ConfigData corresponds to the configuration file content. ConfigData *string `json:"configData,omitempty"` // ConfigMap references an existing ConfigMap with the configuration file content. ConfigMap *ConfigMapConfig `json:"configMap,omitempty"` }
CustomConfig provides a place for custom configuration of the Agent or Cluster Agent, corresponding to datadog.yaml, system-probe.yaml, security-agent.yaml or datadog-cluster.yaml. The configuration can be provided in the ConfigData field as raw data, or referenced in a ConfigMap. Note: `ConfigData` and `ConfigMap` cannot be set together. +k8s:openapi-gen=true
func (*CustomConfig) DeepCopy ¶
func (in *CustomConfig) DeepCopy() *CustomConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomConfig.
func (*CustomConfig) DeepCopyInto ¶
func (in *CustomConfig) DeepCopyInto(out *CustomConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DaemonSetStatus ¶ added in v1.10.0
type DaemonSetStatus struct { // Number of desired pods in the DaemonSet. Desired int32 `json:"desired"` // Number of current pods in the DaemonSet. Current int32 `json:"current"` // Number of ready pods in the DaemonSet. Ready int32 `json:"ready"` // Number of available pods in the DaemonSet. Available int32 `json:"available"` // Number of up to date pods in the DaemonSet. UpToDate int32 `json:"upToDate"` // LastUpdate is the last time the status was updated. LastUpdate *metav1.Time `json:"lastUpdate,omitempty"` // CurrentHash is the stored hash of the DaemonSet. CurrentHash string `json:"currentHash,omitempty"` // Status corresponds to the DaemonSet computed status. Status string `json:"status,omitempty"` // State corresponds to the DaemonSet state. State string `json:"state,omitempty"` // DaemonsetName corresponds to the name of the created DaemonSet. DaemonsetName string `json:"daemonsetName,omitempty"` }
DaemonSetStatus defines the observed state of Agent running as DaemonSet. +k8s:openapi-gen=true +kubebuilder:object:generate=true
func UpdateCombinedDaemonSetStatus ¶
func UpdateCombinedDaemonSetStatus(dsStatus []*DaemonSetStatus) *DaemonSetStatus
UpdateCombinedDaemonSetStatus combines the status of multiple DaemonSetStatus
func UpdateDaemonSetStatus ¶
func UpdateDaemonSetStatus(ds *appsv1.DaemonSet, dsStatus []*DaemonSetStatus, updateTime *metav1.Time) []*DaemonSetStatus
UpdateDaemonSetStatus updates a daemonset's DaemonSetStatus
func UpdateExtendedDaemonSetStatus ¶
func UpdateExtendedDaemonSetStatus(eds *edsdatadoghqv1alpha1.ExtendedDaemonSet, dsStatus []*DaemonSetStatus, updateTime *metav1.Time) []*DaemonSetStatus
UpdateExtendedDaemonSetStatus updates an ExtendedDaemonSet's DaemonSetStatus
func (*DaemonSetStatus) DeepCopy ¶ added in v1.10.0
func (in *DaemonSetStatus) DeepCopy() *DaemonSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonSetStatus.
func (*DaemonSetStatus) DeepCopyInto ¶ added in v1.10.0
func (in *DaemonSetStatus) DeepCopyInto(out *DaemonSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgent ¶
type DatadogAgent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DatadogAgentSpec `json:"spec,omitempty"` Status DatadogAgentStatus `json:"status,omitempty"` }
DatadogAgent Deployment with the Datadog Operator. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:path=datadogagents,shortName=dd +kubebuilder:printcolumn:name="agent",type="string",JSONPath=".status.agent.status" +kubebuilder:printcolumn:name="cluster-agent",type="string",JSONPath=".status.clusterAgent.status" +kubebuilder:printcolumn:name="cluster-checks-runner",type="string",JSONPath=".status.clusterChecksRunner.status" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp" +k8s:openapi-gen=true +genclient
func (*DatadogAgent) DeepCopy ¶
func (in *DatadogAgent) DeepCopy() *DatadogAgent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgent.
func (*DatadogAgent) DeepCopyInto ¶
func (in *DatadogAgent) DeepCopyInto(out *DatadogAgent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatadogAgent) DeepCopyObject ¶
func (in *DatadogAgent) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DatadogAgent) Hub ¶
func (*DatadogAgent) Hub()
Hub defines this CRD version as being the Hub version
func (*DatadogAgent) SetupWebhookWithManager ¶
func (r *DatadogAgent) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager starts the conversion webhook
type DatadogAgentComponentOverride ¶
type DatadogAgentComponentOverride struct { // Name overrides the default name for the resource // +optional Name *string `json:"name,omitempty"` // Number of the replicas. // Not applicable for a DaemonSet/ExtendedDaemonSet deployment // +optional Replicas *int32 `json:"replicas,omitempty"` // Set CreateRbac to false to prevent automatic creation of Role/ClusterRole for this component // +optional CreateRbac *bool `json:"createRbac,omitempty"` // Sets the ServiceAccount used by this component. // Ignored if the field CreateRbac is true. // +optional ServiceAccountName *string `json:"serviceAccountName,omitempty"` // Sets the ServiceAccountAnnotations used by this component. // +optional ServiceAccountAnnotations map[string]string `json:"serviceAccountAnnotations,omitempty"` // The container image of the different components (Datadog Agent, Cluster Agent, Cluster Check Runner). // +optional Image *AgentImageConfig `json:"image,omitempty"` // Specify additional environment variables for all containers in this component // Priority is Container > Component. // See also: https://docs.datadoghq.com/agent/kubernetes/?tab=helm#environment-variables // // +optional // +listType=map // +listMapKey=name Env []corev1.EnvVar `json:"env,omitempty"` // EnvFrom specifies the ConfigMaps and Secrets to expose as environment variables. // Priority is env > envFrom. // +optional EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"` // CustomConfiguration allows to specify custom configuration files for `datadog.yaml`, `datadog-cluster.yaml`, `security-agent.yaml`, and `system-probe.yaml`. // The content is merged with configuration generated by the Datadog Operator, with priority given to custom configuration. // WARNING: It is possible to override values set in the `DatadogAgent`. // +optional CustomConfigurations map[AgentConfigFileName]CustomConfig `json:"customConfigurations,omitempty"` // Confd configuration allowing to specify config files for custom checks placed under /etc/datadog-agent/conf.d/. // See https://docs.datadoghq.com/agent/guide/agent-configuration-files/?tab=agentv6 for more details. // +optional ExtraConfd *MultiCustomConfig `json:"extraConfd,omitempty"` // Checksd configuration allowing to specify custom checks placed under /etc/datadog-agent/checks.d/ // See https://docs.datadoghq.com/agent/guide/agent-configuration-files/?tab=agentv6 for more details. // +optional ExtraChecksd *MultiCustomConfig `json:"extraChecksd,omitempty"` // Configure the basic configurations for each Agent container. Valid Agent container names are: // `agent`, `cluster-agent`, `init-config`, `init-volume`, `process-agent`, `seccomp-setup`, // `security-agent`, `system-probe`, `trace-agent`, and `all`. // Configuration under `all` applies to all configured containers. // +optional Containers map[common.AgentContainerName]*DatadogAgentGenericContainer `json:"containers,omitempty"` // Specify additional volumes in the different components (Datadog Agent, Cluster Agent, Cluster Check Runner). // +optional // +listType=map // +listMapKey=name Volumes []corev1.Volume `json:"volumes,omitempty"` // Pod-level SecurityContext. // +optional SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"` // If specified, indicates the pod's priority. "system-node-critical" and "system-cluster-critical" // are two special keywords which indicate the highest priorities with the former being the highest priority. // Any other name must be defined by creating a PriorityClass object with that name. If not specified, // the pod priority is default, or zero if there is no default. PriorityClassName *string `json:"priorityClassName,omitempty"` // If specified, the pod's scheduling constraints. // +optional Affinity *corev1.Affinity `json:"affinity,omitempty"` // Set DNS policy for the pod. // Defaults to "ClusterFirst". // Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'. // DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy. // To have DNS options set along with hostNetwork, you have to specify DNS policy // explicitly to 'ClusterFirstWithHostNet'. // +optional DNSPolicy *corev1.DNSPolicy `json:"dnsPolicy,omitempty"` // Specifies the DNS parameters of a pod. // Parameters specified here will be merged to the generated DNS // configuration based on DNSPolicy. // +optional DNSConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"` // NodeSelector is a selector which must be true for the pod to fit on a node. // Selector which must match a node's labels for the pod to be scheduled on that node. // More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // The deployment strategy to use to replace existing pods with new ones. // +optional UpdateStrategy *common.UpdateStrategy `json:"updateStrategy,omitempty"` // Configure the component tolerations. // +optional // +listType=atomic Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // Annotations provide annotations that are added to the different component (Datadog Agent, Cluster Agent, Cluster Check Runner) pods. Annotations map[string]string `json:"annotations,omitempty"` // AdditionalLabels provide labels that are added to the different component (Datadog Agent, Cluster Agent, Cluster Check Runner) pods. Labels map[string]string `json:"labels,omitempty"` // Host networking requested for this pod. Use the host's network namespace. // +optional HostNetwork *bool `json:"hostNetwork,omitempty"` // Use the host's PID namespace. // +optional HostPID *bool `json:"hostPID,omitempty"` // Disabled force disables a component. // +optional Disabled *bool `json:"disabled,omitempty"` }
DatadogAgentComponentOverride is the generic description equivalent to a subset of the PodTemplate for a component.
func (*DatadogAgentComponentOverride) DeepCopy ¶
func (in *DatadogAgentComponentOverride) DeepCopy() *DatadogAgentComponentOverride
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentComponentOverride.
func (*DatadogAgentComponentOverride) DeepCopyInto ¶
func (in *DatadogAgentComponentOverride) DeepCopyInto(out *DatadogAgentComponentOverride)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgentGenericContainer ¶
type DatadogAgentGenericContainer struct { // Name of the container that is overridden //+optional Name *string `json:"name,omitempty"` // LogLevel sets logging verbosity (overrides global setting). // Valid log levels are: trace, debug, info, warn, error, critical, and off. // Default: 'info' // +optional LogLevel *string `json:"logLevel,omitempty"` // Specify additional environment variables in the container. // See also: https://docs.datadoghq.com/agent/kubernetes/?tab=helm#environment-variables // // +optional // +listType=map // +listMapKey=name Env []corev1.EnvVar `json:"env,omitempty"` // Specify additional volume mounts in the container. // +optional // +listType=map // +listMapKey=name // +listMapKey=mountPath VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` // Specify the Request and Limits of the pods // To get guaranteed QoS class, specify requests and limits equal. // See also: http://kubernetes.io/docs/user-guide/compute-resources/ Resources *corev1.ResourceRequirements `json:"resources,omitempty"` // Command allows the specification of a custom entrypoint for container // +listType=atomic Command []string `json:"command,omitempty"` // Args allows the specification of extra args to the `Command` parameter // +listType=atomic Args []string `json:"args,omitempty"` // HealthPort of the container for the internal liveness probe. // Must be the same as the Liveness/Readiness probes. // +optional HealthPort *int32 `json:"healthPort,omitempty"` // Configure the Readiness Probe of the container // +optional ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"` // Configure the Liveness Probe of the container // +optional LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"` // Container-level SecurityContext. // +optional SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"` // Seccomp configurations to override Operator actions. For all other Seccomp Profile manipulation, // use SecurityContext. // +optional SeccompConfig *SeccompConfig `json:"seccompConfig,omitempty"` // AppArmorProfileName specifies an apparmor profile. // +optional AppArmorProfileName *string `json:"appArmorProfileName,omitempty"` }
DatadogAgentGenericContainer is the generic structure describing any container's common configuration. +k8s:openapi-gen=true
func (*DatadogAgentGenericContainer) DeepCopy ¶
func (in *DatadogAgentGenericContainer) DeepCopy() *DatadogAgentGenericContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentGenericContainer.
func (*DatadogAgentGenericContainer) DeepCopyInto ¶
func (in *DatadogAgentGenericContainer) DeepCopyInto(out *DatadogAgentGenericContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgentList ¶
type DatadogAgentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DatadogAgent `json:"items"` }
DatadogAgentList contains a list of DatadogAgent.
func (*DatadogAgentList) DeepCopy ¶
func (in *DatadogAgentList) DeepCopy() *DatadogAgentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentList.
func (*DatadogAgentList) DeepCopyInto ¶
func (in *DatadogAgentList) DeepCopyInto(out *DatadogAgentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatadogAgentList) DeepCopyObject ¶
func (in *DatadogAgentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DatadogAgentSpec ¶
type DatadogAgentSpec struct { // Features running on the Agent and Cluster Agent // +optional Features *DatadogFeatures `json:"features,omitempty"` // Global settings to configure the agents // +optional Global *GlobalConfig `json:"global,omitempty"` // Override the default configurations of the agents // +optional Override map[ComponentName]*DatadogAgentComponentOverride `json:"override,omitempty"` }
DatadogAgentSpec defines the desired state of DatadogAgent
func (*DatadogAgentSpec) DeepCopy ¶
func (in *DatadogAgentSpec) DeepCopy() *DatadogAgentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentSpec.
func (*DatadogAgentSpec) DeepCopyInto ¶
func (in *DatadogAgentSpec) DeepCopyInto(out *DatadogAgentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgentState ¶
type DatadogAgentState string
DatadogAgentState type representing the deployment state of the different Agent components.
const ( // DatadogAgentStateProgressing the deployment is progressing. DatadogAgentStateProgressing DatadogAgentState = "Progressing" // DatadogAgentStateRunning the deployment is running properly. DatadogAgentStateRunning DatadogAgentState = "Running" // DatadogAgentStateUpdating the deployment is currently under a rolling update. DatadogAgentStateUpdating DatadogAgentState = "Updating" // DatadogAgentStateCanary the deployment is currently under a canary testing (EDS only). DatadogAgentStateCanary DatadogAgentState = "Canary" // DatadogAgentStateFailed the current state of the deployment is considered as Failed. DatadogAgentStateFailed DatadogAgentState = "Failed" )
type DatadogAgentStatus ¶
type DatadogAgentStatus struct { // Conditions Represents the latest available observations of a DatadogAgent's current state. // +optional // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions"` // The actual state of the Agent as a daemonset or an extended daemonset. // +optional // +listType=atomic AgentList []*DaemonSetStatus `json:"agentList,omitempty"` // The combined actual state of all Agents as daemonsets or extended daemonsets. // +optional Agent *DaemonSetStatus `json:"agent,omitempty"` // The actual state of the Cluster Agent as a deployment. // +optional ClusterAgent *DeploymentStatus `json:"clusterAgent,omitempty"` // The actual state of the Cluster Checks Runner as a deployment. // +optional ClusterChecksRunner *DeploymentStatus `json:"clusterChecksRunner,omitempty"` // RemoteConfigConfiguration stores the configuration received from RemoteConfig. // +optional RemoteConfigConfiguration *RemoteConfigConfiguration `json:"remoteConfigConfiguration,omitempty"` }
DatadogAgentStatus defines the observed state of DatadogAgent. +k8s:openapi-gen=true
func (*DatadogAgentStatus) DeepCopy ¶
func (in *DatadogAgentStatus) DeepCopy() *DatadogAgentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentStatus.
func (*DatadogAgentStatus) DeepCopyInto ¶
func (in *DatadogAgentStatus) DeepCopyInto(out *DatadogAgentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogCredentials ¶
type DatadogCredentials struct { // APIKey configures your Datadog API key. // See also: https://app.datadoghq.com/account/settings#agent/kubernetes APIKey *string `json:"apiKey,omitempty"` // APISecret references an existing Secret which stores the API key instead of creating a new one. // If set, this parameter takes precedence over "APIKey". // +optional APISecret *SecretConfig `json:"apiSecret,omitempty"` // AppKey configures your Datadog application key. // If you are using features.externalMetricsServer.enabled = true, you must set // a Datadog application key for read access to your metrics. // +optional AppKey *string `json:"appKey,omitempty"` // AppSecret references an existing Secret which stores the application key instead of creating a new one. // If set, this parameter takes precedence over "AppKey". // +optional AppSecret *SecretConfig `json:"appSecret,omitempty"` }
DatadogCredentials is a generic structure that holds credentials to access Datadog. +k8s:openapi-gen=true
func (*DatadogCredentials) DeepCopy ¶
func (in *DatadogCredentials) DeepCopy() *DatadogCredentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogCredentials.
func (*DatadogCredentials) DeepCopyInto ¶
func (in *DatadogCredentials) DeepCopyInto(out *DatadogCredentials)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogFeatures ¶
type DatadogFeatures struct { // LogCollection configuration. LogCollection *LogCollectionFeatureConfig `json:"logCollection,omitempty"` // LiveProcessCollection configuration. LiveProcessCollection *LiveProcessCollectionFeatureConfig `json:"liveProcessCollection,omitempty"` // LiveContainerCollection configuration. LiveContainerCollection *LiveContainerCollectionFeatureConfig `json:"liveContainerCollection,omitempty"` // ProcessDiscovery configuration. ProcessDiscovery *ProcessDiscoveryFeatureConfig `json:"processDiscovery,omitempty"` // OOMKill configuration. OOMKill *OOMKillFeatureConfig `json:"oomKill,omitempty"` // TCPQueueLength configuration. TCPQueueLength *TCPQueueLengthFeatureConfig `json:"tcpQueueLength,omitempty"` // EBPFCheck configuration. EBPFCheck *EBPFCheckFeatureConfig `json:"ebpfCheck,omitempty"` // APM (Application Performance Monitoring) configuration. APM *APMFeatureConfig `json:"apm,omitempty"` // ASM (Application Security Management) configuration. ASM *ASMFeatureConfig `json:"asm,omitempty"` // CSPM (Cloud Security Posture Management) configuration. CSPM *CSPMFeatureConfig `json:"cspm,omitempty"` // CWS (Cloud Workload Security) configuration. CWS *CWSFeatureConfig `json:"cws,omitempty"` // NPM (Network Performance Monitoring) configuration. NPM *NPMFeatureConfig `json:"npm,omitempty"` // USM (Universal Service Monitoring) configuration. USM *USMFeatureConfig `json:"usm,omitempty"` // Dogstatsd configuration. Dogstatsd *DogstatsdFeatureConfig `json:"dogstatsd,omitempty"` // OTLP ingest configuration OTLP *OTLPFeatureConfig `json:"otlp,omitempty"` // Remote Configuration configuration. RemoteConfiguration *RemoteConfigurationFeatureConfig `json:"remoteConfiguration,omitempty"` // SBOM collection configuration. SBOM *SBOMFeatureConfig `json:"sbom,omitempty"` // EventCollection configuration. EventCollection *EventCollectionFeatureConfig `json:"eventCollection,omitempty"` // OrchestratorExplorer check configuration. OrchestratorExplorer *OrchestratorExplorerFeatureConfig `json:"orchestratorExplorer,omitempty"` // KubeStateMetricsCore check configuration. KubeStateMetricsCore *KubeStateMetricsCoreFeatureConfig `json:"kubeStateMetricsCore,omitempty"` // AdmissionController configuration. AdmissionController *AdmissionControllerFeatureConfig `json:"admissionController,omitempty"` // ExternalMetricsServer configuration. ExternalMetricsServer *ExternalMetricsServerFeatureConfig `json:"externalMetricsServer,omitempty"` // Autoscaling configuration. Autoscaling *AutoscalingFeatureConfig `json:"autoscaling,omitempty"` // ClusterChecks configuration. ClusterChecks *ClusterChecksFeatureConfig `json:"clusterChecks,omitempty"` // PrometheusScrape configuration. PrometheusScrape *PrometheusScrapeFeatureConfig `json:"prometheusScrape,omitempty"` // HelmCheck configuration. HelmCheck *HelmCheckFeatureConfig `json:"helmCheck,omitempty"` }
DatadogFeatures are features running on the Agent and Cluster Agent. +k8s:openapi-gen=true
func (*DatadogFeatures) DeepCopy ¶
func (in *DatadogFeatures) DeepCopy() *DatadogFeatures
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogFeatures.
func (*DatadogFeatures) DeepCopyInto ¶
func (in *DatadogFeatures) DeepCopyInto(out *DatadogFeatures)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentStatus ¶ added in v1.10.0
type DeploymentStatus struct { // Total number of non-terminated pods targeted by this Deployment (their labels match the selector). // +optional Replicas int32 `json:"replicas,omitempty"` // Total number of non-terminated pods targeted by this Deployment that have the desired template spec. // +optional UpdatedReplicas int32 `json:"updatedReplicas,omitempty"` // Total number of ready pods targeted by this Deployment. // +optional ReadyReplicas int32 `json:"readyReplicas,omitempty"` // Total number of available pods (ready for at least minReadySeconds) targeted by this Deployment. // +optional AvailableReplicas int32 `json:"availableReplicas,omitempty"` // pods that are still required for the Deployment to have 100% available capacity. They may // either be pods that are running but not yet available or pods that still have not been created. // +optional UnavailableReplicas int32 `json:"unavailableReplicas,omitempty"` // LastUpdate is the last time the status was updated. LastUpdate *metav1.Time `json:"lastUpdate,omitempty"` // CurrentHash is the stored hash of the Deployment. CurrentHash string `json:"currentHash,omitempty"` // GeneratedToken corresponds to the generated token if any token was provided in the Credential configuration when ClusterAgent is // enabled. // +optional GeneratedToken string `json:"generatedToken,omitempty"` // Status corresponds to the Deployment computed status. Status string `json:"status,omitempty"` // State corresponds to the Deployment state. State string `json:"state,omitempty"` // DeploymentName corresponds to the name of the Deployment. DeploymentName string `json:"deploymentName,omitempty"` }
DeploymentStatus type representing a Deployment status. +k8s:openapi-gen=true +kubebuilder:object:generate=true
func UpdateDeploymentStatus ¶
func UpdateDeploymentStatus(dep *appsv1.Deployment, depStatus *DeploymentStatus, updateTime *metav1.Time) *DeploymentStatus
UpdateDeploymentStatus updates a deployment's DeploymentStatus
func (*DeploymentStatus) DeepCopy ¶ added in v1.10.0
func (in *DeploymentStatus) DeepCopy() *DeploymentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentStatus.
func (*DeploymentStatus) DeepCopyInto ¶ added in v1.10.0
func (in *DeploymentStatus) DeepCopyInto(out *DeploymentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DogstatsdFeatureConfig ¶
type DogstatsdFeatureConfig struct { // OriginDetectionEnabled enables origin detection for container tagging. // See also: https://docs.datadoghq.com/developers/dogstatsd/unix_socket/#using-origin-detection-for-container-tagging // +optional OriginDetectionEnabled *bool `json:"originDetectionEnabled,omitempty"` // TagCardinality configures tag cardinality for the metrics collected using origin detection (`low`, `orchestrator` or `high`). // See also: https://docs.datadoghq.com/getting_started/tagging/assigning_tags/?tab=containerizedenvironments#environment-variables // Cardinality default: low // +optional TagCardinality *string `json:"tagCardinality,omitempty"` // HostPortConfig contains host port configuration. // Enabled Default: false // Port Default: 8125 // +optional HostPortConfig *HostPortConfig `json:"hostPortConfig,omitempty"` // UnixDomainSocketConfig contains socket configuration. // See also: https://docs.datadoghq.com/agent/kubernetes/apm/?tab=helm#agent-environment-variables // Enabled Default: true // Path Default: `/var/run/datadog/dsd.socket` // +optional UnixDomainSocketConfig *UnixDomainSocketConfig `json:"unixDomainSocketConfig,omitempty"` // Configure the Dogstasd Mapper Profiles. // Can be passed as raw data or via a json encoded string in a config map. // See also: https://docs.datadoghq.com/developers/dogstatsd/dogstatsd_mapper/ // +optional MapperProfiles *CustomConfig `json:"mapperProfiles,omitempty"` }
DogstatsdFeatureConfig contains the Dogstatsd configuration parameters. +k8s:openapi-gen=true
func (*DogstatsdFeatureConfig) DeepCopy ¶
func (in *DogstatsdFeatureConfig) DeepCopy() *DogstatsdFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DogstatsdFeatureConfig.
func (*DogstatsdFeatureConfig) DeepCopyInto ¶
func (in *DogstatsdFeatureConfig) DeepCopyInto(out *DogstatsdFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EBPFCheckFeatureConfig ¶
type EBPFCheckFeatureConfig struct { // Enables the eBPF check. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
EBPFCheckFeatureConfig configures the eBPF check feature.
func (*EBPFCheckFeatureConfig) DeepCopy ¶
func (in *EBPFCheckFeatureConfig) DeepCopy() *EBPFCheckFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EBPFCheckFeatureConfig.
func (*EBPFCheckFeatureConfig) DeepCopyInto ¶
func (in *EBPFCheckFeatureConfig) DeepCopyInto(out *EBPFCheckFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Endpoint ¶
type Endpoint struct { // URL defines the endpoint URL. URL *string `json:"url,omitempty"` // Credentials defines the Datadog credentials used to submit data to/query data from Datadog. Credentials *DatadogCredentials `json:"credentials,omitempty"` }
Endpoint configures an endpoint and its associated Datadog credentials.
func (*Endpoint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.
func (*Endpoint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventCollectionFeatureConfig ¶
type EventCollectionFeatureConfig struct { // CollectKubernetesEvents enables Kubernetes event collection. // Default: true CollectKubernetesEvents *bool `json:"collectKubernetesEvents,omitempty"` // UnbundleEvents enables collection of Kubernetes events as individual events. // Default: false // +optional UnbundleEvents *bool `json:"unbundleEvents,omitempty"` // CollectedEventTypes defines the list of events to collect when UnbundleEvents is enabled. // Default: // [ // {"kind":"Pod","reasons":["Failed","BackOff","Unhealthy","FailedScheduling","FailedMount","FailedAttachVolume"]}, // {"kind":"Node","reasons":["TerminatingEvictedPod","NodeNotReady","Rebooted","HostPortConflict"]}, // {"kind":"CronJob","reasons":["SawCompletedJob"]} // ] // +optional // +listType=atomic CollectedEventTypes []EventTypes `json:"collectedEventTypes,omitempty"` }
EventCollectionFeatureConfig contains the Event Collection configuration. +k8s:openapi-gen=true
func (*EventCollectionFeatureConfig) DeepCopy ¶
func (in *EventCollectionFeatureConfig) DeepCopy() *EventCollectionFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventCollectionFeatureConfig.
func (*EventCollectionFeatureConfig) DeepCopyInto ¶
func (in *EventCollectionFeatureConfig) DeepCopyInto(out *EventCollectionFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventTypes ¶
type EventTypes struct { // Kind is the kind of event to collect. (ex: Pod, Node, CronJob) Kind string `json:"kind"` // Reasons is a list of event reasons to collect. (ex: Failed, BackOff, Unhealthy) // +listType=atomic Reasons []string `json:"reasons"` }
EventTypes defines the kind and reasons of events to collect.
func (*EventTypes) DeepCopy ¶
func (in *EventTypes) DeepCopy() *EventTypes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventTypes.
func (*EventTypes) DeepCopyInto ¶
func (in *EventTypes) DeepCopyInto(out *EventTypes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalMetricsServerFeatureConfig ¶
type ExternalMetricsServerFeatureConfig struct { // Enabled enables the External Metrics Server. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // RegisterAPIService registers the External Metrics endpoint as an APIService // Default: true // +optional RegisterAPIService *bool `json:"registerAPIService,omitempty"` // WPAController enables the informer and controller of the Watermark Pod Autoscaler. // NOTE: The Watermark Pod Autoscaler controller needs to be installed. // See also: https://github.com/DataDog/watermarkpodautoscaler. // Default: false // +optional WPAController *bool `json:"wpaController,omitempty"` // UseDatadogMetrics enables usage of the DatadogMetrics CRD (allowing one to scale on arbitrary Datadog metric queries). // Default: true // +optional UseDatadogMetrics *bool `json:"useDatadogMetrics,omitempty"` // Port specifies the metricsProvider External Metrics Server service port. // Default: 8443 // +optional Port *int32 `json:"port,omitempty"` // Override the API endpoint for the External Metrics Server. // URL Default: "https://app.datadoghq.com". // +optional Endpoint *Endpoint `json:"endpoint,omitempty"` }
ExternalMetricsServerFeatureConfig contains the External Metrics Server feature configuration. The External Metrics Server runs in the Cluster Agent.
func (*ExternalMetricsServerFeatureConfig) DeepCopy ¶
func (in *ExternalMetricsServerFeatureConfig) DeepCopy() *ExternalMetricsServerFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalMetricsServerFeatureConfig.
func (*ExternalMetricsServerFeatureConfig) DeepCopyInto ¶
func (in *ExternalMetricsServerFeatureConfig) DeepCopyInto(out *ExternalMetricsServerFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FIPSConfig ¶
type FIPSConfig struct { // Enable FIPS sidecar. // +optional Enabled *bool `json:"enabled,omitempty"` // The container image of the FIPS sidecar. // +optional Image *AgentImageConfig `json:"image,omitempty"` // Set the local IP address. // Default: `127.0.0.1` // +optional LocalAddress *string `json:"localAddress,omitempty"` // Port specifies which port is used by the containers to communicate to the FIPS sidecar. // Default: 9803 // +optional Port *int32 `json:"port,omitempty"` // PortRange specifies the number of ports used. // Default: 15 // +optional PortRange *int32 `json:"portRange,omitempty"` // Resources is the requests and limits for the FIPS sidecar container. // +optional Resources *corev1.ResourceRequirements `json:"resources,omitempty"` // UseHTTPS enables HTTPS. // Default: false // +optional UseHTTPS *bool `json:"useHTTPS,omitempty"` // CustomFIPSConfig configures a custom configMap to provide the FIPS configuration. // Specify custom contents for the FIPS proxy sidecar container config // (/etc/datadog-fips-proxy/datadog-fips-proxy.cfg). If empty, the default FIPS // proxy sidecar container config is used. // +optional CustomFIPSConfig *CustomConfig `json:"customFIPSConfig,omitempty"` }
FIPSConfig contains the FIPS configuration. +k8s:openapi-gen=true
func (*FIPSConfig) DeepCopy ¶
func (in *FIPSConfig) DeepCopy() *FIPSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FIPSConfig.
func (*FIPSConfig) DeepCopyInto ¶
func (in *FIPSConfig) DeepCopyInto(out *FIPSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GlobalConfig ¶
type GlobalConfig struct { // Credentials defines the Datadog credentials used to submit data to/query data from Datadog. Credentials *DatadogCredentials `json:"credentials,omitempty"` // ClusterAgentToken is the token for communication between the NodeAgent and ClusterAgent. ClusterAgentToken *string `json:"clusterAgentToken,omitempty"` // ClusterAgentTokenSecret is the secret containing the Cluster Agent token. ClusterAgentTokenSecret *SecretConfig `json:"clusterAgentTokenSecret,omitempty"` // ClusterName sets a unique cluster name for the deployment to easily scope monitoring data in the Datadog app. // +optional ClusterName *string `json:"clusterName,omitempty"` // Site is the Datadog intake site Agent data are sent to. // Set to 'datadoghq.com' to send data to the US1 site (default). // Set to 'datadoghq.eu' to send data to the EU site. // Set to 'us3.datadoghq.com' to send data to the US3 site. // Set to 'us5.datadoghq.com' to send data to the US5 site. // Set to 'ddog-gov.com' to send data to the US1-FED site. // Set to 'ap1.datadoghq.com' to send data to the AP1 site. // Default: 'datadoghq.com' // +optional Site *string `json:"site,omitempty"` // Endpoint is the Datadog intake URL the Agent data are sent to. // Only set this option if you need the Agent to send data to a custom URL. // Overrides the site setting defined in `Site`. // +optional Endpoint *Endpoint `json:"endpoint,omitempty"` // Registry is the image registry to use for all Agent images. // Use 'public.ecr.aws/datadog' for AWS ECR. // Use 'datadoghq.azurecr.io' for Azure Container Registry. // Use 'gcr.io/datadoghq' for Google Container Registry. // Use 'eu.gcr.io/datadoghq' for Google Container Registry in the EU region. // Use 'asia.gcr.io/datadoghq' for Google Container Registry in the Asia region. // Use 'docker.io/datadog' for DockerHub. // Default: 'gcr.io/datadoghq' // +optional Registry *string `json:"registry,omitempty"` // LogLevel sets logging verbosity. This can be overridden by container. // Valid log levels are: trace, debug, info, warn, error, critical, and off. // Default: 'info' LogLevel *string `json:"logLevel,omitempty"` // Tags contains a list of tags to attach to every metric, event and service check collected. // Learn more about tagging: https://docs.datadoghq.com/tagging/ // +optional // +listType=set Tags []string `json:"tags,omitempty"` //Env contains a list of environment variables that are set for all Agents. // +optional // +listType=map // +listMapKey=name Env []corev1.EnvVar `json:"env,omitempty"` // OriginDetectionUnified defines the origin detection unified mechanism behavior. // +optional OriginDetectionUnified *OriginDetectionUnified `json:"originDetectionUnified,omitempty"` // Provide a mapping of Kubernetes Labels to Datadog Tags. // <KUBERNETES_LABEL>: <DATADOG_TAG_KEY> // +optional PodLabelsAsTags map[string]string `json:"podLabelsAsTags,omitempty"` // Provide a mapping of Kubernetes Annotations to Datadog Tags. // <KUBERNETES_ANNOTATIONS>: <DATADOG_TAG_KEY> // +optional PodAnnotationsAsTags map[string]string `json:"podAnnotationsAsTags,omitempty"` // Provide a mapping of Kubernetes Node Labels to Datadog Tags. // <KUBERNETES_NODE_LABEL>: <DATADOG_TAG_KEY> // +optional NodeLabelsAsTags map[string]string `json:"nodeLabelsAsTags,omitempty"` // Provide a mapping of Kubernetes Namespace Labels to Datadog Tags. // <KUBERNETES_NAMESPACE_LABEL>: <DATADOG_TAG_KEY> // +optional NamespaceLabelsAsTags map[string]string `json:"namespaceLabelsAsTags,omitempty"` // Provide a mapping of Kubernetes Namespace Annotations to Datadog Tags. // <KUBERNETES_LABEL>: <DATADOG_TAG_KEY> // +optional NamespaceAnnotationsAsTags map[string]string `json:"namespaceAnnotationsAsTags,omitempty"` // Provide a mapping of Kubernetes Resource Groups to labels mapping to Datadog Tags. // <KUBERNETES_RESOURCE_GROUP>: // <KUBERNETES_LABEL>: <DATADOG_TAG_KEY> // KUBERNETES_RESOURCE_GROUP should be in the form `{resource}.{group}` or `{resource}` (example: deployments.apps, pods) // +optional KubernetesResourcesLabelsAsTags map[string]map[string]string `json:"kubernetesResourcesLabelsAsTags,omitempty"` // Provide a mapping of Kubernetes Resource Groups to annotations mapping to Datadog Tags. // <KUBERNETES_RESOURCE_GROUP>: // <KUBERNETES_ANNOTATION>: <DATADOG_TAG_KEY> // KUBERNETES_RESOURCE_GROUP should be in the form `{resource}.{group}` or `{resource}` (example: deployments.apps, pods) // +optional KubernetesResourcesAnnotationsAsTags map[string]map[string]string `json:"kubernetesResourcesAnnotationsAsTags,omitempty"` // NetworkPolicy contains the network configuration. // +optional NetworkPolicy *NetworkPolicyConfig `json:"networkPolicy,omitempty"` // LocalService contains configuration to customize the internal traffic policy service. // +optional LocalService *LocalService `json:"localService,omitempty"` // Kubelet contains the kubelet configuration parameters. // +optional Kubelet *KubeletConfig `json:"kubelet,omitempty"` // Path to the docker runtime socket. // +optional DockerSocketPath *string `json:"dockerSocketPath,omitempty"` // Path to the container runtime socket (if different from Docker). // +optional CriSocketPath *string `json:"criSocketPath,omitempty"` // Set DisableNonResourceRules to exclude NonResourceURLs from default ClusterRoles. // Required 'true' for Google Cloud Marketplace. // +optional DisableNonResourceRules *bool `json:"disableNonResourceRules,omitempty"` // ContainerStrategy determines whether agents run in a single or multiple containers. // Default: 'optimized' // +optional ContainerStrategy *ContainerStrategyType `json:"containerStrategy,omitempty"` // FIPS contains configuration used to customize the FIPS proxy sidecar. FIPS *FIPSConfig `json:"fips,omitempty"` // Configure the secret backend feature https://docs.datadoghq.com/agent/guide/secrets-management // See also: https://github.com/DataDog/datadog-operator/blob/main/docs/secret_management.md SecretBackend *SecretBackendConfig `json:"secretBackend,omitempty"` }
GlobalConfig is a set of parameters that are used to configure all the components of the Datadog Operator.
func (*GlobalConfig) DeepCopy ¶
func (in *GlobalConfig) DeepCopy() *GlobalConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalConfig.
func (*GlobalConfig) DeepCopyInto ¶
func (in *GlobalConfig) DeepCopyInto(out *GlobalConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmCheckFeatureConfig ¶
type HelmCheckFeatureConfig struct { // Enabled enables the Helm check. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // CollectEvents set to `true` enables event collection in the Helm check // (Requires Agent 7.36.0+ and Cluster Agent 1.20.0+) // Default: false // +optional CollectEvents *bool `json:"collectEvents,omitempty"` // ValuesAsTags collects Helm values from a release and uses them as tags // (Requires Agent and Cluster Agent 7.40.0+). // Default: {} // +optional ValuesAsTags map[string]string `json:"valuesAsTags,omitempty"` }
HelmCheckFeatureConfig allows configuration of the Helm check feature. +k8s:openapi-gen=true
func (*HelmCheckFeatureConfig) DeepCopy ¶
func (in *HelmCheckFeatureConfig) DeepCopy() *HelmCheckFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmCheckFeatureConfig.
func (*HelmCheckFeatureConfig) DeepCopyInto ¶
func (in *HelmCheckFeatureConfig) DeepCopyInto(out *HelmCheckFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HostPortConfig ¶
type HostPortConfig struct { // Enabled enables host port configuration // +optional Enabled *bool `json:"enabled,omitempty"` // Port takes a port number (0 < x < 65536) to expose on the host. (Most containers do not need this.) // If HostNetwork is enabled, this value must match the ContainerPort. // +optional Port *int32 `json:"hostPort,omitempty"` }
HostPortConfig contains host port configuration.
func (*HostPortConfig) DeepCopy ¶
func (in *HostPortConfig) DeepCopy() *HostPortConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostPortConfig.
func (*HostPortConfig) DeepCopyInto ¶
func (in *HostPortConfig) DeepCopyInto(out *HostPortConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeStateMetricsCoreFeatureConfig ¶
type KubeStateMetricsCoreFeatureConfig struct { // Enabled enables Kube State Metrics Core. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` // Conf overrides the configuration for the default Kubernetes State Metrics Core check. // This must point to a ConfigMap containing a valid cluster check configuration. // +optional Conf *CustomConfig `json:"conf,omitempty"` }
KubeStateMetricsCoreFeatureConfig contains the Kube State Metrics Core check feature configuration. The Kube State Metrics Core check runs in the Cluster Agent (or Cluster Check Runners). See also: https://docs.datadoghq.com/integrations/kubernetes_state_core +k8s:openapi-gen=true
func (*KubeStateMetricsCoreFeatureConfig) DeepCopy ¶
func (in *KubeStateMetricsCoreFeatureConfig) DeepCopy() *KubeStateMetricsCoreFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeStateMetricsCoreFeatureConfig.
func (*KubeStateMetricsCoreFeatureConfig) DeepCopyInto ¶
func (in *KubeStateMetricsCoreFeatureConfig) DeepCopyInto(out *KubeStateMetricsCoreFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeletConfig ¶ added in v1.10.0
type KubeletConfig struct { // Host overrides the host used to contact kubelet API (default to status.hostIP). // +optional Host *corev1.EnvVarSource `json:"host,omitempty"` // TLSVerify toggles kubelet TLS verification. // Default: true // +optional TLSVerify *bool `json:"tlsVerify,omitempty"` // HostCAPath is the host path where the kubelet CA certificate is stored. // +optional HostCAPath string `json:"hostCAPath,omitempty"` // AgentCAPath is the container path where the kubelet CA certificate is stored. // Default: '/var/run/host-kubelet-ca.crt' if hostCAPath is set, else '/var/run/secrets/kubernetes.io/serviceaccount/ca.crt' // +optional AgentCAPath string `json:"agentCAPath,omitempty"` }
KubeletConfig contains the kubelet configuration parameters. +kubebuilder:object:generate=true
func (*KubeletConfig) DeepCopy ¶ added in v1.10.0
func (in *KubeletConfig) DeepCopy() *KubeletConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfig.
func (*KubeletConfig) DeepCopyInto ¶ added in v1.10.0
func (in *KubeletConfig) DeepCopyInto(out *KubeletConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LanguageDetectionConfig ¶
type LanguageDetectionConfig struct { // Enabled enables Language Detection to automatically detect languages of user workloads (beta). // Requires SingleStepInstrumentation.Enabled to be true. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
LanguageDetectionConfig contains the config for Language Detection.
func (*LanguageDetectionConfig) DeepCopy ¶
func (in *LanguageDetectionConfig) DeepCopy() *LanguageDetectionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LanguageDetectionConfig.
func (*LanguageDetectionConfig) DeepCopyInto ¶
func (in *LanguageDetectionConfig) DeepCopyInto(out *LanguageDetectionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LiveContainerCollectionFeatureConfig ¶
type LiveContainerCollectionFeatureConfig struct { // Enables container collection for the Live Container View. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
LiveContainerCollectionFeatureConfig contains Container Collection configuration. Container Collection is run in the Process Agent.
func (*LiveContainerCollectionFeatureConfig) DeepCopy ¶
func (in *LiveContainerCollectionFeatureConfig) DeepCopy() *LiveContainerCollectionFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveContainerCollectionFeatureConfig.
func (*LiveContainerCollectionFeatureConfig) DeepCopyInto ¶
func (in *LiveContainerCollectionFeatureConfig) DeepCopyInto(out *LiveContainerCollectionFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LiveProcessCollectionFeatureConfig ¶
type LiveProcessCollectionFeatureConfig struct { // Enabled enables Process monitoring. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // ScrubProcessArguments enables scrubbing of sensitive data in process command-lines (passwords, tokens, etc. ). // Default: true // +optional ScrubProcessArguments *bool `json:"scrubProcessArguments,omitempty"` // StripProcessArguments enables stripping of all process arguments. // Default: false // +optional StripProcessArguments *bool `json:"stripProcessArguments,omitempty"` }
LiveProcessCollectionFeatureConfig contains Process Collection configuration. Process Collection is run in the Process Agent.
func (*LiveProcessCollectionFeatureConfig) DeepCopy ¶
func (in *LiveProcessCollectionFeatureConfig) DeepCopy() *LiveProcessCollectionFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveProcessCollectionFeatureConfig.
func (*LiveProcessCollectionFeatureConfig) DeepCopyInto ¶
func (in *LiveProcessCollectionFeatureConfig) DeepCopyInto(out *LiveProcessCollectionFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LocalService ¶
type LocalService struct { // NameOverride defines the name of the internal traffic service to target the agent running on the local node. // +optional NameOverride *string `json:"nameOverride,omitempty"` // ForceEnableLocalService forces the creation of the internal traffic policy service to target the agent running on the local node. // This parameter only applies to Kubernetes 1.21, where the feature is in alpha and is disabled by default. // (On Kubernetes 1.22+, the feature entered beta and the internal traffic service is created by default, so this parameter is ignored.) // Default: false // +optional ForceEnableLocalService *bool `json:"forceEnableLocalService,omitempty"` }
LocalService provides the internal traffic policy service configuration. +k8s:openapi-gen=true
func (*LocalService) DeepCopy ¶
func (in *LocalService) DeepCopy() *LocalService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalService.
func (*LocalService) DeepCopyInto ¶
func (in *LocalService) DeepCopyInto(out *LocalService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogCollectionFeatureConfig ¶
type LogCollectionFeatureConfig struct { // Enabled enables Log collection. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // ContainerCollectAll enables Log collection from all containers. // Default: false // +optional ContainerCollectAll *bool `json:"containerCollectAll,omitempty"` // ContainerCollectUsingFiles enables log collection from files in `/var/log/pods instead` of using the container runtime API. // Collecting logs from files is usually the most efficient way of collecting logs. // See also: https://docs.datadoghq.com/agent/basic_agent_usage/kubernetes/#log-collection-setup // Default: true // +optional ContainerCollectUsingFiles *bool `json:"containerCollectUsingFiles,omitempty"` // ContainerLogsPath allows log collection from the container log path. // Set to a different path if you are not using the Docker runtime. // See also: https://docs.datadoghq.com/agent/kubernetes/daemonset_setup/?tab=k8sfile#create-manifest // Default: `/var/lib/docker/containers` // +optional ContainerLogsPath *string `json:"containerLogsPath,omitempty"` // PodLogsPath allows log collection from a pod log path. // Default: `/var/log/pods` // +optional PodLogsPath *string `json:"podLogsPath,omitempty"` // ContainerSymlinksPath allows log collection to use symbolic links in this directory to validate container ID -> pod. // Default: `/var/log/containers` // +optional ContainerSymlinksPath *string `json:"containerSymlinksPath,omitempty"` // TempStoragePath (always mounted from the host) is used by the Agent to store information about processed log files. // If the Agent is restarted, it starts tailing the log files immediately. // Default: `/var/lib/datadog-agent/logs` // +optional TempStoragePath *string `json:"tempStoragePath,omitempty"` // OpenFilesLimit sets the maximum number of log files that the Datadog Agent tails. // Increasing this limit can increase resource consumption of the Agent. // See also: https://docs.datadoghq.com/agent/basic_agent_usage/kubernetes/#log-collection-setup // Default: 100 // +optional OpenFilesLimit *int32 `json:"openFilesLimit,omitempty"` }
LogCollectionFeatureConfig contains Logs configuration. Logs collection is run in the Agent.
func (*LogCollectionFeatureConfig) DeepCopy ¶
func (in *LogCollectionFeatureConfig) DeepCopy() *LogCollectionFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogCollectionFeatureConfig.
func (*LogCollectionFeatureConfig) DeepCopyInto ¶
func (in *LogCollectionFeatureConfig) DeepCopyInto(out *LogCollectionFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiCustomConfig ¶
type MultiCustomConfig struct { // ConfigDataMap corresponds to the content of the configuration files. // The key should be the filename the contents get mounted to; for instance check.py or check.yaml. ConfigDataMap map[string]string `json:"configDataMap,omitempty"` // ConfigMap references an existing ConfigMap with the content of the configuration files. ConfigMap *ConfigMapConfig `json:"configMap,omitempty"` }
MultiCustomConfig provides a place for custom configuration of the Agent or Cluster Agent, corresponding to /confd/*.yaml. The configuration can be provided in the ConfigDataMap field as raw data, or referenced in a single ConfigMap. Note: `ConfigDataMap` and `ConfigMap` cannot be set together. +k8s:openapi-gen=true
func (*MultiCustomConfig) DeepCopy ¶
func (in *MultiCustomConfig) DeepCopy() *MultiCustomConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiCustomConfig.
func (*MultiCustomConfig) DeepCopyInto ¶
func (in *MultiCustomConfig) DeepCopyInto(out *MultiCustomConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NPMFeatureConfig ¶
type NPMFeatureConfig struct { // Enabled enables Network Performance Monitoring. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // EnableConntrack enables the system-probe agent to connect to the netlink/conntrack subsystem to add NAT information to connection data. // See also: http://conntrack-tools.netfilter.org/ // Default: false // +optional EnableConntrack *bool `json:"enableConntrack,omitempty"` // CollectDNSStats enables DNS stat collection. // Default: false // +optional CollectDNSStats *bool `json:"collectDNSStats,omitempty"` }
NPMFeatureConfig contains NPM (Network Performance Monitoring) feature configuration. Network Performance Monitoring runs in the System Probe and Process Agent.
func (*NPMFeatureConfig) DeepCopy ¶
func (in *NPMFeatureConfig) DeepCopy() *NPMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NPMFeatureConfig.
func (*NPMFeatureConfig) DeepCopyInto ¶
func (in *NPMFeatureConfig) DeepCopyInto(out *NPMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkPolicyConfig ¶
type NetworkPolicyConfig struct { // Create defines whether to create a NetworkPolicy for the current deployment. // +optional Create *bool `json:"create,omitempty"` // Flavor defines Which network policy to use. // +optional Flavor NetworkPolicyFlavor `json:"flavor,omitempty"` // DNSSelectorEndpoints defines the cilium selector of the DNS server entity. // +optional // +listType=atomic DNSSelectorEndpoints []metav1.LabelSelector `json:"dnsSelectorEndpoints,omitempty"` }
NetworkPolicyConfig provides Network Policy configuration for the agents. +k8s:openapi-gen=true
func (*NetworkPolicyConfig) DeepCopy ¶
func (in *NetworkPolicyConfig) DeepCopy() *NetworkPolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPolicyConfig.
func (*NetworkPolicyConfig) DeepCopyInto ¶
func (in *NetworkPolicyConfig) DeepCopyInto(out *NetworkPolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkPolicyFlavor ¶
type NetworkPolicyFlavor string
NetworkPolicyFlavor specifies which flavor of Network Policy to use.
const ( // NetworkPolicyFlavorKubernetes refers to `networking.k8s.io/v1/NetworkPolicy` NetworkPolicyFlavorKubernetes NetworkPolicyFlavor = "kubernetes" // NetworkPolicyFlavorCilium refers to `cilium.io/v2/CiliumNetworkPolicy` NetworkPolicyFlavorCilium NetworkPolicyFlavor = "cilium" )
func IsNetworkPolicyEnabled ¶
func IsNetworkPolicyEnabled(dda *DatadogAgent) (bool, NetworkPolicyFlavor)
IsNetworkPolicyEnabled returns whether a network policy should be created and which flavor to use
type OOMKillFeatureConfig ¶
type OOMKillFeatureConfig struct { // Enables the OOMKill eBPF-based check. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
OOMKillFeatureConfig configures the OOM Kill monitoring feature.
func (*OOMKillFeatureConfig) DeepCopy ¶
func (in *OOMKillFeatureConfig) DeepCopy() *OOMKillFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OOMKillFeatureConfig.
func (*OOMKillFeatureConfig) DeepCopyInto ¶
func (in *OOMKillFeatureConfig) DeepCopyInto(out *OOMKillFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OTLPFeatureConfig ¶
type OTLPFeatureConfig struct { // Receiver contains configuration for the OTLP ingest receiver. Receiver OTLPReceiverConfig `json:"receiver,omitempty"` }
OTLPFeatureConfig contains configuration for OTLP ingest. +k8s:openapi-gen=true
func (*OTLPFeatureConfig) DeepCopy ¶
func (in *OTLPFeatureConfig) DeepCopy() *OTLPFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OTLPFeatureConfig.
func (*OTLPFeatureConfig) DeepCopyInto ¶
func (in *OTLPFeatureConfig) DeepCopyInto(out *OTLPFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OTLPGRPCConfig ¶
type OTLPGRPCConfig struct { // Enable the OTLP/gRPC endpoint. Host port is enabled by default and can be disabled. // +optional Enabled *bool `json:"enabled,omitempty"` // Enable hostPort for OTLP/gRPC // Default: true // +optional HostPortConfig *HostPortConfig `json:"hostPortConfig,omitempty"` // Endpoint for OTLP/gRPC. // gRPC supports several naming schemes: https://github.com/grpc/grpc/blob/master/doc/naming.md // The Datadog Operator supports only 'host:port' (usually `0.0.0.0:port`). // Default: `0.0.0.0:4317`. // +optional Endpoint *string `json:"endpoint,omitempty"` }
OTLPGRPCConfig contains configuration for the OTLP ingest OTLP/gRPC receiver. +k8s:openapi-gen=true
func (*OTLPGRPCConfig) DeepCopy ¶
func (in *OTLPGRPCConfig) DeepCopy() *OTLPGRPCConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OTLPGRPCConfig.
func (*OTLPGRPCConfig) DeepCopyInto ¶
func (in *OTLPGRPCConfig) DeepCopyInto(out *OTLPGRPCConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OTLPHTTPConfig ¶
type OTLPHTTPConfig struct { // Enable the OTLP/HTTP endpoint. Host port is enabled by default and can be disabled. // +optional Enabled *bool `json:"enabled,omitempty"` // Enable hostPorts for OTLP/HTTP // Default: true // +optional HostPortConfig *HostPortConfig `json:"hostPortConfig,omitempty"` // Endpoint for OTLP/HTTP. // Default: '0.0.0.0:4318'. // +optional Endpoint *string `json:"endpoint,omitempty"` }
OTLPHTTPConfig contains configuration for the OTLP ingest OTLP/HTTP receiver. +k8s:openapi-gen=true
func (*OTLPHTTPConfig) DeepCopy ¶
func (in *OTLPHTTPConfig) DeepCopy() *OTLPHTTPConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OTLPHTTPConfig.
func (*OTLPHTTPConfig) DeepCopyInto ¶
func (in *OTLPHTTPConfig) DeepCopyInto(out *OTLPHTTPConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OTLPProtocolsConfig ¶
type OTLPProtocolsConfig struct { // GRPC contains configuration for the OTLP ingest OTLP/gRPC receiver. // +optional GRPC *OTLPGRPCConfig `json:"grpc,omitempty"` // HTTP contains configuration for the OTLP ingest OTLP/HTTP receiver. // +optional HTTP *OTLPHTTPConfig `json:"http,omitempty"` }
OTLPProtocolsConfig contains configuration for the OTLP ingest receiver protocols. +k8s:openapi-gen=true
func (*OTLPProtocolsConfig) DeepCopy ¶
func (in *OTLPProtocolsConfig) DeepCopy() *OTLPProtocolsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OTLPProtocolsConfig.
func (*OTLPProtocolsConfig) DeepCopyInto ¶
func (in *OTLPProtocolsConfig) DeepCopyInto(out *OTLPProtocolsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OTLPReceiverConfig ¶
type OTLPReceiverConfig struct { // Protocols contains configuration for the OTLP ingest receiver protocols. Protocols OTLPProtocolsConfig `json:"protocols,omitempty"` }
OTLPReceiverConfig contains configuration for the OTLP ingest receiver. +k8s:openapi-gen=true
func (*OTLPReceiverConfig) DeepCopy ¶
func (in *OTLPReceiverConfig) DeepCopy() *OTLPReceiverConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OTLPReceiverConfig.
func (*OTLPReceiverConfig) DeepCopyInto ¶
func (in *OTLPReceiverConfig) DeepCopyInto(out *OTLPReceiverConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OrchestratorExplorerFeatureConfig ¶
type OrchestratorExplorerFeatureConfig struct { // Enabled enables the Orchestrator Explorer. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` // Conf overrides the configuration for the default Orchestrator Explorer check. // This must point to a ConfigMap containing a valid cluster check configuration. // +optional Conf *CustomConfig `json:"conf,omitempty"` // ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ). // Default: true // +optional ScrubContainers *bool `json:"scrubContainers,omitempty"` // `CustomResources` defines custom resources for the orchestrator explorer to collect. // Each item should follow the convention `group/version/kind`. For example, `datadoghq.com/v1alpha1/datadogmetrics`. // +optional // +listType=set CustomResources []string `json:"customResources,omitempty"` // Additional tags to associate with the collected data in the form of `a b c`. // This is a Cluster Agent option distinct from DD_TAGS that is used in the Orchestrator Explorer. // +optional // +listType=set ExtraTags []string `json:"extraTags,omitempty"` // Override the API endpoint for the Orchestrator Explorer. // URL Default: "https://orchestrator.datadoghq.com". // +optional DDUrl *string `json:"ddUrl,omitempty"` }
OrchestratorExplorerFeatureConfig contains the Orchestrator Explorer check feature configuration. The Orchestrator Explorer check runs in the Process and Cluster Agents (or Cluster Check Runners). See also: https://docs.datadoghq.com/infrastructure/livecontainers/#kubernetes-resources +k8s:openapi-gen=true
func (*OrchestratorExplorerFeatureConfig) DeepCopy ¶
func (in *OrchestratorExplorerFeatureConfig) DeepCopy() *OrchestratorExplorerFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratorExplorerFeatureConfig.
func (*OrchestratorExplorerFeatureConfig) DeepCopyInto ¶
func (in *OrchestratorExplorerFeatureConfig) DeepCopyInto(out *OrchestratorExplorerFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OriginDetectionUnified ¶
type OriginDetectionUnified struct { // Enabled enables unified mechanism for origin detection. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
OriginDetectionUnified defines the origin detection unified mechanism behavior.
func (*OriginDetectionUnified) DeepCopy ¶
func (in *OriginDetectionUnified) DeepCopy() *OriginDetectionUnified
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OriginDetectionUnified.
func (*OriginDetectionUnified) DeepCopyInto ¶
func (in *OriginDetectionUnified) DeepCopyInto(out *OriginDetectionUnified)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProcessDiscoveryFeatureConfig ¶
type ProcessDiscoveryFeatureConfig struct { // Enabled enables the Process Discovery check in the Agent. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
ProcessDiscoveryFeatureConfig contains the configuration for the process discovery check ProcessDiscovery is run in the ProcessAgent
func (*ProcessDiscoveryFeatureConfig) DeepCopy ¶
func (in *ProcessDiscoveryFeatureConfig) DeepCopy() *ProcessDiscoveryFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessDiscoveryFeatureConfig.
func (*ProcessDiscoveryFeatureConfig) DeepCopyInto ¶
func (in *ProcessDiscoveryFeatureConfig) DeepCopyInto(out *ProcessDiscoveryFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Profile ¶
type Profile struct { // EnvVars specifies the environment variables for the profile. // +optional // +listType=map // +listMapKey=name EnvVars []corev1.EnvVar `json:"env,omitempty"` // ResourceRequirements specifies the resource requirements for the profile. // +optional ResourceRequirements *corev1.ResourceRequirements `json:"resources,omitempty"` }
Profile defines a sidecar configuration override.
func (*Profile) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Profile.
func (*Profile) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrometheusScrapeFeatureConfig ¶
type PrometheusScrapeFeatureConfig struct { // Enable autodiscovery of pods and services exposing Prometheus metrics. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // EnableServiceEndpoints enables generating dedicated checks for service endpoints. // Default: false // +optional EnableServiceEndpoints *bool `json:"enableServiceEndpoints,omitempty"` // AdditionalConfigs allows adding advanced Prometheus check configurations with custom discovery rules. // +optional AdditionalConfigs *string `json:"additionalConfigs,omitempty"` // Version specifies the version of the OpenMetrics check. // Default: 2 // +optional Version *int `json:"version,omitempty"` }
PrometheusScrapeFeatureConfig allows configuration of the Prometheus Autodiscovery feature. +k8s:openapi-gen=true
func (*PrometheusScrapeFeatureConfig) DeepCopy ¶
func (in *PrometheusScrapeFeatureConfig) DeepCopy() *PrometheusScrapeFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusScrapeFeatureConfig.
func (*PrometheusScrapeFeatureConfig) DeepCopyInto ¶
func (in *PrometheusScrapeFeatureConfig) DeepCopyInto(out *PrometheusScrapeFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RemoteConfigConfiguration ¶
type RemoteConfigConfiguration struct {
Features *DatadogFeatures `json:"features,omitempty"`
}
RemoteConfigConfiguration stores the configuration received from RemoteConfig. +k8s:openapi-gen=true
func (*RemoteConfigConfiguration) DeepCopy ¶
func (in *RemoteConfigConfiguration) DeepCopy() *RemoteConfigConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteConfigConfiguration.
func (*RemoteConfigConfiguration) DeepCopyInto ¶
func (in *RemoteConfigConfiguration) DeepCopyInto(out *RemoteConfigConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RemoteConfigurationFeatureConfig ¶
type RemoteConfigurationFeatureConfig struct { // Enable this option to activate Remote Configuration. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
RemoteConfigurationFeatureConfig contains RC (Remote Configuration) configuration. RC runs in the Agent.
func (*RemoteConfigurationFeatureConfig) DeepCopy ¶
func (in *RemoteConfigurationFeatureConfig) DeepCopy() *RemoteConfigurationFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteConfigurationFeatureConfig.
func (*RemoteConfigurationFeatureConfig) DeepCopyInto ¶
func (in *RemoteConfigurationFeatureConfig) DeepCopyInto(out *RemoteConfigurationFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SBOMContainerImageConfig ¶
type SBOMContainerImageConfig struct { // Enable this option to activate SBOM collection. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // Analyzers to use for SBOM collection. // +optional // +listType=set Analyzers []string `json:"analyzers,omitempty"` // Enable this option to enable support for uncompressed layers. // Default: false // +optional UncompressedLayersSupport bool `json:"uncompressedLayersSupport,omitempty"` // Enable this option to enable experimental overlayFS direct scan. // Default: false // +optional OverlayFSDirectScan bool `json:"overlayFSDirectScan,omitempty"` }
SBOMTypeConfig contains configuration for a SBOM collection type.
func (*SBOMContainerImageConfig) DeepCopy ¶
func (in *SBOMContainerImageConfig) DeepCopy() *SBOMContainerImageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SBOMContainerImageConfig.
func (*SBOMContainerImageConfig) DeepCopyInto ¶
func (in *SBOMContainerImageConfig) DeepCopyInto(out *SBOMContainerImageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SBOMFeatureConfig ¶
type SBOMFeatureConfig struct { // Enable this option to activate SBOM collection. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` ContainerImage *SBOMContainerImageConfig `json:"containerImage,omitempty"` Host *SBOMHostConfig `json:"host,omitempty"` }
SBOMFeatureConfig contains SBOM (Software Bill of Materials) collection configuration. SBOM runs in the Agent.
func (*SBOMFeatureConfig) DeepCopy ¶
func (in *SBOMFeatureConfig) DeepCopy() *SBOMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SBOMFeatureConfig.
func (*SBOMFeatureConfig) DeepCopyInto ¶
func (in *SBOMFeatureConfig) DeepCopyInto(out *SBOMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SBOMHostConfig ¶
type SBOMHostConfig struct { // Enable this option to activate SBOM collection. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // Analyzers to use for SBOM collection. // +optional // +listType=set Analyzers []string `json:"analyzers,omitempty"` }
SBOMTypeConfig contains configuration for a SBOM collection type.
func (*SBOMHostConfig) DeepCopy ¶
func (in *SBOMHostConfig) DeepCopy() *SBOMHostConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SBOMHostConfig.
func (*SBOMHostConfig) DeepCopyInto ¶
func (in *SBOMHostConfig) DeepCopyInto(out *SBOMHostConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SeccompConfig ¶
type SeccompConfig struct { // CustomRootPath specifies a custom Seccomp Profile root location. // +optional CustomRootPath *string `json:"customRootPath,omitempty"` // CustomProfile specifies a ConfigMap containing a custom Seccomp Profile. // ConfigMap data must either have the key `system-probe-seccomp.json` or CustomProfile.Items // must include a corev1.KeytoPath that maps the key to the path `system-probe-seccomp.json`. // +optional CustomProfile *CustomConfig `json:"customProfile,omitempty"` }
SeccompConfig is used to override default values for Seccomp Profile configurations. +k8s:openapi-gen=true
func (*SeccompConfig) DeepCopy ¶
func (in *SeccompConfig) DeepCopy() *SeccompConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SeccompConfig.
func (*SeccompConfig) DeepCopyInto ¶
func (in *SeccompConfig) DeepCopyInto(out *SeccompConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretBackendConfig ¶
type SecretBackendConfig struct { // The secret backend command to use. Datadog provides a pre-defined binary `/readsecret_multiple_providers.sh`. // Read more about `/readsecret_multiple_providers.sh` at https://docs.datadoghq.com/agent/configuration/secrets-management/?tab=linux#script-for-reading-from-multiple-secret-providers. Command *string `json:"command,omitempty"` // List of arguments to pass to the command (space-separated strings). // +optional Args *string `json:"args,omitempty"` // The command timeout in seconds. // Default: `30`. // +optional Timeout *int32 `json:"timeout,omitempty"` // Whether to create a global permission allowing Datadog agents to read all Kubernetes secrets. // Default: `false`. // +optional EnableGlobalPermissions *bool `json:"enableGlobalPermissions,omitempty"` // Roles for Datadog to read the specified secrets, replacing `enableGlobalPermissions`. // They are defined as a list of namespace/secrets. // Each defined namespace needs to be present in the DatadogAgent controller using `WATCH_NAMESPACE` or `DD_AGENT_WATCH_NAMESPACE`. // See also: https://github.com/DataDog/datadog-operator/blob/main/docs/secret_management.md#how-to-deploy-the-agent-components-using-the-secret-backend-feature-with-datadogagent. // +optional // +listType=atomic Roles []*SecretBackendRolesConfig `json:"roles,omitempty"` }
SecretBackendConfig provides configuration for the secret backend. +k8s:openapi-gen=true
func (*SecretBackendConfig) DeepCopy ¶
func (in *SecretBackendConfig) DeepCopy() *SecretBackendConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretBackendConfig.
func (*SecretBackendConfig) DeepCopyInto ¶
func (in *SecretBackendConfig) DeepCopyInto(out *SecretBackendConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretBackendRolesConfig ¶ added in v1.10.0
type SecretBackendRolesConfig struct { // Namespace defines the namespace in which the secrets reside. // +required Namespace *string `json:"namespace,omitempty"` // Secrets defines the list of secrets for which a role should be created. // +required // +listType=set Secrets []string `json:"secrets,omitempty"` }
SecretBackendRolesConfig provides configuration of the secrets Datadog agents can read for the SecretBackend feature +k8s:openapi-gen=true
func (*SecretBackendRolesConfig) DeepCopy ¶ added in v1.10.0
func (in *SecretBackendRolesConfig) DeepCopy() *SecretBackendRolesConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretBackendRolesConfig.
func (*SecretBackendRolesConfig) DeepCopyInto ¶ added in v1.10.0
func (in *SecretBackendRolesConfig) DeepCopyInto(out *SecretBackendRolesConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretConfig ¶ added in v1.10.0
type SecretConfig struct { // SecretName is the name of the secret. SecretName string `json:"secretName"` // KeyName is the key of the secret to use. // +optional KeyName string `json:"keyName,omitempty"` }
SecretConfig contains a secret name and an included key. +kubebuilder:object:generate=true
func (*SecretConfig) DeepCopy ¶ added in v1.10.0
func (in *SecretConfig) DeepCopy() *SecretConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretConfig.
func (*SecretConfig) DeepCopyInto ¶ added in v1.10.0
func (in *SecretConfig) DeepCopyInto(out *SecretConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Selector ¶
type Selector struct { // NamespaceSelector specifies the label selector for namespaces. // +optional NamespaceSelector *metav1.LabelSelector `json:"namespaceSelector,omitempty"` // ObjectSelector specifies the label selector for objects. // +optional ObjectSelector *metav1.LabelSelector `json:"objectSelector,omitempty"` }
Selectors define a pod selector for sidecar injection.
func (*Selector) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Selector.
func (*Selector) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SingleStepInstrumentation ¶
type SingleStepInstrumentation struct { // Enabled enables injecting the Datadog APM libraries into all pods in the cluster. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // EnabledNamespaces enables injecting the Datadog APM libraries into pods in specific namespaces. // +optional // +listType=set EnabledNamespaces []string `json:"enabledNamespaces,omitempty"` // DisabledNamespaces disables injecting the Datadog APM libraries into pods in specific namespaces. // +optional // +listType=set DisabledNamespaces []string `json:"disabledNamespaces,omitempty"` // LibVersions configures injection of specific tracing library versions with Single Step Instrumentation. // <Library>: <Version> // ex: "java": "v1.18.0" // +optional LibVersions map[string]string `json:"libVersions,omitempty"` // LanguageDetection detects languages and adds them as annotations on Deployments, but does not use these languages for injecting libraries to workload pods. // (Requires Agent 7.52.0+ and Cluster Agent 7.52.0+) // +optional LanguageDetection *LanguageDetectionConfig `json:"languageDetection,omitempty"` }
SingleStepInstrumentation contains the config for the namespaces to target and the library to inject.
func (*SingleStepInstrumentation) DeepCopy ¶
func (in *SingleStepInstrumentation) DeepCopy() *SingleStepInstrumentation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SingleStepInstrumentation.
func (*SingleStepInstrumentation) DeepCopyInto ¶
func (in *SingleStepInstrumentation) DeepCopyInto(out *SingleStepInstrumentation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TCPQueueLengthFeatureConfig ¶
type TCPQueueLengthFeatureConfig struct { // Enables the TCP queue length eBPF-based check. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
TCPQueueLengthFeatureConfig configures the TCP queue length monitoring feature.
func (*TCPQueueLengthFeatureConfig) DeepCopy ¶
func (in *TCPQueueLengthFeatureConfig) DeepCopy() *TCPQueueLengthFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TCPQueueLengthFeatureConfig.
func (*TCPQueueLengthFeatureConfig) DeepCopyInto ¶
func (in *TCPQueueLengthFeatureConfig) DeepCopyInto(out *TCPQueueLengthFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type USMFeatureConfig ¶
type USMFeatureConfig struct { // Enabled enables Universal Service Monitoring. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
USMFeatureConfig contains USM (Universal Service Monitoring) feature configuration. Universal Service Monitoring runs in the Process Agent and System Probe.
func (*USMFeatureConfig) DeepCopy ¶
func (in *USMFeatureConfig) DeepCopy() *USMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new USMFeatureConfig.
func (*USMFeatureConfig) DeepCopyInto ¶
func (in *USMFeatureConfig) DeepCopyInto(out *USMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UnixDomainSocketConfig ¶
type UnixDomainSocketConfig struct { // Enabled enables Unix Domain Socket. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` // Path defines the socket path used when enabled. // +optional Path *string `json:"path,omitempty"` }
UnixDomainSocketConfig contains the Unix Domain Socket configuration. +k8s:openapi-gen=true
func (*UnixDomainSocketConfig) DeepCopy ¶
func (in *UnixDomainSocketConfig) DeepCopy() *UnixDomainSocketConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UnixDomainSocketConfig.
func (*UnixDomainSocketConfig) DeepCopyInto ¶
func (in *UnixDomainSocketConfig) DeepCopyInto(out *UnixDomainSocketConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadAutoscalingFeatureConfig ¶
type WorkloadAutoscalingFeatureConfig struct { // Enabled enables the workload autoscaling product. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
WorkloadAutoscalingFeatureConfig contains the configuration for the workload autoscaling product.
func (*WorkloadAutoscalingFeatureConfig) DeepCopy ¶
func (in *WorkloadAutoscalingFeatureConfig) DeepCopy() *WorkloadAutoscalingFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadAutoscalingFeatureConfig.
func (*WorkloadAutoscalingFeatureConfig) DeepCopyInto ¶
func (in *WorkloadAutoscalingFeatureConfig) DeepCopyInto(out *WorkloadAutoscalingFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.