@cryptotaxi247 / netdata-1 / commits / b0bbaff33

Remove tags field from RRD hosts. (#16894)

* Remove tags field from RRD hosts. My understanding is that this field has been deprecated in favour of RRD labels. * Remove unused config

vkalintiris committed Feb 6, 2024 at 22:48 UTC b0bbaff33d526518274d4f8801c7982753119cad
13 files changed +21 -107
collectors/plugins.d/pluginsd_parser.c
-1
@@ -184,7 +184,6 @@ static inline PARSER_RC pluginsd_host_define_end(char **words __maybe_unused, si
184 netdata_configured_timezone,
185 netdata_configured_abbrev_timezone,
186 netdata_configured_utc_offset,
187 - NULL,
187 program_name,
188 program_version,
189 default_rrd_update_every,
src/daemon/unit_test.c
-1
@@ -1831,7 +1831,6 @@ static RRDHOST *dbengine_rrdhost_find_or_create(char *name)
1831 netdata_configured_timezone,
1832 netdata_configured_abbrev_timezone,
1833 netdata_configured_utc_offset,
1834 - "",
1834 program_name,
1835 program_version,
1836 default_rrd_update_every,
src/database/rrd.h
+1 -3
@@ -1151,7 +1151,6 @@ struct rrdhost {
1151 STRING *hostname; // the hostname of this host
1152 STRING *registry_hostname; // the registry hostname for this host
1153 STRING *os; // the O/S type of the host
1154 - STRING *tags; // tags for this host
1154 STRING *timezone; // the timezone of the host
1155 STRING *abbrev_timezone; // the abbriviated timezone of the host
1156 STRING *program_name; // the program name that collects metrics for this host
@@ -1388,7 +1387,6 @@ RRDHOST *rrdhost_find_or_create(
1387 const char *timezone,
1388 const char *abbrev_timezone,
1389 int32_t utc_offset,
1391 - const char *tags,
1390 const char *prog_name,
1391 const char *prog_version,
1392 int update_every,
@@ -1580,7 +1578,7 @@ void rrdset_reset(RRDSET *st);
1578
1579 void set_host_properties(
1580 RRDHOST *host, int update_every, RRD_MEMORY_MODE memory_mode, const char *registry_hostname,
1583 - const char *os, const char *tags, const char *tzone, const char *abbrev_tzone, int32_t utc_offset,
1581 + const char *os, const char *tzone, const char *abbrev_tzone, int32_t utc_offset,
1582 const char *prog_name, const char *prog_version);
1583
1584 size_t get_tier_grouping(size_t tier);
src/database/rrdhost.c
+9 -31
@@ -178,15 +178,6 @@ static inline RRDHOST *rrdhost_index_add_hostname(RRDHOST *host) {
178 // ----------------------------------------------------------------------------
179 // RRDHOST - internal helpers
180
181 -static inline void rrdhost_init_tags(RRDHOST *host, const char *tags) {
182 - if(host->tags && tags && !strcmp(rrdhost_tags(host), tags))
183 - return;
184 -
185 - STRING *old = host->tags;
186 - host->tags = string_strdupz((tags && *tags)?tags:NULL);
187 - string_freez(old);
188 -}
189 -
181 static inline void rrdhost_init_hostname(RRDHOST *host, const char *hostname, bool add_to_index) {
182 if(unlikely(hostname && !*hostname)) hostname = NULL;
183
@@ -229,8 +220,8 @@ static inline void rrdhost_init_timezone(RRDHOST *host, const char *timezone, co
220 }
221
222 void set_host_properties(RRDHOST *host, int update_every, RRD_MEMORY_MODE memory_mode,
232 - const char *registry_hostname, const char *os, const char *tags,
233 - const char *tzone, const char *abbrev_tzone, int32_t utc_offset, const char *prog_name,
223 + const char *registry_hostname, const char *os, const char *tzone,
224 + const char *abbrev_tzone, int32_t utc_offset, const char *prog_name,
225 const char *prog_version)
226 {
227
@@ -239,7 +230,6 @@ void set_host_properties(RRDHOST *host, int update_every, RRD_MEMORY_MODE memory
230
231 rrdhost_init_os(host, os);
232 rrdhost_init_timezone(host, tzone, abbrev_tzone, utc_offset);
242 - rrdhost_init_tags(host, tags);
233
234 host->program_name = string_strdupz((prog_name && *prog_name) ? prog_name : "unknown");
235 host->program_version = string_strdupz((prog_version && *prog_version) ? prog_version : "unknown");
@@ -287,7 +277,6 @@ static RRDHOST *rrdhost_create(
277 const char *timezone,
278 const char *abbrev_timezone,
279 int32_t utc_offset,
290 - const char *tags,
280 const char *prog_name,
281 const char *prog_version,
282 int update_every,
@@ -326,7 +315,7 @@ int is_legacy = 1;
315 strncpyz(host->machine_guid, guid, GUID_LEN + 1);
316
317 set_host_properties(host, (update_every > 0)?update_every:1, memory_mode, registry_hostname, os,
329 - tags, timezone, abbrev_timezone, utc_offset,
318 + timezone, abbrev_timezone, utc_offset,
319 prog_name,
320 prog_version);
321
@@ -539,7 +528,6 @@ int is_legacy = 1;
528 "Host '%s' (at registry as '%s') with guid '%s' initialized"
529 ", os '%s'"
530 ", timezone '%s'"
542 - ", tags '%s'"
531 ", program_name '%s'"
532 ", program_version '%s'"
533 ", update every %d"
@@ -556,7 +544,6 @@ int is_legacy = 1;
544 , host->machine_guid
545 , rrdhost_os(host)
546 , rrdhost_timezone(host)
559 - , rrdhost_tags(host)
547 , rrdhost_program_name(host)
548 , rrdhost_program_version(host)
549 , host->rrd_update_every
@@ -590,7 +577,6 @@ static void rrdhost_update(RRDHOST *host
577 , const char *timezone
578 , const char *abbrev_timezone
579 , int32_t utc_offset
593 - , const char *tags
580 , const char *prog_name
581 , const char *prog_version
582 , int update_every
@@ -680,9 +666,6 @@ static void rrdhost_update(RRDHOST *host
666 host->rrd_history_entries,
667 history);
668
683 - // update host tags
684 - rrdhost_init_tags(host, tags);
685 -
669 if(!host->rrdvars)
670 host->rrdvars = rrdvariables_create();
671
@@ -734,7 +717,6 @@ RRDHOST *rrdhost_find_or_create(
717 , const char *timezone
718 , const char *abbrev_timezone
719 , int32_t utc_offset
737 - , const char *tags
720 , const char *prog_name
721 , const char *prog_version
722 , int update_every
@@ -779,10 +761,9 @@ RRDHOST *rrdhost_find_or_create(
761 , timezone
762 , abbrev_timezone
763 , utc_offset
782 - , tags
783 - ,
784 - prog_name,
785 - prog_version, update_every
764 + , prog_name
765 + , prog_version
766 + , update_every
767 , history
768 , mode
769 , health_enabled
@@ -808,10 +789,9 @@ RRDHOST *rrdhost_find_or_create(
789 , timezone
790 , abbrev_timezone
791 , utc_offset
811 - , tags
812 - ,
813 - prog_name,
814 - prog_version, update_every
792 + , prog_name
793 + , prog_version
794 + , update_every
795 , history
796 , mode
797 , health_enabled
@@ -1087,7 +1067,6 @@ int rrd_init(char *hostname, struct rrdhost_system_info *system_info, bool unitt
1067 , netdata_configured_timezone
1068 , netdata_configured_abbrev_timezone
1069 , netdata_configured_utc_offset
1090 - , ""
1070 , program_name
1071 , program_version
1072 , default_rrd_update_every
@@ -1307,7 +1286,6 @@ void rrdhost_free___while_having_rrd_wrlock(RRDHOST *host, bool force) {
1286 pthread_mutex_destroy(&host->aclk_state_lock);
1287 freez(host->aclk_state.claimed_id);
1288 freez(host->aclk_state.prev_claimed_id);
1310 - string_freez(host->tags);
1289 rrdlabels_destroy(host->rrdlabels);
1290 string_freez(host->os);
1291 string_freez(host->timezone);
src/database/sqlite/sqlite_aclk.c
+2 -4
@@ -61,7 +61,6 @@ enum {
61 IDX_UPDATE_EVERY,
62 IDX_OS,
63 IDX_TIMEZONE,
64 - IDX_TAGS,
64 IDX_HOPS,
65 IDX_MEMORY_MODE,
66 IDX_ABBREV_TIMEZONE,
@@ -120,7 +119,6 @@ static int create_host_callback(void *data, int argc, char **argv, char **column
119 (const char *)argv[IDX_TIMEZONE],
120 (const char *)argv[IDX_ABBREV_TIMEZONE],
121 (int32_t)(argv[IDX_UTC_OFFSET] ? str2uint32_t(argv[IDX_UTC_OFFSET], NULL) : 0),
123 - (const char *)argv[IDX_TAGS],
122 (const char *)(argv[IDX_PROGRAM_NAME] ? argv[IDX_PROGRAM_NAME] : "unknown"),
123 (const char *)(argv[IDX_PROGRAM_VERSION] ? argv[IDX_PROGRAM_VERSION] : "unknown"),
124 argv[IDX_UPDATE_EVERY] ? str2i(argv[IDX_UPDATE_EVERY]) : 1,
@@ -557,7 +555,7 @@ void sql_create_aclk_table(RRDHOST *host __maybe_unused, uuid_t *host_uuid __may
555
556 #define SQL_FETCH_ALL_HOSTS \
557 "SELECT host_id, hostname, registry_hostname, update_every, os, " \
560 - "timezone, tags, hops, memory_mode, abbrev_timezone, utc_offset, program_name, " \
558 + "timezone, hops, memory_mode, abbrev_timezone, utc_offset, program_name, " \
559 "program_version, entries, health_enabled, last_connected, " \
560 "(SELECT CASE WHEN hl.label_value = 'true' THEN 1 ELSE 0 END FROM " \
561 "host_label hl WHERE hl.host_id = h.host_id AND hl.label_key = '_is_ephemeral') " \
@@ -675,4 +673,4 @@ void unregister_node(const char *machine_guid)
673 cmd.completion = NULL;
674 aclk_database_enq_cmd(&cmd);
675 }
678 -#endif
\ No newline at end of file
676 +#endif
src/database/sqlite/sqlite_metadata.c
+2 -1
@@ -354,7 +354,8 @@ static int store_host_metadata(RRDHOST *host)
354 if (unlikely(rc != SQLITE_OK))
355 goto bind_fail;
356
357 - rc = bind_text_null(res, ++param, rrdhost_tags(host), 1);
357 + // TODO: remove/migrate
358 + rc = bind_text_null(res, ++param, "", 1);
359 if (unlikely(rc != SQLITE_OK))
360 goto bind_fail;
361
src/exporting/graphite/graphite.c
+2 -6
@@ -133,13 +133,11 @@ int format_dimension_collected_graphite_plaintext(struct instance *instance, RRD
133
134 buffer_sprintf(
135 instance->buffer,
136 - "%s.%s.%s.%s%s%s%s " COLLECTED_NUMBER_FORMAT " %llu\n",
136 + "%s.%s.%s.%s%s " COLLECTED_NUMBER_FORMAT " %llu\n",
137 instance->config.prefix,
138 (host == localhost) ? instance->config.hostname : rrdhost_hostname(host),
139 chart_name,
140 dimension_name,
141 - (host->tags) ? ";" : "",
142 - (host->tags) ? rrdhost_tags(host) : "",
141 (instance->labels_buffer) ? buffer_tostring(instance->labels_buffer) : "",
142 rd->collector.last_collected_value,
143 (unsigned long long)rd->collector.last_collected_time.tv_sec);
@@ -179,13 +177,11 @@ int format_dimension_stored_graphite_plaintext(struct instance *instance, RRDDIM
177
178 buffer_sprintf(
179 instance->buffer,
182 - "%s.%s.%s.%s%s%s%s " NETDATA_DOUBLE_FORMAT " %llu\n",
180 + "%s.%s.%s.%s%s " NETDATA_DOUBLE_FORMAT " %llu\n",
181 instance->config.prefix,
182 (host == localhost) ? instance->config.hostname : rrdhost_hostname(host),
183 chart_name,
184 dimension_name,
187 - (host->tags) ? ";" : "",
188 - (host->tags) ? rrdhost_tags(host) : "",
185 (instance->labels_buffer) ? buffer_tostring(instance->labels_buffer) : "",
186 value,
187 (unsigned long long)last_t);
src/exporting/json/json.c
-36
@@ -144,20 +144,6 @@ int format_dimension_collected_json_plaintext(struct instance *instance, RRDDIM
144 RRDSET *st = rd->rrdset;
145 RRDHOST *host = st->rrdhost;
146
147 - const char *tags_pre = "", *tags_post = "", *tags = rrdhost_tags(host);
148 - if (!tags)
149 - tags = "";
150 -
151 - if (*tags) {
152 - if (*tags == '{' || *tags == '[' || *tags == '"') {
153 - tags_pre = "\"host_tags\":";
154 - tags_post = ",";
155 - } else {
156 - tags_pre = "\"host_tags\":\"";
157 - tags_post = "\",";
158 - }
159 - }
160 -
147 if (instance->config.type == EXPORTING_CONNECTOR_TYPE_JSON_HTTP) {
148 if (buffer_strlen((BUFFER *)instance->buffer) > 2)
149 buffer_strcat(instance->buffer, ",\n");
@@ -169,7 +155,6 @@ int format_dimension_collected_json_plaintext(struct instance *instance, RRDDIM
155 "{"
156 "\"prefix\":\"%s\","
157 "\"hostname\":\"%s\","
172 - "%s%s%s"
158 "%s"
159
160 "\"chart_id\":\"%s\","
@@ -187,9 +172,6 @@ int format_dimension_collected_json_plaintext(struct instance *instance, RRDDIM
172
173 instance->config.prefix,
174 (host == localhost) ? instance->config.hostname : rrdhost_hostname(host),
190 - tags_pre,
191 - tags,
192 - tags_post,
175 instance->labels_buffer ? buffer_tostring(instance->labels_buffer) : "",
176
177 rrdset_id(st),
@@ -229,20 +211,6 @@ int format_dimension_stored_json_plaintext(struct instance *instance, RRDDIM *rd
211 if(isnan(value))
212 return 0;
213
232 - const char *tags_pre = "", *tags_post = "", *tags = rrdhost_tags(host);
233 - if (!tags)
234 - tags = "";
235 -
236 - if (*tags) {
237 - if (*tags == '{' || *tags == '[' || *tags == '"') {
238 - tags_pre = "\"host_tags\":";
239 - tags_post = ",";
240 - } else {
241 - tags_pre = "\"host_tags\":\"";
242 - tags_post = "\",";
243 - }
244 - }
245 -
214 if (instance->config.type == EXPORTING_CONNECTOR_TYPE_JSON_HTTP) {
215 if (buffer_strlen((BUFFER *)instance->buffer) > 2)
216 buffer_strcat(instance->buffer, ",\n");
@@ -253,7 +221,6 @@ int format_dimension_stored_json_plaintext(struct instance *instance, RRDDIM *rd
221 "{"
222 "\"prefix\":\"%s\","
223 "\"hostname\":\"%s\","
256 - "%s%s%s"
224 "%s"
225
226 "\"chart_id\":\"%s\","
@@ -271,9 +238,6 @@ int format_dimension_stored_json_plaintext(struct instance *instance, RRDDIM *rd
238
239 instance->config.prefix,
240 (host == localhost) ? instance->config.hostname : rrdhost_hostname(host),
274 - tags_pre,
275 - tags,
276 - tags_post,
241 instance->labels_buffer ? buffer_tostring(instance->labels_buffer) : "",
242
243 rrdset_id(st),
src/exporting/opentsdb/opentsdb.c
+4 -12
@@ -186,15 +186,13 @@ int format_dimension_collected_opentsdb_telnet(struct instance *instance, RRDDIM
186
187 buffer_sprintf(
188 instance->buffer,
189 - "put %s.%s.%s %llu " COLLECTED_NUMBER_FORMAT " host=%s%s%s%s\n",
189 + "put %s.%s.%s %llu " COLLECTED_NUMBER_FORMAT " host=%s%s\n",
190 instance->config.prefix,
191 chart_name,
192 dimension_name,
193 (unsigned long long)rd->collector.last_collected_time.tv_sec,
194 rd->collector.last_collected_value,
195 (host == localhost) ? instance->config.hostname : rrdhost_hostname(host),
196 - (host->tags) ? " " : "",
197 - (host->tags) ? rrdhost_tags(host) : "",
196 (instance->labels_buffer) ? buffer_tostring(instance->labels_buffer) : "");
197
198 return 0;
@@ -232,15 +230,13 @@ int format_dimension_stored_opentsdb_telnet(struct instance *instance, RRDDIM *r
230
231 buffer_sprintf(
232 instance->buffer,
235 - "put %s.%s.%s %llu " NETDATA_DOUBLE_FORMAT " host=%s%s%s%s\n",
233 + "put %s.%s.%s %llu " NETDATA_DOUBLE_FORMAT " host=%s%s\n",
234 instance->config.prefix,
235 chart_name,
236 dimension_name,
237 (unsigned long long)last_t,
238 value,
239 (host == localhost) ? instance->config.hostname : rrdhost_hostname(host),
242 - (host->tags) ? " " : "",
243 - (host->tags) ? rrdhost_tags(host) : "",
240 (instance->labels_buffer) ? buffer_tostring(instance->labels_buffer) : "");
241
242 return 0;
@@ -326,7 +322,7 @@ int format_dimension_collected_opentsdb_http(struct instance *instance, RRDDIM *
322 "\"timestamp\":%llu,"
323 "\"value\":"COLLECTED_NUMBER_FORMAT","
324 "\"tags\":{"
329 - "\"host\":\"%s%s%s\"%s"
325 + "\"host\":\"%s\"%s"
326 "}"
327 "}",
328 instance->config.prefix,
@@ -335,8 +331,6 @@ int format_dimension_collected_opentsdb_http(struct instance *instance, RRDDIM *
331 (unsigned long long)rd->collector.last_collected_time.tv_sec,
332 rd->collector.last_collected_value,
333 (host == localhost) ? instance->config.hostname : rrdhost_hostname(host),
338 - (host->tags) ? " " : "",
339 - (host->tags) ? rrdhost_tags(host) : "",
334 instance->labels_buffer ? buffer_tostring(instance->labels_buffer) : "");
335
336 return 0;
@@ -382,7 +376,7 @@ int format_dimension_stored_opentsdb_http(struct instance *instance, RRDDIM *rd)
376 "\"timestamp\":%llu,"
377 "\"value\":" NETDATA_DOUBLE_FORMAT ","
378 "\"tags\":{"
385 - "\"host\":\"%s%s%s\"%s"
379 + "\"host\":\"%s\"%s"
380 "}"
381 "}",
382 instance->config.prefix,
@@ -391,8 +385,6 @@ int format_dimension_stored_opentsdb_http(struct instance *instance, RRDDIM *rd)
385 (unsigned long long)last_t,
386 value,
387 (host == localhost) ? instance->config.hostname : rrdhost_hostname(host),
394 - (host->tags) ? " " : "",
395 - (host->tags) ? rrdhost_tags(host) : "",
388 instance->labels_buffer ? buffer_tostring(instance->labels_buffer) : "");
389
390 return 0;
src/streaming/receiver.c
+1 -6
@@ -14,7 +14,6 @@ void receiver_state_free(struct receiver_state *rpt) {
14 freez(rpt->os);
15 freez(rpt->timezone);
16 freez(rpt->abbrev_timezone);
17 - freez(rpt->tags);
17 freez(rpt->client_ip);
18 freez(rpt->client_port);
19 freez(rpt->program_name);
@@ -628,8 +627,6 @@ static void rrdpush_receive(struct receiver_state *rpt)
627 rrdpush_parse_compression_order(rpt, order);
628 }
629
631 - (void)appconfig_set_default(&stream_config, rpt->machine_guid, "host tags", (rpt->tags)?rpt->tags:"");
632 -
630 // find the host for this receiver
631 {
632 // this will also update the host with our system_info
@@ -641,7 +638,6 @@ static void rrdpush_receive(struct receiver_state *rpt)
638 rpt->timezone,
639 rpt->abbrev_timezone,
640 rpt->utc_offset,
644 - rpt->tags,
641 rpt->program_name,
642 rpt->program_version,
643 rpt->config.update_every,
@@ -694,7 +690,7 @@ static void rrdpush_receive(struct receiver_state *rpt)
690 #ifdef NETDATA_INTERNAL_CHECKS
691 netdata_log_info("STREAM '%s' [receive from [%s]:%s]: "
692 "client willing to stream metrics for host '%s' with machine_guid '%s': "
697 - "update every = %d, history = %d, memory mode = %s, health %s,%s tags '%s'"
693 + "update every = %d, history = %d, memory mode = %s, health %s,%s"
694 , rpt->hostname
695 , rpt->client_ip
696 , rpt->client_port
@@ -709,7 +705,6 @@ static void rrdpush_receive(struct receiver_state *rpt)
705 #else
706 , ""
707 #endif
712 - , rrdhost_tags(rpt->host)
708 );
709 #endif // NETDATA_INTERNAL_CHECKS
710
src/streaming/rrdpush.c
-3
@@ -875,9 +875,6 @@ int rrdpush_receiver_thread_spawn(struct web_client *w, char *decoded_query_stri
875 else if(!strcmp(name, "mc_version"))
876 rpt->system_info->mc_version = strtoul(value, NULL, 0);
877
878 - else if(!strcmp(name, "tags") && !rpt->tags)
879 - rpt->tags = strdupz(value);
880 -
878 else if(!strcmp(name, "ver") && (rpt->capabilities & STREAM_CAP_INVALID))
879 rpt->capabilities = convert_stream_version_to_capabilities(strtoul(value, NULL, 0), NULL, false);
880
src/streaming/rrdpush.h
-1
@@ -347,7 +347,6 @@ struct receiver_state {
347 char *timezone; // Unused?
348 char *abbrev_timezone;
349 int32_t utc_offset;
350 - char *tags;
350 char *client_ip; // Duplicated in pluginsd
351 char *client_port; // Duplicated in pluginsd
352 char *program_name; // Duplicated in pluginsd
src/streaming/sender.c
-2
@@ -786,7 +786,6 @@ static bool rrdpush_sender_thread_connect_to_parent(RRDHOST *host, int default_p
786 "&ml_capable=%d"
787 "&ml_enabled=%d"
788 "&mc_version=%d"
789 - "&tags=%s"
789 "&ver=%u"
790 "&NETDATA_INSTANCE_CLOUD_TYPE=%s"
791 "&NETDATA_INSTANCE_CLOUD_INSTANCE_TYPE=%s"
@@ -832,7 +831,6 @@ static bool rrdpush_sender_thread_connect_to_parent(RRDHOST *host, int default_p
831 , host->system_info->ml_capable
832 , host->system_info->ml_enabled
833 , host->system_info->mc_version
835 - , rrdhost_tags(host)
834 , s->capabilities
835 , (host->system_info->cloud_provider_type) ? host->system_info->cloud_provider_type : ""
836 , (host->system_info->cloud_instance_type) ? host->system_info->cloud_instance_type : ""