Skip to content

Latest commit

 

History

History
87 lines (72 loc) · 4.18 KB

CHANGELOG.md

File metadata and controls

87 lines (72 loc) · 4.18 KB

Prometheus.jl changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

v1.4.1 - 2024-10-23

Fixed

  • Metric names for histogram buckets now correctly appends the _bucket suffix. (#21)

v1.4.0 - 2024-07-12

Changed

  • The public API of Prometheus.jl is now marked public in Julia versions that support it. The public names are: CollectorRegistry, register, unregister, Counter, Gauge, Histogram, Summary, GCCollector, ProcessCollector, inc, dec, set, set_to_current_time, observe, @inprogress, @time, Family, labels, remove, clear, and expose. (#19)

v1.3.0 - 2023-11-29

Added

  • Base.getindex is overloaded for the Prometheus.Family collector to have the same meaning as Prometheus.labels. family[labels] is equivalent to Prometheus.labels(family, labels). (#13)

Fixed

  • The ProcessCollector is now initialized on first use in a given process. This fixes a bug where values cached during precompilation (e.g. system boot time) would be used instead of the current values. (#14)

v1.2.0 - 2023-11-22

Added

  • The fourth basic collector, Histogram, have been added. (#10)

v1.1.0 - 2023-11-13

Added

  • New macro Prometheus.@time collector <expr> for timing <expr> and pass the elapsed time to the collector. <expr> can be a single expression, a block, or a function definition. In the latter case, all calls to the function will be instrumented (no matter the call site). See documentation for more details. (#6)
  • New macro Prometheus.@inprogress collector <expr> to track number of in-progress concurrent evalutations of <expr>. Just like Prometheus.@time, valid <expr>s are single expressions, blocks, and function definitions. See documentation for more details. (#6)
  • New ways to specify label names and label values in Prometheus.Family{C}. Label names can now be passed to the constructor as i) a tuple of strings or symbols, ii) a named tuple type (names used for label names), or iii) a custom struct type (field names used for label names). Similarly, label values (passed to e.g. Prometheus.labels) can be passed as i) tuple of strings, ii) named tuple, iii) struct instance. See documentation for examples and more details. (#7)

v1.0.1 - 2023-11-06

Fixed

  • Fixed verification of metric names and label names.
  • Correctly escape special characters in exposition (specifically help and label values).

v1.0.0 - 2023-11-05

First stable release of Prometheus.jl:

  • Supported basic collectors: Counter, Gauge, Summary
  • GCCollector for metrics about allocations and garbage collection
  • ProcessCollector for process metrics such as CPU time and I/O operations (requires the /proc file system).
  • Support for default and custom collector registries
  • Support for metric labeling
  • Support for exposing metrics to file and over HTTP
  • Support for gzip compression when exposing over HTTP

See README.md for details and documentation.