Update dependency prom-client to v15
This MR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
prom-client | ^13.1.0 -> ^15.0.0 |
Release Notes
siimon/prom-client (prom-client)
v15.1.3
Changed
- Improve error message when number of registered labels mismatch with the number of labels provided
v15.1.2
Changed
- Add
Registry.PROMETHEUS_CONTENT_TYPE
andRegistry.OPENMETRICS_CONTENT_TYPE
constants to the TypeScript types - Correctly read and set
contentType
top level export
Added
- Enable
bun.js
by catchingNotImplemented
error (Fixes #570)
v15.1.1
Changed
- Improve the memory usage of histograms when the
enableExemplars
option is disabled - fix: Avoid updating exemplar values during subsequent metric changes (Fixes #616)
v15.1.0
Changed
- remove unnecessary loop from
osMemoryHeapLinux
- Improve performance of
hashObject
by using pre-sorted array of label names - Fix type of
collectDefaultMetrics.metricsList
Added
- Allow Pushgateway to now require job names for compatibility with Gravel Gateway.
- Allow
histogram.startTime()
to be used with exemplars.
v15.0.0
Breaking
- drop support for Node.js versions 10, 12, 14, 17 and 19
Changed
- Refactor histogram internals and provide a fast path for rendering metrics to Prometheus strings when there are many labels shared across different values.
- Disable custom content encoding for pushgateway delete requests in order to
avoid failures from the server when using
Content-Encoding: gzip
header. - Refactor
escapeString
helper inlib/registry.js
to improve performance and avoid an unnecessarily complex regex. - Cleanup code and refactor to be more efficient
- Correct TS types for working with OpenMetrics
- Updated Typescript and Readme docs for
setToCurrentTime()
to reflect units as seconds. - Do not ignore error if request to pushgateway fails
- Make sure to reject the request to pushgateway if it times out
Added
- Support for OpenMetrics and Exemplars
v14.2.0
Changed
- Refactor
getMetricAsPrometheusString
method in theRegistry
class to useArray.prototype.join
instead of loop of string concatenations. - Also use
Array.prototype.map
, and object spread instead of an explicitfor
loop - changed: updated the sample output in
example/default-metrics.js
-
summary
metrics now has apruneAgedBuckets
config parameter to remove entries without any new values in the lastmaxAgeSeconds
. Default isfalse
(old behavior)
Added
- Add
get
method to type definitions of metric classes
v14.1.1
Changed
- Increase compatibility with external build system such as
rollup
by making perf_hooks optional in gc.js
v14.1.0
Changed
-
types: converted all the generic Metric types to be optional
-
The
done()
functions returned bygauge.startTimer()
andsummary.startTimer()
now return the timed duration. Histograms already had this behavior. -
types: fixed type for
registry.getMetricsAsArray()
-
Improve performance of
gague.inc()
andgauge.dec()
by callinghashObject()
once.
Added
-
The
processResources
metric was added, which keeps a track of all sorts of active resources. It consists of the following gauges:-
nodejs_active_resources
- Number of active resources that are currently keeping the event loop alive, grouped by async resource type. -
nodejs_active_resources_total
- Total number of active resources. It is supposed to provide the combined result of theprocessHandles
andprocessRequests
metrics along with information about any other types of async resources that these metrics do not keep a track of (like timers).
-
-
Support gzipped pushgateway requests
v14.0.1
Changed
- changed: typedef for pushgateway to reflect js implementation.
v14.0.0
Breaking
-
changed:
linearBuckets
does not propagate rounding errors anymore.Fewer bucket bounds will be affected by rounding errors. Histogram bucket labels may change.
6f1f3b2
-
changed: The push gateway methods
pushAdd()
,push()
anddelete()
now return Promises instead of accepting a callback:// Old: gateway.pushAdd({ jobName: 'test' }, (err, resp, body) => {}); // New: gateway .pushAdd({ jobName: 'test' }) .then(({ resp, body }) => {}) .catch(err => {}); // or const { resp, body } = await gateway.pushAdd({ jobName: 'test' });
-
changed: The default
nodejs_eventloop_lag_*
metrics are now reset every time they are observed. This prevents these metrics from "stabilizing" over a long period of time and becoming insensitive to small changes. For more info, see #370.0f444cd
Changed
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.