github.com/netdata/go.d.plugin@v0.58.1/modules/k8s_kubelet/charts.go (about)

     1  // SPDX-License-Identifier: GPL-3.0-or-later
     2  
     3  package k8s_kubelet
     4  
     5  import "github.com/netdata/go.d.plugin/agent/module"
     6  
     7  type (
     8  	// Charts is an alias for module.Charts
     9  	Charts = module.Charts
    10  	// Chart is an alias for module.Chart
    11  	Chart = module.Chart
    12  	// Dims is an alias for module.Dims
    13  	Dims = module.Dims
    14  	// Dim is an alias for module.Dim
    15  	Dim = module.Dim
    16  )
    17  
    18  var charts = Charts{
    19  	{
    20  		ID:    "apiserver_audit_requests_rejected_total",
    21  		Title: "API Server Audit Requests",
    22  		Units: "requests/s",
    23  		Fam:   "api server",
    24  		Ctx:   "k8s_kubelet.apiserver_audit_requests_rejected",
    25  		Dims: Dims{
    26  			{ID: "apiserver_audit_requests_rejected_total", Name: "rejected", Algo: module.Incremental},
    27  		},
    28  	},
    29  	{
    30  		ID:    "apiserver_storage_data_key_generation_failures_total",
    31  		Title: "API Server Failed Data Encryption Key(DEK) Generation Operations",
    32  		Units: "events/s",
    33  		Fam:   "api server",
    34  		Ctx:   "k8s_kubelet.apiserver_storage_data_key_generation_failures",
    35  		Dims: Dims{
    36  			{ID: "apiserver_storage_data_key_generation_failures_total", Name: "failures", Algo: module.Incremental},
    37  		},
    38  	},
    39  	{
    40  		ID:    "apiserver_storage_data_key_generation_latencies",
    41  		Title: "API Server Latencies Of Data Encryption Key(DEK) Generation Operations",
    42  		Units: "observes/s",
    43  		Fam:   "api server",
    44  		Ctx:   "k8s_kubelet.apiserver_storage_data_key_generation_latencies",
    45  		Type:  module.Stacked,
    46  		Dims: Dims{
    47  			{ID: "apiserver_storage_data_key_generation_bucket_5", Name: "5 µs", Algo: module.Incremental},
    48  			{ID: "apiserver_storage_data_key_generation_bucket_10", Name: "10 µs", Algo: module.Incremental},
    49  			{ID: "apiserver_storage_data_key_generation_bucket_20", Name: "20 µs", Algo: module.Incremental},
    50  			{ID: "apiserver_storage_data_key_generation_bucket_40", Name: "40 µs", Algo: module.Incremental},
    51  			{ID: "apiserver_storage_data_key_generation_bucket_80", Name: "80 µs", Algo: module.Incremental},
    52  			{ID: "apiserver_storage_data_key_generation_bucket_160", Name: "160 µs", Algo: module.Incremental},
    53  			{ID: "apiserver_storage_data_key_generation_bucket_320", Name: "320 µs", Algo: module.Incremental},
    54  			{ID: "apiserver_storage_data_key_generation_bucket_640", Name: "640 µs", Algo: module.Incremental},
    55  			{ID: "apiserver_storage_data_key_generation_bucket_1280", Name: "1280 µs", Algo: module.Incremental},
    56  			{ID: "apiserver_storage_data_key_generation_bucket_2560", Name: "2560 µs", Algo: module.Incremental},
    57  			{ID: "apiserver_storage_data_key_generation_bucket_5120", Name: "5120 µs", Algo: module.Incremental},
    58  			{ID: "apiserver_storage_data_key_generation_bucket_10240", Name: "10240 µs", Algo: module.Incremental},
    59  			{ID: "apiserver_storage_data_key_generation_bucket_20480", Name: "20480 µs", Algo: module.Incremental},
    60  			{ID: "apiserver_storage_data_key_generation_bucket_40960", Name: "40960 µs", Algo: module.Incremental},
    61  			{ID: "apiserver_storage_data_key_generation_bucket_+Inf", Name: "+Inf", Algo: module.Incremental},
    62  		},
    63  	},
    64  	{
    65  		ID:    "apiserver_storage_data_key_generation_latencies_percentage",
    66  		Title: "API Server Latencies Of Data Encryption Key(DEK) Generation Operations Percentage",
    67  		Units: "%",
    68  		Fam:   "api server",
    69  		Ctx:   "k8s_kubelet.apiserver_storage_data_key_generation_latencies_percent",
    70  		Type:  module.Stacked,
    71  		Dims: Dims{
    72  			{ID: "apiserver_storage_data_key_generation_bucket_5", Name: "5 µs", Algo: module.PercentOfIncremental},
    73  			{ID: "apiserver_storage_data_key_generation_bucket_10", Name: "10 µs", Algo: module.PercentOfIncremental},
    74  			{ID: "apiserver_storage_data_key_generation_bucket_20", Name: "20 µs", Algo: module.PercentOfIncremental},
    75  			{ID: "apiserver_storage_data_key_generation_bucket_40", Name: "40 µs", Algo: module.PercentOfIncremental},
    76  			{ID: "apiserver_storage_data_key_generation_bucket_80", Name: "80 µs", Algo: module.PercentOfIncremental},
    77  			{ID: "apiserver_storage_data_key_generation_bucket_160", Name: "160 µs", Algo: module.PercentOfIncremental},
    78  			{ID: "apiserver_storage_data_key_generation_bucket_320", Name: "320 µs", Algo: module.PercentOfIncremental},
    79  			{ID: "apiserver_storage_data_key_generation_bucket_640", Name: "640 µs", Algo: module.PercentOfIncremental},
    80  			{ID: "apiserver_storage_data_key_generation_bucket_1280", Name: "1280 µs", Algo: module.PercentOfIncremental},
    81  			{ID: "apiserver_storage_data_key_generation_bucket_2560", Name: "2560 µs", Algo: module.PercentOfIncremental},
    82  			{ID: "apiserver_storage_data_key_generation_bucket_5120", Name: "5120 µs", Algo: module.PercentOfIncremental},
    83  			{ID: "apiserver_storage_data_key_generation_bucket_10240", Name: "10240 µs", Algo: module.PercentOfIncremental},
    84  			{ID: "apiserver_storage_data_key_generation_bucket_20480", Name: "20480 µs", Algo: module.PercentOfIncremental},
    85  			{ID: "apiserver_storage_data_key_generation_bucket_40960", Name: "40960 µs", Algo: module.PercentOfIncremental},
    86  			{ID: "apiserver_storage_data_key_generation_bucket_+Inf", Name: "+Inf", Algo: module.PercentOfIncremental},
    87  		},
    88  	},
    89  	{
    90  		ID:    "apiserver_storage_envelope_transformation_cache_misses_total",
    91  		Title: "API Server Storage Envelope Transformation Cache Misses",
    92  		Units: "events/s",
    93  		Fam:   "api server",
    94  		Ctx:   "k8s_kubelet.apiserver_storage_envelope_transformation_cache_misses",
    95  		Dims: Dims{
    96  			{ID: "apiserver_storage_envelope_transformation_cache_misses_total", Name: "cache misses", Algo: module.Incremental},
    97  		},
    98  	},
    99  	{
   100  		ID:    "kubelet_containers_running",
   101  		Title: "Number Of Containers Currently Running",
   102  		Units: "running containers",
   103  		Fam:   "containers",
   104  		Ctx:   "k8s_kubelet.kubelet_containers_running",
   105  		Dims: Dims{
   106  			{ID: "kubelet_running_container", Name: "total"},
   107  		},
   108  	},
   109  	{
   110  		ID:    "kubelet_pods_running",
   111  		Title: "Number Of Pods Currently Running",
   112  		Units: "running pods",
   113  		Fam:   "pods",
   114  		Ctx:   "k8s_kubelet.kubelet_pods_running",
   115  		Dims: Dims{
   116  			{ID: "kubelet_running_pod", Name: "total"},
   117  		},
   118  	},
   119  	{
   120  		ID:    "kubelet_pods_log_filesystem_used_bytes",
   121  		Title: "Bytes Used By The Pod Logs On The Filesystem",
   122  		Units: "B",
   123  		Fam:   "pods",
   124  		Ctx:   "k8s_kubelet.kubelet_pods_log_filesystem_used_bytes",
   125  		Type:  module.Stacked,
   126  	},
   127  	{
   128  		ID:    "kubelet_runtime_operations",
   129  		Title: "Runtime Operations By Type",
   130  		Units: "operations/s",
   131  		Fam:   "operations",
   132  		Ctx:   "k8s_kubelet.kubelet_runtime_operations",
   133  		Type:  module.Stacked,
   134  	},
   135  	{
   136  		ID:    "kubelet_runtime_operations_errors",
   137  		Title: "Runtime Operations Errors By Type",
   138  		Units: "errors/s",
   139  		Fam:   "operations",
   140  		Ctx:   "k8s_kubelet.kubelet_runtime_operations_errors",
   141  		Type:  module.Stacked,
   142  	},
   143  	{
   144  		ID:    "kubelet_docker_operations",
   145  		Title: "Docker Operations By Type",
   146  		Units: "operations/s",
   147  		Fam:   "operations",
   148  		Ctx:   "k8s_kubelet.kubelet_docker_operations",
   149  		Type:  module.Stacked,
   150  	},
   151  	{
   152  		ID:    "kubelet_docker_operations_errors",
   153  		Title: "Docker Operations Errors By Type",
   154  		Units: "errors/s",
   155  		Fam:   "operations",
   156  		Ctx:   "k8s_kubelet.kubelet_docker_operations_errors",
   157  		Type:  module.Stacked,
   158  	},
   159  	{
   160  		ID:    "kubelet_node_config_error",
   161  		Title: "Node Configuration-Related Error",
   162  		Units: "bool",
   163  		Fam:   "config error",
   164  		Ctx:   "k8s_kubelet.kubelet_node_config_error",
   165  		Dims: Dims{
   166  			{ID: "kubelet_node_config_error", Name: "experiencing_error"},
   167  		},
   168  	},
   169  	{
   170  		ID:    "kubelet_pleg_relist_interval_microseconds",
   171  		Title: "PLEG Relisting Interval Summary",
   172  		Units: "microseconds",
   173  		Fam:   "pleg relisting",
   174  		Ctx:   "k8s_kubelet.kubelet_pleg_relist_interval_microseconds",
   175  		Type:  module.Stacked,
   176  		Dims: Dims{
   177  			{ID: "kubelet_pleg_relist_interval_05", Name: "0.5"},
   178  			{ID: "kubelet_pleg_relist_interval_09", Name: "0.9"},
   179  			{ID: "kubelet_pleg_relist_interval_099", Name: "0.99"},
   180  		},
   181  	},
   182  	{
   183  		ID:    "kubelet_pleg_relist_latency_microseconds",
   184  		Title: "PLEG Relisting Latency Summary",
   185  		Units: "microseconds",
   186  		Fam:   "pleg relisting",
   187  		Ctx:   "k8s_kubelet.kubelet_pleg_relist_latency_microseconds",
   188  		Type:  module.Stacked,
   189  		Dims: Dims{
   190  			{ID: "kubelet_pleg_relist_latency_05", Name: "0.5"},
   191  			{ID: "kubelet_pleg_relist_latency_09", Name: "0.9"},
   192  			{ID: "kubelet_pleg_relist_latency_099", Name: "0.99"},
   193  		},
   194  	},
   195  	{
   196  		ID:    "kubelet_token_requests",
   197  		Title: "Token() Requests To The Alternate Token Source",
   198  		Units: "token requests/s",
   199  		Fam:   "token",
   200  		Ctx:   "k8s_kubelet.kubelet_token_requests",
   201  		Dims: Dims{
   202  			{ID: "token_count", Name: "total", Algo: module.Incremental},
   203  			{ID: "token_fail_count", Name: "failed", Algo: module.Incremental},
   204  		},
   205  	},
   206  	{
   207  		ID:    "rest_client_requests_by_code",
   208  		Title: "HTTP Requests By Status Code",
   209  		Units: "requests/s",
   210  		Fam:   "rest client",
   211  		Ctx:   "k8s_kubelet.rest_client_requests_by_code",
   212  		Type:  module.Stacked,
   213  	},
   214  	{
   215  		ID:    "rest_client_requests_by_method",
   216  		Title: "HTTP Requests By Status Method",
   217  		Units: "requests/s",
   218  		Fam:   "rest client",
   219  		Ctx:   "k8s_kubelet.rest_client_requests_by_method",
   220  		Type:  module.Stacked,
   221  	},
   222  }
   223  
   224  func newVolumeManagerChart(name string) *Chart {
   225  	return &Chart{
   226  		ID:    "volume_manager_total_volumes_" + name,
   227  		Title: "Volume Manager State Of The World, Plugin " + name,
   228  		Units: "state",
   229  		Fam:   "volume manager",
   230  		Ctx:   "k8s_kubelet.volume_manager_total_volumes",
   231  		Dims: Dims{
   232  			{ID: "volume_manager_plugin_" + name + "_state_actual", Name: "actual"},
   233  			{ID: "volume_manager_plugin_" + name + "_state_desired", Name: "desired"},
   234  		},
   235  	}
   236  }