Skip to content

Commit

Permalink
rel: Prep for release 2.3 (#959)
Browse files Browse the repository at this point in the history
## Which problem is this PR solving?

- Prep release for 2.3

## Short description of the changes

- docs
  • Loading branch information
kentquirk authored Dec 20, 2023
1 parent 175121f commit 884e837
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 0 deletions.
32 changes: 32 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,37 @@
# Refinery Changelog

## 2.3.0 2023-12-20

## Features

- feat: Add `matches` operator to rules (#939) | [Kent Quirk](https://github.com/kentquirk)
- feat: Add Fields option for rules (#949) | [Kent Quirk](https://github.com/kentquirk)
- feat: use a computed field for current descendant count in rules (#950) | [Yingrong Zhao](https://github.com/vinozzZ)
- feat: add sent reason for late arriving spans (#936) | [Yingrong Zhao](https://github.com/vinozzZ)
- docs: Add rule conditions documentation (#951) | [Kent Quirk](https://github.com/kentquirk)
- docs: document stress relief in readme (#955) | [Faith Chikwekwe](https://github.com/fchikwekwe)

## Fixes

- fix: Fix memory size parsing (#944) | [tvdfly](https://github.com/tvdfly)
- fix: handle otlp request with /v1/traces/ path (#933) | [Yingrong Zhao](https://github.com/vinozzZ)

## Maintenance

- maint: Update `firstversion` for 2.2 (#957) | [Kent Quirk](https://github.com/kentquirk)
- maint: update codeowners to pipeline (#937) | [Jamie Danielson](https://github.com/JamieDanielson)
- maint: update codeowners to pipeline-team (#942) | [Jamie Danielson](https://github.com/JamieDanielson)
- maint: update project workflow for pipeline (#938) | [Jamie Danielson](https://github.com/JamieDanielson)
- maint: upload test result to circle ci (#940) | [Yingrong Zhao](https://github.com/vinozzZ)
- maint: use command to check for other commands (#941) | [Robb Kidd](https://github.com/robbkidd)
- docs: Add section on running tests to contributing guide (#953) | [Mike Goldsmith](https://github.com/MikeGoldsmith)
- docs: update doc for release process and config/rules doc generation process (#932) | [Yingrong Zhao](https://github.com/vinozzZ)
- test: Integration tests fail in parallel (#935) | [Kent Quirk](https://github.com/kentquirk)
- test: try to deflake several flaky tests (#934) | [Kent Quirk](https://github.com/kentquirk)
- test: attempt to fix flaky integration tests (#945) | [Yingrong Zhao](https://github.com/vinozzZ)
- test: add deterministic fallback test (#948) | [Faith Chikwekwe](https://github.com/fchikwekwe)
- test: use `t.Setenv` to set env vars in tests (#947) | [Eng Zer Jun](https://github.com/Juneezee)

## 2.2.0 2023-12-04

This is a minor release with several new configuration options and bug fixes, and is recommended for all Refinery users. See [Release Notes](./RELEASE_NOTES.md) for a summary of changes.
Expand Down
20 changes: 20 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,26 @@

While [CHANGELOG.md](./CHANGELOG.md) contains detailed documentation and links to all of the source code changes in a given release, this document is intended to be aimed at a more comprehensible version of the contents of the release from the point of view of users of Refinery.

## Version 2.3.0

This release is mainly focused on some improvements to rules and bug fixes. It is recommended for all Refinery users.

### Rules Improvements

Users of Rules-based samplers have several new features with this release:

* A new `matches` operator can match the contents of fields using a regular expression. The regular expression language supported is the one used by the Go programming language. This will enable certain advanced rules that were previously impossible to achieve. It should be noted that complex regular expressions can be significantly slower than normal comparisons, so use this feature with the appropriate level of caution.
* A new `Fields` parameter may be used in conditions instead of `Field`. This parameter takes a list of field names, and evaluates the rule based on the first name that matches an existing field. This is intended to be used mainly when telemetry field names are changing, to avoid having to create duplicated rules.
* Refinery now supports a "virtual" `Field` called `?.NUM_DESCENDANTS`. This field is evaluated as the current number of descendants in a trace, even if the root span has not arrived. This permits a rule that correctly evaluates the number of spans in a trace even if the trace is exceptionally long-lived. This sort of rule can be used to drop exceptionally large traces to avoid sending them to Honeycomb.
* There is a [new documentation page](rules_conditions.md) in this repository containing detailed information on constructing rule conditions.

### Other Notable Changes

* Previously, spans that arrived after the trace decision had been made were simply marked with `meta.refinery.reason: late`. Now, refinery will remember and attache the reason used when the span decision was made.
* MemorySize parameters in config can now accept a floating point value like `2.5Gb`, which is more compatible with values used in Kubernetes. This should help eliminate bugs in Helm charts.
* OTLP requests to `/v1/traces/` will now be accepted along with `/v1/traces`, which eliminates a minor annoyance when configuring upstream senders.
* There were many improvements to testing and documentation that should improve quality of life for contributors.

## Version 2.2.0

This is a minor release with several new features and bug fixes mostly around config values. This release is recommended for all Refinery users.
Expand Down

0 comments on commit 884e837

Please sign in to comment.