Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev dependency update: prom-client #28

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 16, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
prom-client 12.0.0 -> 15.0.0 age adoption passing confidence

Release Notes

siimon/prom-client (prom-client)

v15.0.0

Compare Source

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 in lib/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

Compare Source

Changed
  • Refactor getMetricAsPrometheusString method in the Registry class to use Array.prototype.join
    instead of loop of string concatenations.
  • Also use Array.prototype.map, and object spread instead of an explicit for loop
  • changed: updated the sample output in example/default-metrics.js
  • summary metrics now has a pruneAgedBuckets config parameter
    to remove entries without any new values in the last maxAgeSeconds.
    Default is false (old behavior)
Added
  • Add get method to type definitions of metric classes

v14.1.1

Compare Source

Changed
  • Increase compatibility with external build system such as rollup by making perf_hooks optional in gc.js

v14.1.0

Compare Source

Changed
  • types: converted all the generic Metric types to be optional

  • The done() functions returned by gauge.startTimer() and
    summary.startTimer() now return the timed duration. Histograms already had
    this behavior.

  • types: fixed type for registry.getMetricsAsArray()

  • Improve performance of gague.inc() and gauge.dec() by calling hashObject() 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 the processHandles and
      processRequests 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

Compare Source

Changed
  • changed: typedef for pushgateway to reflect js implementation.

v14.0.0

Compare Source

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() and delete() 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' });

    f177b1f

  • 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
  • Add missing await/thens to examples. 074f339
  • Add missing type declaration for client.contentType. 3b66641
  • Modernize some label processing code. c9bf1d8

v13.2.0

Compare Source

Changed
  • Don't add event listener to process if cluster module is not used.
  • fix: set labels for default memory metrics on linux.
  • fix: fix DEP0152 deprecation warning in Node.js v16+.
  • fix: Set aggregation mode for newer event loop metrics. (Fixes #​418)
  • Improve performance of/reduce memory allocations in Gauge.
Added
  • feat: added zero() to Histogram for setting the metrics for a given label combination to zero
  • fix: allow Gauge.inc/dec(0) without defaulting to 1

v13.1.0

Compare Source

Changed
  • fix: push client attempting to write Promise (fixes #​390)
  • types: improve type checking of labels
  • fix: Summary#observe should throw when adding additional labels to labelset (fixes #​262)
Added
  • feat: added the ability to pass labels as an object to labels() and remove()
  • Added: More examples with commented output

v13.0.0

Compare Source

Breaking
  • changed: The following functions are now async (return a promise):
    registry.metrics()
    registry.getMetricsAsJSON()
    registry.getMetricsAsArray()
    registry.getSingleMetricAsString()

    If your metrics server has a line like res.send(register.metrics()), you
    should change it to res.send(await register.metrics()).

    Additionally, all metric types now accept an optional collect function,
    which is called when the metric's value should be collected and within which
    you should set the metric's value. You should provide a collect function for
    point-in-time metrics (e.g. current memory usage, as opposed to HTTP request
    durations that are continuously logged in a histogram).

  • changed: register.clusterMetrics() no longer accepts a callback; it only
    returns a promise.

  • removed: v12.0.0 added the undocumented functions registry.registerCollector
    and registry.collectors(). These have been removed. If you were using them,
    you should instead provide a collect function as described above.

Changed
  • fix: provide nodejs_version_info metric value after calling registry.resetMetrics() (#​238)
  • fix: provide process_max_fds metric value after calling registry.resetMetrics()
  • fix: provide process_start_time_seconds metric value after calling registry.resetMetrics()
  • chore: improve performance of registry.getMetricAsPrometheusString
  • chore: refactor metrics to reduce code duplication
  • chore: replace utils.getPropertiesFromObj with Object.values
  • chore: remove unused catch bindings
  • chore: upgrade Prettier to 2.x
  • fix: startTimer returns number in typescript instead of void
  • fix: incorrect typings of `registry.getSingleMetric' (#​388)
  • chore: stop testing node v13 on CI
Added
  • feat: exposed registry.registerCollector() and registry.collectors() methods in TypeScript declaration
  • Added: complete working example of a pushgateway push in example/pushgateway.js
  • feat: added support for adding labels to default metrics (#​374)
  • Added CHANGELOG reminder

Configuration

📅 Schedule: Branch creation - "before 4am on monday" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

Copy link
Contributor Author

renovate bot commented Nov 8, 2023

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants