This document is auto-generated by make docs
, and details what
data Insights Operator (IO) gathers from a cluster, the location
where it is stored in the IO archive, and the applicable version(s) of OpenShift.
Data stored in the conditional/
directory is only
gathered when certain conditions are met.
The IO pod operates in the openshift-insights
namespace and the
archives are packaged as .tar.gz
files in /var/lib/insights-operator
.
BuildGatherApiRequestCounts creates a gathering closure which collects API requests counts for the resources mentioned in the alert provided as a string parameter Params is of type AlertIsFiringConditionParams:
- alert_name string - name of the firing alert
- Location in archive: conditional/alerts/{alert_name}/api_request_counts.json
- Id in config: conditional/api_request_counts_of_resource_from_alert
- Since versions:
- 4.10+
gathers active alerts from the Alertmanager API V2 in the JSON format. Alert data is also still included in the GatherMostRecentMetrics gatherer.
- Location in archive: config/alerts.json
- See: docs/insights-archive-sample/config/alerts.json
- Id in config: active_alerts
- Since version:
- 4.12+
collects the specified Custom Resource Definitions.
The following CRDs are gathered:
- volumesnapshots.snapshot.storage.k8s.io (10745 bytes)
- volumesnapshotcontents.snapshot.storage.k8s.io (13149 bytes)
The CRD sizes above are in the raw (uncompressed) state.
- Location in archive: config/crd/
- Id in config: clusterconfig/crds
Collects statuses of thecephclusters.ceph.rook.io
resources
from Openshift Data Foundation Stack.
https://github.com/rook/rook/blob/master/pkg/apis/ceph.rook.io/v1/types.go
docs/insights-archive-sample/config/storage/openshift-storage/cephclusters/ocs-storagecluster-cephcluster.json
Version | Path |
---|---|
<= 4.12 | config/storage/{namespace}/{name}.json |
4.13+ | config/storage/{namespace}/cephclusters/{name}.json |
clusterconfig/ceph_cluster
- 4.8.49
- 4.9.48
- 4.10.31
- 4.11.2
- 4.12
collects anonymized CertificateSigningRequests. Collects CSRs which werent Verified, or when Now < ValidBefore or Now > ValidAfter
The Kubernetes api:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/certificates/v1beta1/certificatesigningrequest.go#L78
Response see:
https://docs.openshift.com/container-platform/4.3/rest_api/index.html#certificatesigningrequestlist-v1beta1certificates
- Location in archive: config/certificatesigningrequests/
- Id in config: clusterconfig/certificate_signing_requests
- Since versions:
- 4.3.25+
- 4.4.12+
- 4.5+
Collects APIServer.config.openshift.io resource
https://github.com/openshift/api/blob/master/config/v1/types_apiserver.go
- docs/insights-archive-sample/config/apiserver.json
config/apiserver.json
cluster_apiserver
- 4.15
None
fetches the cluster Authentication - the Authentication with name cluster.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/authentication.go#L50 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#authentication-v1operator-openshift-io
- Location in archive: config/authentication/
- See: docs/insights-archive-sample/config/authentication
- Id in config: clusterconfig/authentication
fetches the cluster FeatureGate - the FeatureGate with name cluster.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/featuregate.go#L50 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#featuregate-v1-config-openshift-io
- Location in archive: config/featuregate.json
- See: docs/insights-archive-sample/config/featuregate.json
- Id in config: clusterconfig/feature_gates
gathers cluster "images.config.openshift.io" resource definition
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/config_client.go#L72 Response see https://docs.openshift.com/container-platform/latest/rest_api/config_apis/image-config-openshift-io-v1.html#image-config-openshift-io-v1
- Location in archive: config/image.json
- Id in config: clusterconfig/image
- Since versions:
- 4.10.8
- 4.11+
fetches the image pruner configuration
- Location in archive: config/clusteroperator/imageregistry.operator.openshift.io/imagepruner/cluster.json
- Location in older versions: config/imagepruner.json
- Id in config: clusterconfig/image_pruners
fetches the cluster Image Registry configuration
Conditional data: If the Image Registry configuration uses any PersistentVolumeClaim for the storage, the corresponding PersistentVolume definition is gathered
-
Location in archive: config/clusteroperator/imageregistry.operator.openshift.io/config/cluster.json
-
Location in older versions: config/imageregistry.json
-
Id in config: clusterconfig/image_registries
-
Since versions:
- 4.3.40+
- 4.4.12+
- 4.5+
-
PV definition since versions:
- 4.6.20+
- 4.7+
fetches the cluster Infrastructure - the Infrastructure with name cluster.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/infrastructure.go#L50 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#infrastructure-v1-config-openshift-io
- Location in archive: config/infrastructure/
- See: docs/insights-archive-sample/config/infrastructure
- Id in config: clusterconfig/infrastructures
fetches the cluster Ingress - the Ingress with name cluster.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/ingress.go#L50 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#ingress-v1-config-openshift-io
- Location in archive: config/ingress.json
- See: docs/insights-archive-sample/config/ingress.json
- Id in config: clusterconfig/ingress
fetches the cluster Network - the Network with name cluster.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/network.go#L50 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#network-v1-config-openshift-io
- Location in archive: config/network/
- See: docs/insights-archive-sample/config/network
- Id in config: clusterconfig/networks
fetches the cluster OAuth - the OAuth with name cluster.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/oauth.go#L50 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#oauth-v1-config-openshift-io
- Location in archive: config/oauth/
- See: docs/insights-archive-sample/config/oauth
- Id in config: clusterconfig/oauths
collects information about pods and events from namespaces of degraded cluster operators. The collected information includes:
-
Definitions for non-running (terminated, pending) Pods
-
Previous (if container was terminated) and current logs of all related pod containers
-
Namespace events
- Location of pod definitions: config/pod/{namespace}/{pod}.json
- Location of pod container current logs: config/pod/{namespace}/logs/{pod}/{container}_current.log
- Location of pod container previous logs: config/pod/{namespace}/logs/{pod}/{container}_previous.log
- Location of events in archive: events/
- Id in config: clusterconfig/operators_pods_and_events
- Spec config for CO resources since versions:
- 4.6.16+
- 4.7+
collects all the ClusterOperators definitions and their related resources
from the operator.openshift.io
group.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/clusteroperator.go#L62 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#clusteroperatorlist-v1config-openshift-io
- Location of operators related resources: config/clusteroperator/{group}/{kind}/{name}
- Location of operators in archive: config/clusteroperator/
- Location of operators related resources in older versions: config/clusteroperator/{kind}-{name}
- See: docs/insights-archive-sample/config/clusteroperator
- Id in config: clusterconfig/operators
- Spec config for CO resources since versions:
- 4.6.16+
- 4.7+
fetches the cluster Proxy - the Proxy with name cluster.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/proxy.go#L30 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#proxy-v1-config-openshift-io
- Location in archive: config/proxy.json
- See: docs/insights-archive-sample/config/proxy.json
- Id in config: clusterconfig/proxies
fetches the ClusterVersion (including the cluster ID) with the name 'version' and its resources.
The Kubernetes api https://github.com/openshift/client-go/blob/master/config/clientset/versioned/typed/config/v1/clusterversion.go#L50 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#clusterversion-v1config-openshift-io
- Location in archive: config/version/
- See: docs/insights-archive-sample/config/version
- Location of pods in archive: config/pod/
- Location of events in archive: events/
- Location of cluster ID: config/id
- See: docs/insights-archive-sample/config/id
- Id in config: clusterconfig/version
fetches the ConfigMaps from namespace openshift-config and tries to fetch "cluster-monitoring-config" ConfigMap from openshift-monitoring namespace.
Anonymization: If the content of ConfigMap contains a parseable PEM structure (like certificate) it removes the inside of PEM blocks. For ConfigMap of type BinaryData it is encoded as standard base64. In the archive under configmaps we store name of the namespace, name of the ConfigMap and then each ConfigMap Key. For example config/configmaps/NAMESPACENAME/CONFIGMAPNAME/CONFIGMAPKEY1
The Kubernetes api https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/configmap.go#L80 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#configmaplist-v1core
-
Location in archive: config/configmaps/{namespace-name}/{configmap-name}/
-
Location in older versions: config/configmaps/{configmap-name}/
-
See: docs/insights-archive-sample/config/configmaps
-
Id in config: clusterconfig/config_maps
-
Since versions:
- 4.3.25+
- 4.4.6+
- 4.5+
-
"cluster-monitoring-config" ConfigMap data since versions:
- 4.6.22+
- 4.7+
-
"cluster-config-v1" ConfigMap since versions:
- 4.9+
-
"gateway-mode-config" data from 'openshift-network-operator' namespace since:
- 4.14.0+
collects essential information about running containers. Specifically, the age of pods, the set of running images and the container names are collected.
- Location in archive: config/running_containers.json
- Id in config: clusterconfig/container_images
- Since versions:
- 4.5.33+
- 4.6.16+
- 4.7+
collects ContainerRuntimeConfig information
The Kubernetes api:
https://github.com/openshift/machine-config-operator/blob/master/pkg/apis/machineconfiguration.openshift.io/v1/types.go#L402
Response see:
https://docs.okd.io/latest/rest_api/machine_apis/containerruntimeconfig-machineconfiguration-openshift-io-v1.html
- Location in archive: config/containerruntimeconfigs/
- Id in config: clusterconfig/container_runtime_configs
- Since versions:
- 4.6.18+
- 4.7+
collects either current or previous containers logs for pods firing one of the configured alerts.
- Location in archive: conditional/namespaces/{namespace}/pods/{pod}/containers/{container}/{logs|logs-previous}/last-{tail-length}-lines.log
- Id in config: conditional/containers_logs
- Since versions:
- 4.10+
collects CostManagementMetricsConfigs definitions.
- Location in archive: config/cost_management_metrics_configs/{name}.json
- Id in config: clusterconfig/cost_management_metrics_configs
- Since versions:
- 4.8.27+
- 4.9.13+
- 4.10+
collects metrics from the Deployment Validation Operator's metrics service. The metrics are fetched via the /metrics endpoint and filtered to only include those with a deployment_validation_operator_ prefix.
- Location in archive: config/dvo_metrics
- See: docs/insights-archive-sample/config/dvo_metrics
- Id in config: clusterconfig/dvo_metrics
- Since version:
- 4.10
Collects summarized info about the helm usage on a cluster in a generic fashion
None
config/helmchart_info.json
workloads/helmchart_info
- 4.15.0
None
collects HostSubnet information
The Kubernetes api https://github.com/openshift/client-go/blob/master/network/clientset/versioned/typed/network/v1/hostsubnet.go Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#hostsubnet-v1-network-openshift-io
- Location in archive: config/hostsubnet/
- Id in config: clusterconfig/host_subnets
- Since versions:
- 4.4.29+
- 4.5.15+
- 4.6+
creates a gathering closure which collects image streams from the provided namespace Params is of type GatherImageStreamsOfNamespaceParams:
- namespace string - namespace from which to collect image streams
API reference:
https://docs.openshift.com/container-platform/4.7/rest_api/image_apis/imagestream-image-openshift-io-v1.html#apisimage-openshift-iov1namespacesnamespaceimagestreams
- Location in archive: conditional/namespaces/{namespace}/imagestreams/{name}
- Id in config: conditional/image_streams_of_namespace
- Since versions:
- 4.9+
collects Top x InstallPlans from all openshift namespaces. Because InstallPlans have unique generated names, it groups them by namespace and the "template" for name generation from field generateName. It also collects Total number of all installplans and all non-unique installplans.
The Operators-Framework api https://github.com/operator-framework/api/blob/master/pkg/operators/v1alpha1/installplan_types.go#L26
- Location in archive: config/installplans/
- Id in config: clusterconfig/install_plans
- Since versions:
- 4.5.33+
- 4.6.16+
- 4.7+
collects maximum of 5 jaegers.jaegertracing.io custom resources installed in the cluster
- Location in archive: config/jaegertracing.io/
- Id in config: clusterconfig/jaegers
- Since versions:
- 4.10+
collects logs from kube-controller-manager pods in the openshift-kube-controller-manager namespace with following substrings:
- "Internal error occurred: error resolving resource",
- "syncing garbage collector with updated resources from discovery",
The Kubernetes API:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go#L48
Response see:
https://docs.openshift.com/container-platform/4.10/rest_api/workloads_apis/pod-v1.html#apiv1namespacesnamespacepodsnamelog
- Location in archive: config/pod/openshift-kube-controller-manager/logs/{pod-name}/errors.log
- Since versions:
- 4.9.27
- 4.10.6
- 4.11+
creates a gathering closure which collects logs from pods in the provided namespace Params is of type GatherLogsOfNamespaceParams:
- namespace string - namespace from which to collect logs
- tail_lines int64 - a number of log lines to keep for each container
The Kubernetes API:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go#L48
Response see:
https://docs.openshift.com/container-platform/4.6/rest_api/workloads_apis/pod-core-v1.html#apiv1namespacesnamespacepodsnamelog
- Location in archive: conditional/namespaces/{namespace}/pods/{pod_name}/containers/{container_name}/logs/last-{n}-lines.log
- Id in config: conditional/logs_of_namespace
- Since versions:
- 4.9+
Collects Machine
information.
- https://github.com/openshift/api/blob/master/machine/v1beta1/types_machine.go
- https://docs.openshift.com/container-platform/4.12/rest_api/machine_apis/machine-machine-openshift-io-v1beta1.html
- docs/insights-archive-sample/config/machines/openshift-machine-api/
config/machines/
clusterconfig/machines
- 4.13.0
None
None
collects MachineAutoscalers definition
The Kubernetes api:
https://github.com/openshift/cluster-autoscaler-operator/blob/master/pkg/apis/autoscaling/v1beta1/machineautoscaler_types.go
Response see:
https://docs.openshift.com/container-platform/4.7/rest_api/autoscale_apis/machineautoscaler-autoscaling-openshift-io-v1beta1.html#machineautoscaler-autoscaling-openshift-io-v1beta1
- Location in archive: config/machineautoscalers/{namespace}/{machineautoscaler-name}.json
- Id in config: clusterconfig/machine_autoscalers
- Since versions:
- 4.8+
collects MachineConfigPool information
The Kubernetes api:
https://github.com/openshift/machine-config-operator/blob/master/pkg/apis/machineconfiguration.openshift.io/v1/types.go#L197
Response see:
https://docs.okd.io/latest/rest_api/machine_apis/machineconfigpool-machineconfiguration-openshift-io-v1.html
- Location in archive: config/machineconfigpools/
- Id in config: clusterconfig/machine_config_pools
- Since versions:
- 4.5.33+
- 4.6+
collects MachineConfigs definitions. Following data is intentionally removed from the definitions:
spec.config.storage.files
spec.config.passwd.users
- Location in archive: config/machineconfigs/{name}.json
- Id in config: clusterconfig/machine_configs
- Since versions:
- 4.8.5+
- 4.9+
collects MachineHealthCheck information
The Kubernetes api:
https://github.com/openshift/api/blob/master/machine/v1beta1/types_machinehealthcheck.go
Response see:
https://docs.openshift.com/container-platform/4.3/rest_api/index.html#machinehealthcheck-v1beta1-machine-openshift-io
- Location in archive: config/machinehealthchecks
- Id in config: clusterconfig/machine_healthchecks
- Since versions:
- 4.8+
collects MachineSet information
The Kubernetes api:
https://github.com/openshift/api/blob/master/machine/v1beta1/types_machineset.go
Response see:
https://docs.openshift.com/container-platform/4.3/rest_api/index.html#machineset-v1beta1-machine-openshift-io
- Location in archive: machinesets/
- Id in config: clusterconfig/machine_sets
- Since versions:
- 4.4.29+
- 4.5.15+
- 4.6+
Collects Persistent Volumes from openshift-monitoring namespace which matches with ConfigMap configuration yaml
- https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/configmap.go
- https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/persistentvolume.go
- docs/insights-archive-sample/config/persistentvolumes/monitoring-persistent-volume.json
config/persistentvolumes/{persistent_volume_name}.json
clusterconfig/monitoring_persistent_volumes
- 4.14
- 4.13
None
Collects cluster Federated Monitoring metrics.
The GET REST query to URL /federate Gathered metrics:
virt_platform
etcd_object_counts
cluster_installer
vsphere_node_hw_version_total
- namespace CPU and memory usage
console_helm_installs_total
console_helm_upgrades_total
console_helm_uninstalls_total
- followed by at most 1000 lines of
ALERTS
metric
None
- docs/insights-archive-sample/config/metrics
config/metrics
clusterconfig/metrics
- 4.3.0
None
etcd_object_counts
introduced in version 4.3+cluster_installer
introduced in version 4.3+ALERTS
introduced in version 4.3+namespace:container_cpu_usage_seconds_total:sum_rate
introduced in version 4.5+namespace:container_memory_usage_bytes:sum
introduced in version 4.5+virt_platform metric
introduced in version 4.6.34+, 4.7.16+, 4.8+vsphere_node_hw_version_total
introduced in version 4.7.11+, 4.8+console_helm_installs_total
introduced in version 4.11+console_helm_upgrades_total
introduced in version 4.12+console_helm_uninstalls_total
introduced in version 4.12+openshift_apps_deploymentconfigs_strategy_total
introduced in version 4.13+
collects MutatingWebhookConfiguration resources Relevant OpenShift API docs:
- Location in archive: config/mutatingwebhookconfigurations
- Id in config: clusterconfig/mutating_webhook_configurations
- Since versions:
- 4.7.40+
- 4.8.24+
- 4.9.11+
- 4.10+
gathers namespaces with overlapping UID ranges
The Kubernetes api https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/namespace.go Response is an array of arrays of namespaces with overlapping UIDs. Each namespace is represented by its name and the UID range value from the "openshift.io/sa.scc.uid-range" annotation
- Location in archive: config/namespaces_with_overlapping_uids
- Id in config: clusterconfig/overlapping_namespace_uids
- Since versions:
- 4.8.41
- 4.9.31
- 4.10.12
- 4.11+
collects NetNamespaces networking information
The Kubernetes api https://github.com/openshift/client-go/blob/master/network/clientset/versioned/typed/network/v1/netnamespace.go Response is an array of netNamespaces. Netnamespace contains Name, EgressIPs and NetID attributes.
- Location in archive: config/netnamespaces
- Id in config: clusterconfig/netnamespaces
- Since versions:
- 4.6.20+
- 4.7+
fetches control plane node logs from journal unit
Response see https://docs.openshift.com/container-platform/4.9/rest_api/node_apis/node-core-v1.html#apiv1nodesnameproxypath
- Location in archive: config/nodes/logs/{hostname}.log
- See: docs/insights-archive-sample/config/nodes/logs
- Id in config: clusterconfig/node_logs
- Since versions:
- 4.10+
collects all Nodes.
The Kubernetes api https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/node.go#L78 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#nodelist-v1core
- Location in archive: config/node/
- Id in config: clusterconfig/nodes
collects list of installed OLM operators. Each OLM operator (in the list) contains following data:
- OLM operator name
- OLM operator version
- related ClusterServiceVersion conditions
- See: docs/insights-archive-sample/config/olm_operators
- Location of in archive: config/olm_operators
- Id in config: clusterconfig/olm_operators
- Since versions:
- 4.7+
collects logs from openshift-apiserver-operator with following substrings:
- "the server has received too many requests and has asked us"
- "because serving request timed out and response had been started"
The Kubernetes API:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go#L48
Response see:
https://docs.openshift.com/container-platform/4.6/rest_api/workloads_apis/pod-core-v1.html#apiv1namespacesnamespacepodsnamelog
- Location in archive: config/pod/{namespace-name}/logs/{pod-name}/errors.log
- Id in config: clusterconfig/openshift_apiserver_operator_logs
collects logs from pods in openshift-authentication namespace with following substring:
- "AuthenticationError: invalid resource name"
The Kubernetes API:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go#L48
Response see:
https://docs.openshift.com/container-platform/4.6/rest_api/workloads_apis/pod-core-v1.html#apiv1namespacesnamespacepodsnamelog
- Location in archive: config/pod/openshift-authentication/logs/{pod-name}/errors.log
- Id in config: clusterconfig/openshift_authentication_logs
- Since versions:
- 4.7+
collects logging.openshift.io
resources
from Openshift Logging Stack.
API Reference:
https://github.com/openshift/cluster-logging-operator/blob/master/pkg/apis/logging/v1/clusterlogging_types.go
- Location in archive: config/logging/{namespace}/{name}.json
- Id in config: clusterconfig/openshift_logging
- Since versions:
- 4.9+
collects warning ("abnormal") events from "openshift-machine-api" namespace
- Location of events in archive: events/
- Id in config: clusterconfig/openshift_machine_api_events
- Since versions:
- 4.12+
collects logs from sdn-controller pod in openshift-sdn namespace with following substrings:
- "Node %s is not Ready": A node has been set offline for egress IPs because it is reported not ready at API
- "Node %s may be offline... retrying": An egress node has failed the egress IP health check once, so it has big chances to be marked as offline soon or, at the very least, there has been a connectivity glitch.
- "Node %s is offline": An egress node has failed enough probes to have been marked offline for egress IPs. If it has egress CIDRs assigned, its egress IPs have been moved to other nodes. Indicates issues at either the node or the network between the master and the node.
- "Node %s is back online": This indicates that a node has recovered from the condition described at the previous message, by starting succeeding the egress IP health checks. Useful just in case that previous “Node %s is offline” messages are lost, so that we have a clue that there was failure previously.
The Kubernetes API:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go#L48
Response see:
https://docs.openshift.com/container-platform/4.6/rest_api/workloads_apis/pod-core-v1.html#apiv1namespacesnamespacepodsnamelog
- Location in archive: config/pod/openshift-sdn/logs/{pod-name}/errors.log
- Id in config: clusterconfig/openshift_sdn_controller_logs
- Since versions:
- 4.6.21+
- 4.7+
collects logs from pods in openshift-sdn namespace with following substrings:
- "Got OnEndpointsUpdate for unknown Endpoints",
- "Got OnEndpointsDelete for unknown Endpoints",
- "Unable to update proxy firewall for policy",
- "Failed to update proxy firewall for policy",
The Kubernetes API:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go#L48
Response see:
https://docs.openshift.com/container-platform/4.6/rest_api/workloads_apis/pod-core-v1.html#apiv1namespacesnamespacepodsnamelog
- Location in archive: config/pod/openshift-sdn/logs/{pod-name}/errors.log
- Id in config: clusterconfig/openshift_sdn_logs
- Since versions:
- 4.6.19+
- 4.7+
collects a summary of failed PodNetworkConnectivityChecks from last 24 hours. Time of the most recently failed check with each reason and message is recorded.
Resource API: podnetworkconnectivitychecks.controlplane.operator.openshift.io/v1alpha1 Docs for relevant types: https://pkg.go.dev/github.com/openshift/api/operatorcontrolplane/v1alpha1
- Location in archive: config/podnetworkconnectivitychecks.json
- Id in config: clusterconfig/pod_network_connectivity_checks
- Since versions:
- 4.8+
collects pod definition from pods that are firing one of the configured alerts.
- Location in archive: conditional/namespaces/{namespace}/pods/{pod}/{pod}.json
- Id in config: conditional/pod_definition
- Since versions:
- 4.11+
gathers the cluster's PodDisruptionBudgets.
The Kubernetes api https://github.com/kubernetes/client-go/blob/v11.0.0/kubernetes/typed/policy/v1beta1/poddisruptionbudget.go#L80 Response see https://docs.okd.io/latest/rest_api/policy_apis/poddisruptionbudget-policy-v1beta1.html
- Location in archive: config/pdbs/
- See: docs/insights-archive-sample/config/pdbs
- Id in config: clusterconfig/pdbs
- Since versions:
- 4.4.30+
- 4.5.34+
- 4.6+
collects selected security context constraints and cluster role bindings from clusters running a SAP payload.
Conditional data: This data is collected only if the "installers.datahub.sap.com" resource is found in the cluster.
Relevant OpenShift API docs:
- https://pkg.go.dev/github.com/openshift/client-go/authorization/clientset/versioned/typed/authorization/v1
- https://pkg.go.dev/github.com/openshift/client-go/security/clientset/versioned/typed/security/v1
- Location in archive: config/securitycontentconstraint/, config/clusterrolebinding/
- Id in config: clusterconfig/sap_config
- Since versions:
- 4.6.20+
- 4.7+
collects datahubs.installers.datahub.sap.com
resources from SAP/SDI clusters.
- Location in archive: customresources/installers.datahub.sap.com/datahubs/{namespace}/{name}.json
- Id in config: clusterconfig/sap_datahubs
- Since versions:
- 4.7.5+
- 4.8+
collects information about pods running in SAP/SDI namespaces. Only pods with a failing status are collected. Failed pods belonging to a job that has later succeeded are ignored.
Conditional data: This data is collected only if the "installers.datahub.sap.com" resource is found in the cluster.
Relevant Kubernetes API docs:
- https://pkg.go.dev/k8s.io/client-go/kubernetes/typed/core/v1
- https://pkg.go.dev/k8s.io/client-go/kubernetes/typed/batch/v1
- https://pkg.go.dev/k8s.io/client-go/dynamic
- Location in archive: config/pod/{namespace}/{pod-name}.json
- Id in config: clusterconfig/sap_pods
- Since versions:
- 4.6.24+
- 4.7.5+
- 4.8+
collects logs from SAP vsystem-iptables containers including one from license management pods with the following substring:
- "can't initialize iptables table",
Conditional data: This data is collected only if the "installers.datahub.sap.com" resource is found in the cluster.
The Kubernetes API:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go#L48
Response see:
https://docs.openshift.com/container-platform/4.6/rest_api/workloads_apis/pod-core-v1.html#apiv1namespacesnamespacepodsnamelog
- Location in archive: config/pod/{namespace}/logs/{pod-name}/errors.log
- Id in config: clusterconfig/sap_license_management_logs
- Since versions:
- 4.6.25+
- 4.7.5+
- 4.8+
collects logs from pods in openshift-kube-scheduler-namespace from app openshift-kube-scheduler with following substring:
- "PodTopologySpread"
The Kubernetes API:
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go#L48
Response see:
https://docs.openshift.com/container-platform/4.6/rest_api/workloads_apis/pod-core-v1.html#apiv1namespacesnamespacepodsnamelog
- Location in archive: config/pod/openshift-kube-scheduler/logs/{pod-name}/messages.log
- Id in config: clusterconfig/scheduler_logs
- Since versions:
- 4.10+
collects information about schedulers
The API:
https://docs.openshift.com/container-platform/4.9/rest_api/config_apis/scheduler-config-openshift-io-v1.html
- Location in archive: config/schedulers/cluster.json
- Since versions:
- 4.10+
collects ServiceAccount stats from kubernetes default and namespaces starting with openshift.
The Kubernetes api https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/serviceaccount.go#L83 Response see https://docs.openshift.com/container-platform/4.3/rest_api/index.html#serviceaccount-v1-core
- Location of serviceaccounts in archive: config/serviceaccounts
- See: docs/insights-archive-sample/config/serviceaccounts
- Id in config: clusterconfig/service_accounts
- Since versions:
- 4.5.34+
- 4.6.20+
- 4.7+
gathers the alerts that have been silenced.
- Location in archive: config/silenced_alerts
- See: docs/insights-archive-sample/config/silenced_alerts
- Id in config: clusterconfig/silenced_alerts
- Since version:
- 4.10+
Collects storageclusters.ocs.openshift.io
resources
from Openshift Data Foundation Stack.
https://github.com/red-hat-storage/ocs-operator/blob/main/api/v1/storagecluster_types.go
docs/insights-archive-sample/config/storage/openshift-storage/storageclusters/ocs-storagecluster.json
Version | Path |
---|---|
<= 4.12 | config/storage/{namespace}/{name}.json |
4.13+ | config/storage/{namespace}/storageclusters/{name}.json |
clusterconfig/storage_cluster
- 4.11
gathers anonymized support secret if there is any
- Location in archive: config/secrets/openshift-config/support/data.json (can be omitted if the secret doesn't exist)
- Id in config: support_secret
- Since version:
- 4.11+
gathers the Prometheus TSDB status.
- Location in archive: config/tsdb
- See: docs/insights-archive-sample/config/metrics
- Id in config: clusterconfig/tsdb_status
- Since version:
- 4.10+
collects ValidatingWebhookConfiguration resources Relevant OpenShift API docs:
- Location in archive: config/validatingwebhookconfigurations
- Id in config: clusterconfig/validating_webhook_configurations
- Since versions:
- 4.7.40+
- 4.8.24+
- 4.9.11+
- 4.10+
collects summarized info about the workloads on a cluster in a generic fashion
- Location in archive: config/workload_info
- Id in config: workloads/workload_info
- Since versions:
- 4.8+