metrics

In-process Prometheus text metrics for Gingee. Endpoint: configured path (default /metrics), typically localhost-only. Config: gingee.jsonmetrics Engine-internal (not for sandboxed app require).
Description:
  • In-process Prometheus text metrics for Gingee. Endpoint: configured path (default /metrics), typically localhost-only. Config: gingee.jsonmetrics Engine-internal (not for sandboxed app require).

Members

(inner) config :object

Type:
  • object

(inner, constant) counters

Description:
  • counter name -> Map(labelKey -> number)
counter name -> Map(labelKey -> number)

(inner, constant) gauges

Description:
  • gauge name -> Map(labelKey -> number)
gauge name -> Map(labelKey -> number)

(inner, constant) histograms

Description:
  • histogram name -> Map(labelKey -> { buckets: number[], sum, count })
histogram name -> Map(labelKey -> { buckets: number[], sum, count })

(inner) logger :object|null

Type:
  • object | null

(inner) versionLabel :string

Type:
  • string

Methods

(inner) authorizeRequest(req) → {boolean}

Parameters:
Name Type Description
req object Node HTTP request
Returns:
Type
boolean

(inner) inc(name, labelsopt, deltaopt)

Parameters:
Name Type Attributes Default Description
name string
labels object <optional>
delta number <optional>
1

(inner) initServer(cfg, logRefopt, versionopt)

Parameters:
Name Type Attributes Description
cfg object | null | undefined
logRef object <optional>
version string <optional>

(inner) isAllowedRemote(remoteAddress) → {boolean}

Description:
  • Whether remote address is allowed to scrape metrics.
Parameters:
Name Type Description
remoteAddress string | undefined
Returns:
Type
boolean

(inner) observe(name, labelsopt, seconds)

Description:
  • Observe a duration in seconds.
Parameters:
Name Type Attributes Default Description
name string
labels object <optional>
seconds number 0

(inner) recordHttpRequest(opts)

Description:
  • Record one finished HTTP request (counter + duration histogram).
Parameters:
Name Type Description
opts object
Properties
Name Type Attributes Description
app string <optional>
kind string <optional>
script | static | spa | other
statusCode number <optional>
durationSeconds number <optional>

(inner) refreshDynamicGauges(hooksopt)

Description:
  • Refresh gauges that are polled at scrape time.
Parameters:
Name Type Attributes Description
hooks object <optional>
{ limitsStats, appsCount, schedulerJobs }

(inner) renderPrometheus(hooksopt) → {string}

Description:
  • Render Prometheus exposition format.
Parameters:
Name Type Attributes Description
hooks object <optional>
Returns:
Type
string

(inner) setGauge(name, labelsopt, value)

Parameters:
Name Type Attributes Default Description
name string
labels object <optional>
value number 0

(inner) statusClass(code)

Description:
  • Status class label: 2xx, 3xx, 4xx, 5xx, unknown
Parameters:
Name Type Description
code number

(inner) tryHandleRequest(req, res, hooksopt) → {boolean}

Description:
  • Handle HTTP metrics scrape. Returns true if request was handled.
Parameters:
Name Type Attributes Description
req object Node HTTP request
res object Node HTTP response
hooks object <optional>
Returns:
Type
boolean