summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthiagoftsm <thiagoftsm@gmail.com>2024-03-29 20:06:17 +0000
committerGitHub <noreply@github.com>2024-03-29 20:06:17 +0000
commit39bb77bfed67330bc7a868d7442a59d535646982 (patch)
tree0d68d4703b72f002c6440379d031c09e7a087d6c
parent609c235fc42e7bb543b344dabcb83815c85bc5dc (diff)
Add label for cgroup (#17156)
-rw-r--r--src/collectors/ebpf.plugin/ebpf.c11
-rw-r--r--src/collectors/ebpf.plugin/ebpf_cachestat.c17
-rw-r--r--src/collectors/ebpf.plugin/ebpf_cgroup.c2
-rw-r--r--src/collectors/ebpf.plugin/ebpf_dcstat.c17
-rw-r--r--src/collectors/ebpf.plugin/ebpf_fd.c17
-rw-r--r--src/collectors/ebpf.plugin/ebpf_oomkill.c2
-rw-r--r--src/collectors/ebpf.plugin/ebpf_process.c21
-rw-r--r--src/collectors/ebpf.plugin/ebpf_shm.c17
-rw-r--r--src/collectors/ebpf.plugin/ebpf_socket.c37
-rw-r--r--src/collectors/ebpf.plugin/ebpf_swap.c9
-rw-r--r--src/collectors/ebpf.plugin/ebpf_vfs.c53
11 files changed, 153 insertions, 50 deletions
diff --git a/src/collectors/ebpf.plugin/ebpf.c b/src/collectors/ebpf.plugin/ebpf.c
index 5cbcd19abf..675ba68328 100644
--- a/src/collectors/ebpf.plugin/ebpf.c
+++ b/src/collectors/ebpf.plugin/ebpf.c
@@ -943,6 +943,13 @@ void ebpf_stop_threads(int sig)
}
pthread_mutex_unlock(&ebpf_exit_cleanup);
+ for (i = 0; ebpf_modules[i].info.thread_name != NULL; i++) {
+ if (ebpf_threads[i].thread)
+ netdata_thread_join(*ebpf_threads[i].thread, NULL);
+ }
+
+ ebpf_plugin_exit = true;
+
pthread_mutex_lock(&mutex_cgroup_shm);
netdata_thread_cancel(*cgroup_integration_thread.thread);
#ifdef NETDATA_DEV_MODE
@@ -950,8 +957,6 @@ void ebpf_stop_threads(int sig)
#endif
pthread_mutex_unlock(&mutex_cgroup_shm);
- ebpf_plugin_exit = true;
-
ebpf_check_before2go();
pthread_mutex_lock(&ebpf_exit_cleanup);
@@ -4022,7 +4027,7 @@ int main(int argc, char **argv)
st->thread = mallocz(sizeof(netdata_thread_t));
em->enabled = NETDATA_THREAD_EBPF_RUNNING;
em->lifetime = EBPF_NON_FUNCTION_LIFE_TIME;
- netdata_thread_create(st->thread, st->name, NETDATA_THREAD_OPTION_DEFAULT, st->start_routine, em);
+ netdata_thread_create(st->thread, st->name, NETDATA_THREAD_OPTION_JOINABLE, st->start_routine, em);
} else {
em->lifetime = EBPF_DEFAULT_LIFETIME;
}
diff --git a/src/collectors/ebpf.plugin/ebpf_cachestat.c b/src/collectors/ebpf.plugin/ebpf_cachestat.c
index 45e09766f9..91d9a28dbe 100644
--- a/src/collectors/ebpf.plugin/ebpf_cachestat.c
+++ b/src/collectors/ebpf.plugin/ebpf_cachestat.c
@@ -895,7 +895,7 @@ void ebpf_cachestat_create_apps_charts(struct ebpf_module *em, void *ptr)
20260,
update_every,
NETDATA_EBPF_MODULE_NAME_CACHESTAT);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION ratio '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_ABSOLUTE_IDX]);
@@ -911,7 +911,7 @@ void ebpf_cachestat_create_apps_charts(struct ebpf_module *em, void *ptr)
20261,
update_every,
NETDATA_EBPF_MODULE_NAME_CACHESTAT);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION pages '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -926,7 +926,7 @@ void ebpf_cachestat_create_apps_charts(struct ebpf_module *em, void *ptr)
20262,
update_every,
NETDATA_EBPF_MODULE_NAME_CACHESTAT);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION hits '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_ABSOLUTE_IDX]);
@@ -941,7 +941,7 @@ void ebpf_cachestat_create_apps_charts(struct ebpf_module *em, void *ptr)
20263,
update_every,
NETDATA_EBPF_MODULE_NAME_CACHESTAT);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION misses '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_ABSOLUTE_IDX]);
w->charts_created |= 1<<EBPF_MODULE_CACHESTAT_IDX;
@@ -1259,6 +1259,7 @@ static void ebpf_send_specific_cachestat_data(char *type, netdata_publish_caches
*/
static void ebpf_create_specific_cachestat_charts(char *type, int update_every)
{
+ char *label = (!strncmp(type, "cgroup_", 7)) ? &type[7] : type;
ebpf_create_chart(type, NETDATA_CACHESTAT_HIT_RATIO_CHART,
"Hit ratio",
EBPF_COMMON_DIMENSION_PERCENTAGE, NETDATA_CACHESTAT_SUBMENU,
@@ -1266,6 +1267,8 @@ static void ebpf_create_specific_cachestat_charts(char *type, int update_every)
NETDATA_EBPF_CHART_TYPE_LINE, NETDATA_CHART_PRIO_CGROUPS_CONTAINERS + 5200,
ebpf_create_global_dimension,
cachestat_counter_publish_aggregated, 1, update_every, NETDATA_EBPF_MODULE_NAME_CACHESTAT);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_CACHESTAT_DIRTY_CHART,
"Number of dirty pages",
@@ -1275,6 +1278,8 @@ static void ebpf_create_specific_cachestat_charts(char *type, int update_every)
ebpf_create_global_dimension,
&cachestat_counter_publish_aggregated[NETDATA_CACHESTAT_IDX_DIRTY], 1,
update_every, NETDATA_EBPF_MODULE_NAME_CACHESTAT);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_CACHESTAT_HIT_CHART,
"Number of accessed files",
@@ -1284,6 +1289,8 @@ static void ebpf_create_specific_cachestat_charts(char *type, int update_every)
ebpf_create_global_dimension,
&cachestat_counter_publish_aggregated[NETDATA_CACHESTAT_IDX_HIT], 1,
update_every, NETDATA_EBPF_MODULE_NAME_CACHESTAT);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_CACHESTAT_MISSES_CHART,
"Files out of page cache",
@@ -1293,6 +1300,8 @@ static void ebpf_create_specific_cachestat_charts(char *type, int update_every)
ebpf_create_global_dimension,
&cachestat_counter_publish_aggregated[NETDATA_CACHESTAT_IDX_MISS], 1,
update_every, NETDATA_EBPF_MODULE_NAME_CACHESTAT);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
}
/**
diff --git a/src/collectors/ebpf.plugin/ebpf_cgroup.c b/src/collectors/ebpf.plugin/ebpf_cgroup.c
index 881a00ddf4..7dbb52a2cd 100644
--- a/src/collectors/ebpf.plugin/ebpf_cgroup.c
+++ b/src/collectors/ebpf.plugin/ebpf_cgroup.c
@@ -340,7 +340,7 @@ void ebpf_create_charts_on_systemd(ebpf_systemd_args_t *chart)
chart->order,
chart->update_every,
chart->module);
- ebpf_create_chart_labels("service_name", chart->id, 0);
+ ebpf_create_chart_labels("service_name", chart->id, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION %s '' %s 1 1\n", chart->dimension, chart->algorithm);
}
diff --git a/src/collectors/ebpf.plugin/ebpf_dcstat.c b/src/collectors/ebpf.plugin/ebpf_dcstat.c
index 7fa9ca1f0b..8e458eb528 100644
--- a/src/collectors/ebpf.plugin/ebpf_dcstat.c
+++ b/src/collectors/ebpf.plugin/ebpf_dcstat.c
@@ -696,7 +696,7 @@ void ebpf_dcstat_create_apps_charts(struct ebpf_module *em, void *ptr)
20265,
update_every,
NETDATA_EBPF_MODULE_NAME_DCSTAT);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION ratio '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_ABSOLUTE_IDX]);
@@ -711,7 +711,7 @@ void ebpf_dcstat_create_apps_charts(struct ebpf_module *em, void *ptr)
20266,
update_every,
NETDATA_EBPF_MODULE_NAME_DCSTAT);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION files '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_ABSOLUTE_IDX]);
@@ -726,7 +726,7 @@ void ebpf_dcstat_create_apps_charts(struct ebpf_module *em, void *ptr)
20267,
update_every,
NETDATA_EBPF_MODULE_NAME_DCSTAT);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION files '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_ABSOLUTE_IDX]);
@@ -741,7 +741,7 @@ void ebpf_dcstat_create_apps_charts(struct ebpf_module *em, void *ptr)
20268,
update_every,
NETDATA_EBPF_MODULE_NAME_DCSTAT);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION files '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_ABSOLUTE_IDX]);
@@ -910,12 +910,15 @@ static void dcstat_send_global(netdata_publish_dcstat_t *publish)
*/
static void ebpf_create_specific_dc_charts(char *type, int update_every)
{
+ char *label = (!strncmp(type, "cgroup_", 7)) ? &type[7] : type;
ebpf_create_chart(type, NETDATA_DC_HIT_CHART, "Percentage of files inside directory cache",
EBPF_COMMON_DIMENSION_PERCENTAGE, NETDATA_DIRECTORY_CACHE_SUBMENU,
NETDATA_CGROUP_DC_HIT_RATIO_CONTEXT, NETDATA_EBPF_CHART_TYPE_LINE,
NETDATA_CHART_PRIO_CGROUPS_CONTAINERS + 5700,
ebpf_create_global_dimension,
dcstat_counter_publish_aggregated, 1, update_every, NETDATA_EBPF_MODULE_NAME_DCSTAT);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_DC_REFERENCE_CHART, "Count file access",
EBPF_COMMON_DIMENSION_FILES, NETDATA_DIRECTORY_CACHE_SUBMENU,
@@ -924,6 +927,8 @@ static void ebpf_create_specific_dc_charts(char *type, int update_every)
ebpf_create_global_dimension,
&dcstat_counter_publish_aggregated[NETDATA_DCSTAT_IDX_REFERENCE], 1,
update_every, NETDATA_EBPF_MODULE_NAME_DCSTAT);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_DC_REQUEST_NOT_CACHE_CHART,
"Files not present inside directory cache",
@@ -933,6 +938,8 @@ static void ebpf_create_specific_dc_charts(char *type, int update_every)
ebpf_create_global_dimension,
&dcstat_counter_publish_aggregated[NETDATA_DCSTAT_IDX_SLOW], 1,
update_every, NETDATA_EBPF_MODULE_NAME_DCSTAT);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_DC_REQUEST_NOT_FOUND_CHART,
"Files not found",
@@ -942,6 +949,8 @@ static void ebpf_create_specific_dc_charts(char *type, int update_every)
ebpf_create_global_dimension,
&dcstat_counter_publish_aggregated[NETDATA_DCSTAT_IDX_MISS], 1,
update_every, NETDATA_EBPF_MODULE_NAME_DCSTAT);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
}
/**
diff --git a/src/collectors/ebpf.plugin/ebpf_fd.c b/src/collectors/ebpf.plugin/ebpf_fd.c
index e1dc5b356b..7d87c48509 100644
--- a/src/collectors/ebpf.plugin/ebpf_fd.c
+++ b/src/collectors/ebpf.plugin/ebpf_fd.c
@@ -904,6 +904,7 @@ static void ebpf_fd_sum_cgroup_pids(netdata_fd_stat_t *fd, struct pid_on_target2
*/
static void ebpf_create_specific_fd_charts(char *type, ebpf_module_t *em)
{
+ char *label = (!strncmp(type, "cgroup_", 7)) ? &type[7] : type;
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_FILE_OPEN, "Number of open files",
EBPF_COMMON_DIMENSION_CALL, NETDATA_APPS_FILE_GROUP,
NETDATA_CGROUP_FD_OPEN_CONTEXT, NETDATA_EBPF_CHART_TYPE_LINE,
@@ -911,6 +912,8 @@ static void ebpf_create_specific_fd_charts(char *type, ebpf_module_t *em)
ebpf_create_global_dimension,
&fd_publish_aggregated[NETDATA_FD_SYSCALL_OPEN],
1, em->update_every, NETDATA_EBPF_MODULE_NAME_FD);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
if (em->mode < MODE_ENTRY) {
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_FILE_OPEN_ERROR, "Fails to open files",
@@ -921,6 +924,8 @@ static void ebpf_create_specific_fd_charts(char *type, ebpf_module_t *em)
&fd_publish_aggregated[NETDATA_FD_SYSCALL_OPEN],
1, em->update_every,
NETDATA_EBPF_MODULE_NAME_FD);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
}
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_FILE_CLOSED, "Files closed",
@@ -930,6 +935,8 @@ static void ebpf_create_specific_fd_charts(char *type, ebpf_module_t *em)
ebpf_create_global_dimension,
&fd_publish_aggregated[NETDATA_FD_SYSCALL_CLOSE],
1, em->update_every, NETDATA_EBPF_MODULE_NAME_FD);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
if (em->mode < MODE_ENTRY) {
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_FILE_CLOSE_ERROR, "Fails to close files",
@@ -940,6 +947,8 @@ static void ebpf_create_specific_fd_charts(char *type, ebpf_module_t *em)
&fd_publish_aggregated[NETDATA_FD_SYSCALL_CLOSE],
1, em->update_every,
NETDATA_EBPF_MODULE_NAME_FD);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
}
}
@@ -1263,7 +1272,7 @@ void ebpf_fd_create_apps_charts(struct ebpf_module *em, void *ptr)
20220,
update_every,
NETDATA_EBPF_MODULE_NAME_FD);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1279,7 +1288,7 @@ void ebpf_fd_create_apps_charts(struct ebpf_module *em, void *ptr)
20221,
update_every,
NETDATA_EBPF_MODULE_NAME_FD);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
}
@@ -1295,7 +1304,7 @@ void ebpf_fd_create_apps_charts(struct ebpf_module *em, void *ptr)
20222,
update_every,
NETDATA_EBPF_MODULE_NAME_FD);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1311,7 +1320,7 @@ void ebpf_fd_create_apps_charts(struct ebpf_module *em, void *ptr)
20223,
update_every,
NETDATA_EBPF_MODULE_NAME_FD);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
}
diff --git a/src/collectors/ebpf.plugin/ebpf_oomkill.c b/src/collectors/ebpf.plugin/ebpf_oomkill.c
index e7604a2db2..fba5a2dda5 100644
--- a/src/collectors/ebpf.plugin/ebpf_oomkill.c
+++ b/src/collectors/ebpf.plugin/ebpf_oomkill.c
@@ -514,7 +514,7 @@ void ebpf_oomkill_create_apps_charts(struct ebpf_module *em, void *ptr)
20072,
update_every,
NETDATA_EBPF_MODULE_NAME_OOMKILL);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION kills '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_ABSOLUTE_IDX]);
diff --git a/src/collectors/ebpf.plugin/ebpf_process.c b/src/collectors/ebpf.plugin/ebpf_process.c
index 306b596396..695c8c0727 100644
--- a/src/collectors/ebpf.plugin/ebpf_process.c
+++ b/src/collectors/ebpf.plugin/ebpf_process.c
@@ -357,7 +357,7 @@ void ebpf_process_create_apps_charts(struct ebpf_module *em, void *ptr)
20161,
update_every,
NETDATA_EBPF_MODULE_NAME_PROCESS);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -372,7 +372,7 @@ void ebpf_process_create_apps_charts(struct ebpf_module *em, void *ptr)
20162,
update_every,
NETDATA_EBPF_MODULE_NAME_PROCESS);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -387,7 +387,7 @@ void ebpf_process_create_apps_charts(struct ebpf_module *em, void *ptr)
20163,
update_every,
NETDATA_EBPF_MODULE_NAME_PROCESS);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -402,7 +402,7 @@ void ebpf_process_create_apps_charts(struct ebpf_module *em, void *ptr)
20164,
update_every,
NETDATA_EBPF_MODULE_NAME_PROCESS);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -418,7 +418,7 @@ void ebpf_process_create_apps_charts(struct ebpf_module *em, void *ptr)
20165,
update_every,
NETDATA_EBPF_MODULE_NAME_PROCESS);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
}
@@ -820,12 +820,15 @@ static void ebpf_send_specific_process_data(char *type, ebpf_process_stat_t *val
*/
static void ebpf_create_specific_process_charts(char *type, ebpf_module_t *em)
{
+ char *label = (!strncmp(type, "cgroup_", 7)) ? &type[7] : type;
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_TASK_PROCESS, "Process started",
EBPF_COMMON_DIMENSION_CALL, NETDATA_PROCESS_GROUP,
NETDATA_CGROUP_PROCESS_CREATE_CONTEXT, NETDATA_EBPF_CHART_TYPE_LINE,
NETDATA_CHART_PRIO_CGROUPS_CONTAINERS + 5000,
ebpf_create_global_dimension, &process_publish_aggregated[NETDATA_KEY_PUBLISH_PROCESS_FORK],
1, em->update_every, NETDATA_EBPF_MODULE_NAME_PROCESS);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_TASK_THREAD, "Threads started",
EBPF_COMMON_DIMENSION_CALL, NETDATA_PROCESS_GROUP,
@@ -834,6 +837,8 @@ static void ebpf_create_specific_process_charts(char *type, ebpf_module_t *em)
ebpf_create_global_dimension,
&process_publish_aggregated[NETDATA_KEY_PUBLISH_PROCESS_CLONE],
1, em->update_every, NETDATA_EBPF_MODULE_NAME_PROCESS);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_TASK_EXIT, "Tasks starts exit process.",
EBPF_COMMON_DIMENSION_CALL, NETDATA_PROCESS_GROUP,
@@ -842,6 +847,8 @@ static void ebpf_create_specific_process_charts(char *type, ebpf_module_t *em)
ebpf_create_global_dimension,
&process_publish_aggregated[NETDATA_KEY_PUBLISH_PROCESS_EXIT],
1, em->update_every, NETDATA_EBPF_MODULE_NAME_PROCESS);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_TASK_CLOSE, "Tasks closed",
EBPF_COMMON_DIMENSION_CALL, NETDATA_PROCESS_GROUP,
@@ -850,6 +857,8 @@ static void ebpf_create_specific_process_charts(char *type, ebpf_module_t *em)
ebpf_create_global_dimension,
&process_publish_aggregated[NETDATA_KEY_PUBLISH_PROCESS_RELEASE_TASK],
1, em->update_every, NETDATA_EBPF_MODULE_NAME_PROCESS);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
if (em->mode < MODE_ENTRY) {
ebpf_create_chart(type, NETDATA_SYSCALL_APPS_TASK_ERROR, "Errors to create process or threads.",
@@ -859,6 +868,8 @@ static void ebpf_create_specific_process_charts(char *type, ebpf_module_t *em)
ebpf_create_global_dimension,
&process_publish_aggregated[NETDATA_KEY_PUBLISH_PROCESS_EXIT],
1, em->update_every, NETDATA_EBPF_MODULE_NAME_PROCESS);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
}
}
diff --git a/src/collectors/ebpf.plugin/ebpf_shm.c b/src/collectors/ebpf.plugin/ebpf_shm.c
index 816e68cfd6..ed9436c04b 100644
--- a/src/collectors/ebpf.plugin/ebpf_shm.c
+++ b/src/collectors/ebpf.plugin/ebpf_shm.c
@@ -735,6 +735,7 @@ static void ebpf_shm_sum_cgroup_pids(netdata_publish_shm_t *shm, struct pid_on_t
*/
static void ebpf_create_specific_shm_charts(char *type, int update_every)
{
+ char *label = (!strncmp(type, "cgroup_", 7)) ? &type[7] : type;
ebpf_create_chart(type, NETDATA_SHMGET_CHART,
"Calls to syscall shmget(2).",
EBPF_COMMON_DIMENSION_CALL,
@@ -747,6 +748,8 @@ static void ebpf_create_specific_shm_charts(char *type, int update_every)
1,
update_every,
NETDATA_EBPF_MODULE_NAME_SHM);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_SHMAT_CHART,
"Calls to syscall shmat(2).",
@@ -760,6 +763,8 @@ static void ebpf_create_specific_shm_charts(char *type, int update_every)
1,
update_every,
NETDATA_EBPF_MODULE_NAME_SHM);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_SHMDT_CHART,
"Calls to syscall shmdt(2).",
@@ -773,6 +778,8 @@ static void ebpf_create_specific_shm_charts(char *type, int update_every)
1,
update_every,
NETDATA_EBPF_MODULE_NAME_SHM);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_SHMCTL_CHART,
"Calls to syscall shmctl(2).",
@@ -786,6 +793,8 @@ static void ebpf_create_specific_shm_charts(char *type, int update_every)
1,
update_every,
NETDATA_EBPF_MODULE_NAME_SHM);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
}
/**
@@ -1168,7 +1177,7 @@ void ebpf_shm_create_apps_charts(struct ebpf_module *em, void *ptr)
20191,
update_every,
NETDATA_EBPF_MODULE_NAME_SHM);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1183,7 +1192,7 @@ void ebpf_shm_create_apps_charts(struct ebpf_module *em, void *ptr)
20192,
update_every,
NETDATA_EBPF_MODULE_NAME_SHM);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1198,7 +1207,7 @@ void ebpf_shm_create_apps_charts(struct ebpf_module *em, void *ptr)
20193,
update_every,
NETDATA_EBPF_MODULE_NAME_SHM);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1213,7 +1222,7 @@ void ebpf_shm_create_apps_charts(struct ebpf_module *em, void *ptr)
20194,
update_every,
NETDATA_EBPF_MODULE_NAME_SHM);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
diff --git a/src/collectors/ebpf.plugin/ebpf_socket.c b/src/collectors/ebpf.plugin/ebpf_socket.c
index 5361526dfa..32e8e9e50e 100644
--- a/src/collectors/ebpf.plugin/ebpf_socket.c
+++ b/src/collectors/ebpf.plugin/ebpf_socket.c
@@ -1236,7 +1236,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order++,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION connections '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1252,7 +1252,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order++,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION connections '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
}
@@ -1268,7 +1268,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order++,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION bandwidth '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1283,7 +1283,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order++,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION bandwidth '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1298,7 +1298,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order++,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1313,7 +1313,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order++,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1328,7 +1328,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order++,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1343,7 +1343,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order++,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -1358,7 +1358,7 @@ void ebpf_socket_create_apps_charts(struct ebpf_module *em, void *ptr)
order,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
- ebpf_create_chart_labels("app_group", w->name, 1);
+ ebpf_create_chart_labels("app_group", w->name, RRDLABEL_SRC_AUTO);
ebpf_commit_label();
fprintf(stdout, "DIMENSION calls '' %s 1 1\n", ebpf_algorithms[NETDATA_EBPF_INCREMENTAL_IDX]);
@@ -2108,6 +2108,7 @@ static void ebpf_socket_sum_cgroup_pids(ebpf_socket_publish_apps_t *socket, stru
static void ebpf_create_specific_socket_charts(char *type, int update_every)
{
int order_basis = 5300;
+ char *label = (!strncmp(type, "cgroup_", 7)) ? &type[7] : type;
ebpf_create_chart(type, NETDATA_NET_APPS_CONNECTION_TCP_V4,
"Calls to tcp_v4_connection",
EBPF_COMMON_DIMENSION_CONNECTIONS, NETDATA_CGROUP_NET_GROUP,
@@ -2117,6 +2118,8 @@ static void ebpf_create_specific_socket_charts(char *type, int update_every)
ebpf_create_global_dimension,
&socket_publish_aggregated[NETDATA_IDX_TCP_CONNECTION_V4], 1,
update_every, NETDATA_EBPF_MODULE_NAME_SOCKET);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
if (tcp_v6_connect_address.type == 'T') {
ebpf_create_chart(type,
@@ -2132,6 +2135,8 @@ static void ebpf_create_specific_socket_charts(char *type, int update_every)
1,
update_every,
NETDATA_EBPF_MODULE_NAME_SOCKET);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
}
ebpf_create_chart(type, NETDATA_NET_APPS_BANDWIDTH_RECV,
@@ -2143,6 +2148,8 @@ static void ebpf_create_specific_socket_charts(char *type, int update_every)
ebpf_create_global_dimension,
&socket_publish_aggregated[NETDATA_IDX_TCP_CLEANUP_RBUF], 1,
update_every, NETDATA_EBPF_MODULE_NAME_SOCKET);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_NET_APPS_BANDWIDTH_SENT,
"Bytes sent",
@@ -2153,6 +2160,8 @@ static void ebpf_create_specific_socket_charts(char *type, int update_every)
ebpf_create_global_dimension,
socket_publish_aggregated, 1,
update_every, NETDATA_EBPF_MODULE_NAME_SOCKET);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_NET_APPS_BANDWIDTH_TCP_RECV_CALLS,
"Calls to tcp_cleanup_rbuf.",
@@ -2163,6 +2172,8 @@ static void ebpf_create_specific_socket_charts(char *type, int update_every)
ebpf_create_global_dimension,
&socket_publish_aggregated[NETDATA_IDX_TCP_CLEANUP_RBUF], 1,
update_every, NETDATA_EBPF_MODULE_NAME_SOCKET);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_NET_APPS_BANDWIDTH_TCP_SEND_CALLS,
"Calls to tcp_sendmsg.",
@@ -2173,6 +2184,8 @@ static void ebpf_create_specific_socket_charts(char *type, int update_every)
ebpf_create_global_dimension,
socket_publish_aggregated, 1,
update_every, NETDATA_EBPF_MODULE_NAME_SOCKET);
+ ebpf_create_chart_labels("cgroup_name", label, RRDLABEL_SRC_AUTO);
+ ebpf_commit_label();
ebpf_create_chart(type, NETDATA_NET_A