void synthetic_message_add_tag(SyntheticMessage *self, const gchar *text) { LogTagId tag; if (!self->tags) self->tags = g_array_new(FALSE, FALSE, sizeof(LogTagId)); tag = log_tags_get_by_name(text); g_array_append_val(self->tags, tag); }
void filter_tags_add(FilterExprNode *s, GList *tags) { FilterTags *self = (FilterTags *)s; LogTagId id; while (tags) { id = log_tags_get_by_name((gchar *) tags->data); g_free(tags->data); tags = g_list_delete_link(tags, tags); g_array_append_val(self->tags, id); } }
void log_reader_options_set_tags(LogReaderOptions *options, GList *tags) { LogTagId id; if (!options->tags) options->tags = g_array_new(FALSE, FALSE, sizeof(LogTagId)); while (tags) { id = log_tags_get_by_name((gchar *) tags->data); g_array_append_val(options->tags, id); g_free(tags->data); tags = g_list_delete_link(tags, tags); } }
void test_tags(void) { guint i, check; guint id; gchar *name; const gchar *tag_name; for (check = 0; check < 2; check++) for (i = 0; i < NUM_TAGS; i++) { name = get_tag_by_id(i); id = log_tags_get_by_name(name); test_msg("%s tag %s %d\n", check ? "Checking" : "Adding", name, id); if (id != i) test_fail("Invalid tag id %d %s\n", id, name); g_free(name); } for (i = 0; i < NUM_TAGS; i++) { name = get_tag_by_id(i); tag_name = log_tags_get_by_id(i); test_msg("Looking up tag by id %d %s(%s)\n", i, tag_name, name); if (tag_name) { if (!g_str_equal(tag_name, name)) test_fail("Bad tag name for id %d %s (%s)\n", i, tag_name, name); } else test_fail("Error looking up tag by id %d %s\n", i, name); g_free(name); } for (i = NUM_TAGS; i < (NUM_TAGS + 3); i++) { tag_name = log_tags_get_by_id(i); test_msg("Looking up tag by invalid id %d\n", i); if (tag_name) test_fail("Found tag name for invalid id %d %s\n", i, tag_name); } }
/* NOTE: _init needs to be idempotent when called multiple times w/o invoking _destroy */ void log_source_options_init(LogSourceOptions *options, GlobalConfig *cfg, const gchar *group_name) { gchar *source_group_name; if (options->keep_hostname == -1) options->keep_hostname = cfg->keep_hostname; if (options->chain_hostnames == -1) options->chain_hostnames = cfg->chain_hostnames; if (options->keep_timestamp == -1) options->keep_timestamp = cfg->keep_timestamp; options->group_name = group_name; source_group_name = g_strdup_printf(".source.%s", group_name); options->source_group_tag = log_tags_get_by_name(source_group_name); g_free(source_group_name); host_resolve_options_init(&options->host_resolve_options, cfg); }