diff --git a/addons/promex/service-prometheus.c b/addons/promex/service-prometheus.c index 0cd5a6c0f..a09fa8730 100644 --- a/addons/promex/service-prometheus.c +++ b/addons/promex/service-prometheus.c @@ -36,6 +36,7 @@ #include #include #include +#include #include #include #include @@ -347,6 +348,10 @@ static int promex_dump_ts(struct appctx *appctx, struct ist prefix, istcat(&n, prefix, PROMEX_MAX_NAME_LEN); istcat(&n, name, PROMEX_MAX_NAME_LEN); + /* In stress mode, force yielding on each metric. */ + if (STRESS_RUN1(istlen(*out), 0)) + goto full; + if ((ctx->flags & PROMEX_FL_METRIC_HDR) && !promex_dump_ts_header(n, desc, type, out, max)) goto full;