Files
factorio-prometheus-exporter/prometheus-exporter/utils/prometheus.lua

18 lines
506 B
Lua

local M = {}
--- Formats a name + table of labels as a Prometheus metric
--- @param name string
--- @param suffix string
--- @param labels table
--- @param value number
function M.counter(name, suffix, labels, value)
local label_parts = {}
for k, v in pairs(labels) do
table.insert(label_parts, string.format('%s="%s"', k, v))
end
local label_str = table.concat(label_parts, ",")
return string.format("factorio_%s_total%s{%s} %d", name, suffix, label_str, value)
end
return M