]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
stats: Add transport_context for exporter
authorAki Tuomi <aki.tuomi@open-xchange.com>
Wed, 4 Oct 2023 11:41:21 +0000 (14:41 +0300)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Mon, 30 Oct 2023 06:29:29 +0000 (06:29 +0000)
Can be used by transporters

src/stats/event-exporter.h
src/stats/stats-metrics.c
src/stats/stats-metrics.h

index 64bb70844c080e6445eb1b4776054bd1e0ce6c20..2d6c94f74665e94beea840d6a3efe2d3bfef4e55 100644 (file)
@@ -28,4 +28,8 @@ void event_export_helper_fmt_categories(string_t *dest,
                                        void (*append)(string_t *, const char *),
                                        const char *separator);
 
+/* assign transport context to a event exporter */
+void event_export_transport_assign_context(const struct exporter *exporter,
+                                          void *context);
+
 #endif
index 96dca8be2b30607730f093447c918eae1c299e08..4fd2f3a1bbd6628900ae49711a95589f79c4b64f 100644 (file)
@@ -81,6 +81,13 @@ static void stats_exporters_add_set(struct stats_metrics *metrics,
        array_push_back(&metrics->exporters, &exporter);
 }
 
+void event_export_transport_assign_context(const struct exporter *exporter,
+                                          void *context)
+{
+       struct exporter *ptr = (struct exporter *)exporter;
+       ptr->transport_context = context;
+}
+
 static struct metric *
 stats_metric_alloc(pool_t pool, const char *name,
                   const struct stats_metric_settings *set,
index 5cd0d7e230358ff5799fc46e66b95a6fba5180e5..a4df53a320442023238f40dbd9978b14cf9838af 100644 (file)
@@ -35,6 +35,7 @@ struct exporter {
         */
        const char *transport_args;
        unsigned int transport_timeout;
+       void *transport_context;
 
        /* function to send the event */
        void (*transport)(const struct exporter *, const buffer_t *);