@cryptotaxi247 / netdata-1 / commits / ce7f64029

network-interfaces function: add UsedBy field to (#16337)

* add UsedBy field to network-interfaces function * fix traffic units

Ilya Mashchenko committed Nov 6, 2023 at 10:38 UTC ce7f640297b110e8594384606ef0d6bb3cb4bc07
1 file changed +22 -3
collectors/proc.plugin/proc_net_dev.c
+22 -3
@@ -650,6 +650,7 @@ int netdev_function_net_interfaces(BUFFER *wb, int timeout __maybe_unused, const
650 buffer_json_add_array_item_string(wb, d->name);
651
652 buffer_json_add_array_item_string(wb, d->virtual ? "virtual" : "physical");
653 + buffer_json_add_array_item_string(wb, d->flipped ? "cgroup" : "host");
654 buffer_json_add_array_item_string(wb, d->carrier == 1 ? "up" : "down");
655 buffer_json_add_array_item_string(wb, get_operstate_string(d->operstate));
656 buffer_json_add_array_item_string(wb, get_duplex_string(d->duplex));
@@ -752,6 +753,13 @@ int netdev_function_net_interfaces(BUFFER *wb, int timeout __maybe_unused, const
753 RRDF_FIELD_OPTS_VISIBLE | RRDF_FIELD_OPTS_UNIQUE_KEY,
754 NULL);
755
756 + buffer_rrdf_table_add_field(wb, field_id++, "UsedBy", "Indicates whether the network interface is used by a cgroup or by the host system",
757 + RRDF_FIELD_TYPE_STRING, RRDF_FIELD_VISUAL_VALUE, RRDF_FIELD_TRANSFORM_NONE,
758 + 0, NULL, NAN, RRDF_FIELD_SORT_ASCENDING, NULL,
759 + RRDF_FIELD_SUMMARY_COUNT, RRDF_FIELD_FILTER_MULTISELECT,
760 + RRDF_FIELD_OPTS_VISIBLE | RRDF_FIELD_OPTS_UNIQUE_KEY,
761 + NULL);
762 +
763 buffer_rrdf_table_add_field(wb, field_id++, "PhState", "Current Physical State",
764 RRDF_FIELD_TYPE_STRING, RRDF_FIELD_VISUAL_VALUE, RRDF_FIELD_TRANSFORM_NONE,
765 0, NULL, NAN, RRDF_FIELD_SORT_ASCENDING, NULL,
@@ -789,21 +797,21 @@ int netdev_function_net_interfaces(BUFFER *wb, int timeout __maybe_unused, const
797
798 buffer_rrdf_table_add_field(wb, field_id++, "In", "Traffic Received",
799 RRDF_FIELD_TYPE_BAR_WITH_INTEGER, RRDF_FIELD_VISUAL_BAR, RRDF_FIELD_TRANSFORM_NUMBER,
792 - 2, "MiB", max_traffic_rx, RRDF_FIELD_SORT_DESCENDING, NULL,
800 + 2, "Mbit", max_traffic_rx, RRDF_FIELD_SORT_DESCENDING, NULL,
801 RRDF_FIELD_SUMMARY_SUM, RRDF_FIELD_FILTER_NONE,
802 RRDF_FIELD_OPTS_VISIBLE,
803 NULL);
804
805 buffer_rrdf_table_add_field(wb, field_id++, "Out", "Traffic Sent",
806 RRDF_FIELD_TYPE_BAR_WITH_INTEGER, RRDF_FIELD_VISUAL_BAR, RRDF_FIELD_TRANSFORM_NUMBER,
799 - 2, "MiB", max_traffic_tx, RRDF_FIELD_SORT_DESCENDING, NULL,
807 + 2, "Mbit", max_traffic_tx, RRDF_FIELD_SORT_DESCENDING, NULL,
808 RRDF_FIELD_SUMMARY_SUM, RRDF_FIELD_FILTER_NONE,
809 RRDF_FIELD_OPTS_VISIBLE,
810 NULL);
811
812 buffer_rrdf_table_add_field(wb, field_id++, "Total", "Traffic Received and Sent",
813 RRDF_FIELD_TYPE_BAR_WITH_INTEGER, RRDF_FIELD_VISUAL_BAR, RRDF_FIELD_TRANSFORM_NUMBER,
806 - 2, "MiB", max_traffic, RRDF_FIELD_SORT_DESCENDING, NULL,
814 + 2, "Mbit", max_traffic, RRDF_FIELD_SORT_DESCENDING, NULL,
815 RRDF_FIELD_SUMMARY_SUM, RRDF_FIELD_FILTER_NONE,
816 RRDF_FIELD_OPTS_VISIBLE,
817 NULL);
@@ -916,6 +924,17 @@ int netdev_function_net_interfaces(BUFFER *wb, int timeout __maybe_unused, const
924 buffer_json_array_close(wb);
925 }
926 buffer_json_object_close(wb);
927 +
928 + buffer_json_member_add_object(wb, "UsedBy");
929 + {
930 + buffer_json_member_add_string(wb, "name", "UsedBy");
931 + buffer_json_member_add_array(wb, "columns");
932 + {
933 + buffer_json_add_array_item_string(wb, "UsedBy");
934 + }
935 + buffer_json_array_close(wb);
936 + }
937 + buffer_json_object_close(wb);
938 }
939 buffer_json_object_close(wb); // group_by
940