UNPKG

@promster/server

Version:

Server exposing metrics under GET /metrics

29 lines (28 loc) 862 B
import { createServer as createServer$1 } from "node:http"; import { getContentType, getSummary, skipMetricsInEnvironment } from "@promster/metrics"; //#region src/server/server.ts const defaultOptions = { port: 7788, hostname: "0.0.0.0", detectKubernetes: false }; const createServer = async (options) => { const defaultedOptions = { ...defaultOptions, ...options }; const server = createServer$1(async (_req, res) => { res.writeHead(200, "OK", { "content-type": getContentType() }); res.end(await getSummary()); }); return new Promise((resolve, reject) => { const port = skipMetricsInEnvironment(defaultedOptions) ? void 0 : defaultedOptions.port; server.listen(port, defaultedOptions.hostname, () => { server.on("error", reject); resolve(server); }); }); }; //#endregion export { createServer }; //# sourceMappingURL=index.js.map