diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-08-26 08:15:20 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-08-26 08:15:20 +0000 |
commit | 87d772a7d708fec12f48cd8adc0dedff6e1025da (patch) | |
tree | 1fee344c64cc3f43074a01981e21126c8482a522 /src/go/collectors/go.d.plugin/modules/k8s_state | |
parent | Adding upstream version 1.46.3. (diff) | |
download | netdata-87d772a7d708fec12f48cd8adc0dedff6e1025da.tar.xz netdata-87d772a7d708fec12f48cd8adc0dedff6e1025da.zip |
Adding upstream version 1.47.0.upstream/1.47.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
l--------- | src/go/plugin/go.d/modules/k8s_state/README.md (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/README.md) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/charts.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/charts.go) | 2 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/client.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/client.go) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/cluster_meta.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/cluster_meta.go) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/collect.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/collect.go) | 9 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/config_schema.json (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/config_schema.json) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/discover_kubernetes.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/discover_kubernetes.go) | 2 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/discover_node.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/discover_node.go) | 2 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/discover_pod.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/discover_pod.go) | 2 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/init.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/init.go) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/integrations/kubernetes_cluster_state.md (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/integrations/kubernetes_cluster_state.md) | 39 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/kube_state.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/kube_state.go) | 2 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/kube_state_test.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/kube_state_test.go) | 2 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/metadata.yaml (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/metadata.yaml) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/resource.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/resource.go) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/state.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/state.go) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/testdata/config.json (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/testdata/config.json) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/testdata/config.yaml (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/testdata/config.yaml) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/update_node_state.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/update_node_state.go) | 0 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/update_pod_state.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/update_pod_state.go) | 7 | ||||
-rw-r--r-- | src/go/plugin/go.d/modules/k8s_state/update_state.go (renamed from src/go/collectors/go.d.plugin/modules/k8s_state/update_state.go) | 0 |
21 files changed, 51 insertions, 16 deletions
diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/README.md b/src/go/plugin/go.d/modules/k8s_state/README.md index 72c4e5cab..72c4e5cab 120000 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/README.md +++ b/src/go/plugin/go.d/modules/k8s_state/README.md diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/charts.go b/src/go/plugin/go.d/modules/k8s_state/charts.go index 0cec12512..471d12577 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/charts.go +++ b/src/go/plugin/go.d/modules/k8s_state/charts.go @@ -7,7 +7,7 @@ import ( "regexp" "strings" - "github.com/netdata/netdata/go/go.d.plugin/agent/module" + "github.com/netdata/netdata/go/plugins/plugin/go.d/agent/module" ) // NETDATA_CHART_PRIO_CGROUPS_CONTAINERS 40000 diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/client.go b/src/go/plugin/go.d/modules/k8s_state/client.go index 315e823fe..315e823fe 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/client.go +++ b/src/go/plugin/go.d/modules/k8s_state/client.go diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/cluster_meta.go b/src/go/plugin/go.d/modules/k8s_state/cluster_meta.go index e7eb809cc..e7eb809cc 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/cluster_meta.go +++ b/src/go/plugin/go.d/modules/k8s_state/cluster_meta.go diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/collect.go b/src/go/plugin/go.d/modules/k8s_state/collect.go index 033d330ce..081a0fdf1 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/collect.go +++ b/src/go/plugin/go.d/modules/k8s_state/collect.go @@ -8,7 +8,7 @@ import ( "strings" "time" - "github.com/netdata/netdata/go/go.d.plugin/agent/module" + "github.com/netdata/netdata/go/plugins/plugin/go.d/agent/module" corev1 "k8s.io/api/core/v1" ) @@ -68,6 +68,13 @@ func (ks *KubeState) collectKubeState(mx map[string]int64) { func (ks *KubeState) collectPodsState(mx map[string]int64) { now := time.Now() for _, ps := range ks.state.pods { + // Skip cronjobs (each of them is a unique container because name contains hash) + // to avoid overwhelming Netdata with high cardinality metrics. + // Related issue https://github.com/netdata/netdata/issues/16412 + if ps.controllerKind == "Job" { + continue + } + if ps.deleted { delete(ks.state.pods, podSource(ps.namespace, ps.name)) ks.removePodCharts(ps) diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/config_schema.json b/src/go/plugin/go.d/modules/k8s_state/config_schema.json index ae66d7cb5..ae66d7cb5 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/config_schema.json +++ b/src/go/plugin/go.d/modules/k8s_state/config_schema.json diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/discover_kubernetes.go b/src/go/plugin/go.d/modules/k8s_state/discover_kubernetes.go index a4aeee974..5d435871a 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/discover_kubernetes.go +++ b/src/go/plugin/go.d/modules/k8s_state/discover_kubernetes.go @@ -8,7 +8,7 @@ import ( "sync" "time" - "github.com/netdata/netdata/go/go.d.plugin/logger" + "github.com/netdata/netdata/go/plugins/logger" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/discover_node.go b/src/go/plugin/go.d/modules/k8s_state/discover_node.go index 29761b204..1d91436c8 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/discover_node.go +++ b/src/go/plugin/go.d/modules/k8s_state/discover_node.go @@ -5,7 +5,7 @@ package k8s_state import ( "context" - "github.com/netdata/netdata/go/go.d.plugin/logger" + "github.com/netdata/netdata/go/plugins/logger" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/discover_pod.go b/src/go/plugin/go.d/modules/k8s_state/discover_pod.go index 2def7ad50..53e9ceb92 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/discover_pod.go +++ b/src/go/plugin/go.d/modules/k8s_state/discover_pod.go @@ -5,7 +5,7 @@ package k8s_state import ( "context" - "github.com/netdata/netdata/go/go.d.plugin/logger" + "github.com/netdata/netdata/go/plugins/logger" "k8s.io/client-go/tools/cache" "k8s.io/client-go/util/workqueue" diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/init.go b/src/go/plugin/go.d/modules/k8s_state/init.go index 998131394..998131394 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/init.go +++ b/src/go/plugin/go.d/modules/k8s_state/init.go diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/integrations/kubernetes_cluster_state.md b/src/go/plugin/go.d/modules/k8s_state/integrations/kubernetes_cluster_state.md index 88d81e257..5f5e36f87 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/integrations/kubernetes_cluster_state.md +++ b/src/go/plugin/go.d/modules/k8s_state/integrations/kubernetes_cluster_state.md @@ -1,6 +1,6 @@ <!--startmeta -custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/go/collectors/go.d.plugin/modules/k8s_state/README.md" -meta_yaml: "https://github.com/netdata/netdata/edit/master/src/go/collectors/go.d.plugin/modules/k8s_state/metadata.yaml" +custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/modules/k8s_state/README.md" +meta_yaml: "https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/modules/k8s_state/metadata.yaml" sidebar_label: "Kubernetes Cluster State" learn_status: "Published" learn_rel_path: "Collecting Metrics/Kubernetes" @@ -193,6 +193,8 @@ There are no configuration examples. ### Debug Mode +**Important**: Debug mode is not supported for data collection jobs created via the UI using the Dyncfg feature. + To troubleshoot issues with the `k8s_state` collector, run the `go.d.plugin` with the debug option enabled. The output should give you clues as to why the collector isn't working. @@ -215,4 +217,37 @@ should give you clues as to why the collector isn't working. ./go.d.plugin -d -m k8s_state ``` +### Getting Logs + +If you're encountering problems with the `k8s_state` collector, follow these steps to retrieve logs and identify potential issues: + +- **Run the command** specific to your system (systemd, non-systemd, or Docker container). +- **Examine the output** for any warnings or error messages that might indicate issues. These messages should provide clues about the root cause of the problem. + +#### System with systemd + +Use the following command to view logs generated since the last Netdata service restart: + +```bash +journalctl _SYSTEMD_INVOCATION_ID="$(systemctl show --value --property=InvocationID netdata)" --namespace=netdata --grep k8s_state +``` + +#### System without systemd + +Locate the collector log file, typically at `/var/log/netdata/collector.log`, and use `grep` to filter for collector's name: + +```bash +grep k8s_state /var/log/netdata/collector.log +``` + +**Note**: This method shows logs from all restarts. Focus on the **latest entries** for troubleshooting current issues. + +#### Docker Container + +If your Netdata runs in a Docker container named "netdata" (replace if different), use this command: + +```bash +docker logs netdata 2>&1 | grep k8s_state +``` + diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/kube_state.go b/src/go/plugin/go.d/modules/k8s_state/kube_state.go index 95fd2d1ca..26962928e 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/kube_state.go +++ b/src/go/plugin/go.d/modules/k8s_state/kube_state.go @@ -10,7 +10,7 @@ import ( "sync" "time" - "github.com/netdata/netdata/go/go.d.plugin/agent/module" + "github.com/netdata/netdata/go/plugins/plugin/go.d/agent/module" "k8s.io/client-go/kubernetes" ) diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/kube_state_test.go b/src/go/plugin/go.d/modules/k8s_state/kube_state_test.go index 99560d6dc..cf52c08b6 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/kube_state_test.go +++ b/src/go/plugin/go.d/modules/k8s_state/kube_state_test.go @@ -11,7 +11,7 @@ import ( "testing" "time" - "github.com/netdata/netdata/go/go.d.plugin/agent/module" + "github.com/netdata/netdata/go/plugins/plugin/go.d/agent/module" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/metadata.yaml b/src/go/plugin/go.d/modules/k8s_state/metadata.yaml index 7617b297f..7617b297f 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/metadata.yaml +++ b/src/go/plugin/go.d/modules/k8s_state/metadata.yaml diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/resource.go b/src/go/plugin/go.d/modules/k8s_state/resource.go index cabd41a67..cabd41a67 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/resource.go +++ b/src/go/plugin/go.d/modules/k8s_state/resource.go diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/state.go b/src/go/plugin/go.d/modules/k8s_state/state.go index 72bac88ee..72bac88ee 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/state.go +++ b/src/go/plugin/go.d/modules/k8s_state/state.go diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/testdata/config.json b/src/go/plugin/go.d/modules/k8s_state/testdata/config.json index 0e3f7c403..0e3f7c403 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/testdata/config.json +++ b/src/go/plugin/go.d/modules/k8s_state/testdata/config.json diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/testdata/config.yaml b/src/go/plugin/go.d/modules/k8s_state/testdata/config.yaml index f21a3a7a0..f21a3a7a0 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/testdata/config.yaml +++ b/src/go/plugin/go.d/modules/k8s_state/testdata/config.yaml diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/update_node_state.go b/src/go/plugin/go.d/modules/k8s_state/update_node_state.go index 80f5c26c8..80f5c26c8 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/update_node_state.go +++ b/src/go/plugin/go.d/modules/k8s_state/update_node_state.go diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/update_pod_state.go b/src/go/plugin/go.d/modules/k8s_state/update_pod_state.go index 22ef0f7fc..16b0f433b 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/update_pod_state.go +++ b/src/go/plugin/go.d/modules/k8s_state/update_pod_state.go @@ -149,13 +149,6 @@ func (ks *KubeState) updatePodState(r resource) { } } -func max(a, b int64) int64 { - if a < b { - return b - } - return a -} - func extractContainerID(id string) string { // docker://d98... if i := strings.LastIndexByte(id, '/'); i != -1 { diff --git a/src/go/collectors/go.d.plugin/modules/k8s_state/update_state.go b/src/go/plugin/go.d/modules/k8s_state/update_state.go index 88f3272c1..88f3272c1 100644 --- a/src/go/collectors/go.d.plugin/modules/k8s_state/update_state.go +++ b/src/go/plugin/go.d/modules/k8s_state/update_state.go |