Settings API - Kubernetes workload anomaly detection schema table
Kubernetes workload anomaly detection (builtin:anomaly-detection.kubernetes.workload)
Dynatrace automatically detects a wide range of common Kubernetes-related issues. Use these settings to configure alerts relevant to your Kubernetes workload. Changing thresholds resets the observation period.
Schema ID | Schema groups | Scope |
---|---|---|
builtin:anomaly-detection.kubernetes.workload |
| CLOUD_APPLICATION_NAMESPACE - Kubernetes namespaceKUBERNETES_CLUSTER - Kubernetes clusterenvironment |
GET | Managed | https://{your-domain}/e/{your-environment-id}/api/v2/settings/schemas/builtin:anomaly-detection.kubernetes.workload |
SaaS | https://{your-environment-id}.live.dynatrace.com/api/v2/settings/schemas/builtin:anomaly-detection.kubernetes.workload | |
Environment ActiveGate | https://{your-activegate-domain}/e/{your-environment-id}/api/v2/settings/schemas/builtin:anomaly-detection.kubernetes.workload |
Authentication
To execute this request, you need an access token with Read settings (settings.read
) scope. To learn how to obtain and use it, see Tokens and authentication.
Parameters
Property | Label | Type | Description | Required |
---|---|---|---|---|
containerRestarts | - | ContainerRestarts | - | required |
deploymentStuck | - | DeploymentStuck | - | required |
pendingPods | - | PendingPods | - | required |
podStuckInTerminating | - | PodStuckInTerminating | - | required |
workloadWithoutReadyPods | - | WorkloadWithoutReadyPods | - | required |
notAllPodsReady | - | NotAllPodsReady | - | required |
highMemoryUsage | - | HighMemoryUsage | - | required |
highCpuUsage | - | HighCpuUsage | - | required |
highCpuThrottling | - | HighCpuThrottling | - | required |
oomKills | - | OOMKills | - | required |
jobFailureEvents | - | JobFailureEvents | - | required |
podBackoffEvents | - | PodBackoffEvents | - | required |
podEvictionEvents | - | PodEvictionEvents | - | required |
podPreemptionEvents | - | PodPreemptionEvents | - | required |
Request body objects
The ContainerRestartsConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
threshold | there is at least | integer | - | required |
samplePeriodInMinutes | per minute, for any | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The ContainerRestarts
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect container restarts | boolean | - | required |
configuration | - | ContainerRestartsConfig | Alert if | required |
The WorkloadWithoutReadyPodsConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
samplePeriodInMinutes | workload has no ready pods for at least | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The WorkloadWithoutReadyPods
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect workloads without ready pods | boolean | As of specific pod life cycles of different workload types, cronjobs and jobs are excluded. | required |
configuration | - | WorkloadWithoutReadyPodsConfig | Alert if | required |
The NotAllPodsReadyConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
samplePeriodInMinutes | some workload pods are not ready for at least | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The NotAllPodsReady
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect workloads with non-ready pods | boolean | As of specific pod life cycles of different workload types, cronjobs and jobs are excluded. | required |
configuration | - | NotAllPodsReadyConfig | Alert if | required |
The PendingPodsConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
threshold | there is at least | integer | - | required |
samplePeriodInMinutes | stuck in pending state for at least | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The PendingPods
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect pods stuck in pending | boolean | Number of pods in | required |
configuration | - | PendingPodsConfig | Alert if | required |
The DeploymentStuckConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
samplePeriodInMinutes | workload stops progressing for at least | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The DeploymentStuck
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect stuck deployments | boolean | Evaluates workload condition 'Progressing' | required |
configuration | - | DeploymentStuckConfig | Alert if | required |
The PodStuckInTerminatingConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
samplePeriodInMinutes | pod termination stops progressing for at least | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The PodStuckInTerminating
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect pods stuck in terminating | boolean | Deleted pods in 'Running' phase | required |
configuration | - | PodStuckInTerminatingConfig | Alert if | required |
The HighMemoryUsageConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
threshold | amount of utilized workload memory is above | integer | - | required |
samplePeriodInMinutes | of defined memory limits for at least | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The HighMemoryUsage
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect memory usage saturation | boolean | Memory usage (working set memory) is close to limits. | required |
configuration | - | HighMemoryUsageConfig | Alert if | required |
The HighCpuUsageConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
threshold | amount of utilized workload CPU is above | integer | - | required |
samplePeriodInMinutes | of defined CPU limits for at least | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The HighCpuUsage
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect CPU usage saturation | boolean | CPU usage is close to limits. | required |
configuration | - | HighCpuUsageConfig | Alert if | required |
The HighCpuThrottlingConfig
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
threshold | amount of CPU throttling is above | integer | - | required |
samplePeriodInMinutes | of CPU usage for at least | integer | - | required |
observationPeriodInMinutes | within the last | integer | - | required |
The HighCpuThrottling
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect high CPU throttling | boolean | The CPU throttling to usage ratio exceeds the specified threshold. Important: This alert uses throttled seconds / used seconds (in millicores) in contrast to Prometheus and Grafana, which use throttled periods / total periods for the throttling ratio. | required |
configuration | - | HighCpuThrottlingConfig | Alert if | required |
The OOMKills
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect out-of-memory kills | boolean | - | required |
The JobFailureEvents
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect job failure events | boolean | Alerts on any occurrence of Kubernetes events with reason 'BackoffLimitExceeded', 'DeadlineExceeded', or 'PodFailurePolicy'. If 'Filter events' is enabled, make certain that you ingest events with the aforementioned reasons in order to receive alerts. | required |
The PodBackoffEvents
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect pod backoff events | boolean | Alerts on any occurrence of Kubernetes events with reason 'BackOff', as observed on pod statuses 'ImagePullBackOff', and 'CrashLoopBackOff'. If 'Filter events' is enabled, make certain that you ingest events with the aforementioned reasons in order to receive alerts. | required |
The PodEvictionEvents
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect pod eviction events | boolean | Eviction is the process of terminating one or more pods on a node to free up resources. Alerts on any occurrence of Kubernetes events with reason 'Evicted'. If 'Filter events' is enabled, make certain that you ingest events with the aforementioned reasons in order to receive alerts. | required |
The PodPreemptionEvents
object
Property | Label | Type | Description | Required |
---|---|---|---|---|
enabled | Detect pod preemption events | boolean | Preemption is the process of terminating pods with lower priority so that pods with higher priority can be scheduled on a node. Alerts on any occurrence of Kubernetes events with reason 'Preempted', or 'Preempting'. If 'Filter events' is enabled, make certain that you ingest events with the aforementioned reasons in order to receive alerts. | required |