]> git.ipfire.org Git - people/ms/telemetry.git/commitdiff
graphs: processor: Invert the graph
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 4 Dec 2025 17:04:44 +0000 (17:04 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 4 Dec 2025 17:04:44 +0000 (17:04 +0000)
That way, the data, especially for the smaller fields is getting much
clearer.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/daemon/graphs/processor.c

index 7546b7b6baa40a5965b5b2808251559c8a251700..ce12f154ce32f0b635dfa953020d28c61e20e15a 100644 (file)
@@ -74,52 +74,52 @@ static int processor_render(td_ctx* ctx, td_graph* graph,
        PRINT_EMPTY_LINE(args);
 
        // Draw the stacked background first
-       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("user"), NULL, COLOR_USER, 0);
-       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("nice"), NULL, COLOR_NICE, STACKED);
-       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("sys"), NULL, COLOR_SYS, STACKED);
-       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("wait"), NULL, COLOR_WAIT, STACKED);
-       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("irq"), NULL, COLOR_IRQ, STACKED);
-       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("softirq"), NULL, COLOR_SOFTIRQ, STACKED);
-       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("steal"), NULL, COLOR_STEAL, STACKED);
+       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("guest_nice"), NULL, COLOR_GUEST_NICE, 0);
        DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("guest"), NULL, COLOR_GUEST, STACKED);
-       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("guest_nice"), NULL, COLOR_GUEST_NICE, STACKED);
+       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("steal"), NULL, COLOR_STEAL, STACKED);
+       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("softirq"), NULL, COLOR_SOFTIRQ, STACKED);
+       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("irq"), NULL, COLOR_IRQ, STACKED);
+       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("wait"), NULL, COLOR_WAIT, STACKED);
+       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("sys"), NULL, COLOR_SYS, STACKED);
+       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("nice"), NULL, COLOR_NICE, STACKED);
+       DRAW_AREA_BACKGROUND(args, FIELD_PERCENT("user"), NULL, COLOR_USER, STACKED);
 
        // Draw the area outlines afterwards
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
-               FIELD_PERCENT("user"), NULL, COLOR_USER, 0, _("User"));
-       PRINT_CAMM(args, "user", NULL, PERCENTAGE);
+               FIELD_PERCENT("guest_nice"), NULL, COLOR_GUEST_NICE, 0, _("Guest Nice"));
+       PRINT_CAMM(args, "guest_nice", NULL, PERCENTAGE);
 
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
-               FIELD_PERCENT("nice"), NULL, COLOR_NICE, STACKED, _("Nice"));
-       PRINT_CAMM(args, "nice", NULL, PERCENTAGE);
+               FIELD_PERCENT("guest"), NULL, COLOR_GUEST, STACKED, _("Guest"));
+       PRINT_CAMM(args, "guest", NULL, PERCENTAGE);
 
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
-               FIELD_PERCENT("sys"), NULL, COLOR_SYS, STACKED, _("Sys"));
-       PRINT_CAMM(args, "sys", NULL, PERCENTAGE);
+               FIELD_PERCENT("steal"), NULL, COLOR_STEAL, STACKED, _("Steal"));
+       PRINT_CAMM(args, "steal", NULL, PERCENTAGE);
 
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
-               FIELD_PERCENT("wait"), NULL, COLOR_WAIT, STACKED, _("Wait"));
-       PRINT_CAMM(args, "wait", NULL, PERCENTAGE);
+               FIELD_PERCENT("softirq"), NULL, COLOR_SOFTIRQ, STACKED, _("Soft Interrupt"));
+       PRINT_CAMM(args, "softirq", NULL, PERCENTAGE);
 
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
                FIELD_PERCENT("irq"), NULL, COLOR_IRQ, STACKED, _("Interrupt"));
        PRINT_CAMM(args, "irq", NULL, PERCENTAGE);
 
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
-               FIELD_PERCENT("softirq"), NULL, COLOR_SOFTIRQ, STACKED, _("Soft Interrupt"));
-       PRINT_CAMM(args, "softirq", NULL, PERCENTAGE);
+               FIELD_PERCENT("wait"), NULL, COLOR_WAIT, STACKED, _("Wait"));
+       PRINT_CAMM(args, "wait", NULL, PERCENTAGE);
 
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
-               FIELD_PERCENT("steal"), NULL, COLOR_STEAL, STACKED, _("Steal"));
-       PRINT_CAMM(args, "steal", NULL, PERCENTAGE);
+               FIELD_PERCENT("sys"), NULL, COLOR_SYS, STACKED, _("Sys"));
+       PRINT_CAMM(args, "sys", NULL, PERCENTAGE);
 
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
-               FIELD_PERCENT("guest"), NULL, COLOR_GUEST, STACKED, _("Guest"));
-       PRINT_CAMM(args, "guest", NULL, PERCENTAGE);
+               FIELD_PERCENT("nice"), NULL, COLOR_NICE, STACKED, _("Nice"));
+       PRINT_CAMM(args, "nice", NULL, PERCENTAGE);
 
        DRAW_AREA_OUTLINE_WITH_LABEL(args,
-               FIELD_PERCENT("guest_nice"), NULL, COLOR_GUEST_NICE, STACKED, _("Guest Nice"));
-       PRINT_CAMM(args, "guest_nice", NULL, PERCENTAGE);
+               FIELD_PERCENT("user"), NULL, COLOR_USER, STACKED, _("User"));
+       PRINT_CAMM(args, "user", NULL, PERCENTAGE);
 
        return 0;
 }
@@ -130,6 +130,9 @@ const td_graph_impl processor_graph = {
        .title   = processor_title,
        .vlabel  = processor_vlabel,
 
+       // Flags
+       .flags   = TELEMETRY_GRAPH_REVERSE,
+
        // Limits
        .lower_limit = 0,
        .upper_limit = LONG_MAX,