Prometheus v0.15.0 Release Notes
Release Date: 2015-07-21 // almost 9 years ago-
💥 BREAKING CHANGES:
- Relative paths for rule files are now evaluated relative to the config file.
- 🌐 External reachability flags (
-web.*
) consolidated. - 0️⃣ The default storage directory has been changed from
/tmp/metrics
todata
in the local directory. - The
rule_checker
tool has been replaced bypromtool
with different flags and more functionality. - 🚚 Empty labels are now removed upon ingestion into the
storage. Matching empty labels is now equivalent to matching unset
labels (
mymetric{label=""}
now matches series that don't havelabel
set at all). - The special
__meta_consul_tags
label in Consul service discovery now starts and ends with tag separators to enable easier regex matching. - 0️⃣ The default scrape interval has been changed back from 1 minute to 10 seconds.
All changes:
- 0️⃣ [CHANGE] Change default storage directory to
data
in the current working directory. - 🌐 [CHANGE] Consolidate external reachability flags (
-web.*
)into one. - 🗄 [CHANGE] Deprecate
keeping_extra
modifier keyword, rename it tokeep_common
. - 🐎 [CHANGE] Improve label matching performance and treat unset labels like empty labels in label matchers.
- 🚚 [CHANGE] Remove
rule_checker
tool and add genericpromtool
CLI tool which allows checking rules and configuration files. - [CHANGE] Resolve rule files relative to config file.
- ⏪ [CHANGE] Restore default ScrapeInterval of 1 minute instead of 10 seconds.
- [CHANGE] Surround
__meta_consul_tags
value with tag separators. - ⚡️ [CHANGE] Update node disk console for new filesystem labels.
- [FEATURE] Add Consul's
ServiceAddress
,Address
, andServicePort
as meta labels to enable setting a custom scrape address if needed. - [FEATURE] Add
hashmod
relabel action to allow for horizontal sharding of Prometheus servers. - 🔧 [FEATURE] Add
honor_labels
scrape configuration option to not overwrite any labels exposed by the target. - 👍 [FEATURE] Add basic federation support on
/federate
. - [FEATURE] Add optional
RUNBOOK
field to alert statements. - [FEATURE] Add pre-relabel target labels to status page.
- [FEATURE] Add version information endpoint under
/version
. - [FEATURE] Added initial stable API version 1 under
/api/v1
, including ability to delete series and query more metadata. - 🔧 [FEATURE] Allow configuring query parameters when scraping metrics endpoints.
- [FEATURE] Allow deleting time series via the new v1 API.
- [FEATURE] Allow individual ingested metrics to be relabeled.
- [FEATURE] Allow loading rule files from an entire directory.
- [FEATURE] Allow scalar expressions in range queries, improve error messages.
- 👍 [FEATURE] Support Zookeeper Serversets as a service discovery mechanism.
- 🏗 [ENHANCEMENT] Add circleci yaml for Dockerfile test build.
- [ENHANCEMENT] Always show selected graph range, regardless of available data.
- [ENHANCEMENT] Change expression input field to multi-line textarea.
- [ENHANCEMENT] Enforce strict monotonicity of time stamps within a series.
- 🏗 [ENHANCEMENT] Export build information as metric.
- 💻 [ENHANCEMENT] Improve UI of
/alerts
page. - [ENHANCEMENT] Improve display of target labels on status page.
- 🌐 [ENHANCEMENT] Improve initialization and routing functionality of web service.
- [ENHANCEMENT] Improve target URL handling and display.
- 🐳 [ENHANCEMENT] New dockerfile using alpine-glibc base image and make.
- 🛠 [ENHANCEMENT] Other minor fixes.
- [ENHANCEMENT] Preserve alert state across reloads.
- [ENHANCEMENT] Prettify flag help output even more.
- ⚡️ [ENHANCEMENT] README.md updates.
- 🚩 [ENHANCEMENT] Raise error on unknown config parameters.
- [ENHANCEMENT] Refine v1 HTTP API output.
- 🔧 [ENHANCEMENT] Show original configuration file contents on status page instead of serialized YAML.
- 🚦 [ENHANCEMENT] Start HUP signal handler earlier to not exit upon HUP during startup.
- ⚡️ [ENHANCEMENT] Updated vendored dependencies.
- 🛠 [BUGFIX] Do not panic in
StringToDuration()
on wrong duration unit. - 🛠 [BUGFIX] Exit on invalid rule files on startup.
- 🛠 [BUGFIX] Fix a regression in the
.Path
console template variable. - 🛠 [BUGFIX] Fix chunk descriptor loading.
- 🛠 [BUGFIX] Fix consoles "Prometheus" link to point to /
- 🛠 [BUGFIX] Fix empty configuration file cases
- 🛠 [BUGFIX] Fix float to int conversions in chunk encoding, which were broken for some architectures.
- 🛠 [BUGFIX] Fix overflow detection for serverset config.
- 🛠 [BUGFIX] Fix race conditions in retrieval layer.
- 🛠 [BUGFIX] Fix shutdown deadlock in Consul SD code.
- 🛠 [BUGFIX] Fix the race condition targets in the Makefile.
- 🛠 [BUGFIX] Fix value display error in web console.
- 🛠 [BUGFIX] Hide authentication credentials in config
String()
output. - 🛠 [BUGFIX] Increment dirty counter metric in storage only if
setDirty(true)
is called. - 🛠 [BUGFIX] Periodically refresh services in Consul to recover from missing events.
- 🛠 [BUGFIX] Prevent overwrite of default global config when loading a configuration.
- 🛠 [BUGFIX] Properly lex
\r
as whitespace in expression language. - 🛠 [BUGFIX] Validate label names in JSON target groups.
- 🛠 [BUGFIX] Validate presence of regex field in relabeling configurations.
- [CLEANUP] Clean up initialization of remote storage queues.
- 👕 [CLEANUP] Fix
go vet
andgolint
violations. - [CLEANUP] General cleanup of rules and query language code.
- 🏗 [CLEANUP] Improve and simplify Dockerfile build steps.
- 🏗 [CLEANUP] Improve and simplify build infrastructure, use go-bindata for web assets. Allow building without git.
- 📦 [CLEANUP] Move all utility packages into common
util
subdirectory. - 🔨 [CLEANUP] Refactor main, flag handling, and web package.
- 🚚 [CLEANUP] Remove unused methods from
Rule
interface. - 0️⃣ [CLEANUP] Simplify default config handling.
- 💻 [CLEANUP] Switch human-readable times on web UI to UTC.
- [CLEANUP] Use
templates.TemplateExpander
for all page templates. - [CLEANUP] Use new v1 HTTP API for querying and graphing.