18 lines
506 B
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
|