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

Upgrade to refinery version 2.8.1 #5

Open
wants to merge 146 commits into
base: build-fix
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
146 commits
Select commit Hold shift + click to select a range
4deed27
maint: attempt to fix flaky integration tests (#945)
VinozzZ Dec 13, 2023
40738a8
test: add deterministic fallback test (#948)
fchikwekwe Dec 13, 2023
97751f3
feat: add sent reason for late arriving spans (#936)
VinozzZ Dec 13, 2023
85202f8
test: use `t.Setenv` to set env vars in tests (#947)
Juneezee Dec 13, 2023
ab6268c
feat: Add Fields option for rules (#949)
kentquirk Dec 14, 2023
637dd20
feat: use a computed field for current descendant count in rules (#950)
VinozzZ Dec 14, 2023
78c832b
fix: Fix memory size parsing (#944)
tvdfly Dec 18, 2023
5eda8fb
docs: Add section on running tests to contributing guide (#953)
MikeGoldsmith Dec 18, 2023
3048734
docs: Add rule conditions documentation (#951)
kentquirk Dec 18, 2023
b11d36b
chore: document stress relief in readme (#955)
fchikwekwe Dec 19, 2023
175121f
chore: Update `firstversion` for 2.2 (#957)
kentquirk Dec 20, 2023
884e837
rel: Prep for release 2.3 (#959)
kentquirk Dec 20, 2023
509786f
maint: bump Husky (#966)
kentquirk Jan 11, 2024
63e6e81
maint: bump deps for 2.4 (#968)
fchikwekwe Jan 13, 2024
451d00e
fix: allow config bools to default to true (#969)
robbkidd Jan 25, 2024
cf0e805
maint: create generic set and use it (#976)
kentquirk Jan 25, 2024
82a4c0d
maint: Refactor cuckoo cache for reusability (#975)
VinozzZ Jan 25, 2024
d3f9b39
docs: include a warning about surprising not-exists behavior (#979)
robbkidd Feb 1, 2024
52c5f08
chore: fix license tracking (#989)
robbkidd Feb 2, 2024
dcd4764
chore: Revert "chore: fix license tracking (#989)" (#990)
robbkidd Feb 2, 2024
5a4fae7
chore: consolidate routine dependency updates (#994)
robbkidd Feb 13, 2024
5a97440
fix: flaky TestOriginalSampleRateIsNotedInMetaField (#991)
robbkidd Feb 14, 2024
80fc7da
docs: Add sampler default intervals to docs (#995)
MikeGoldsmith Feb 14, 2024
9badb67
feat: allow user to sample on root span context (#981)
fchikwekwe Feb 20, 2024
5730965
docs: update refinery docs (#1000)
fchikwekwe Feb 20, 2024
430fcbf
chore: prep refinery 2.4 release (#1001)
fchikwekwe Feb 20, 2024
23fac40
refactor: add default true type (#998)
fchikwekwe Feb 21, 2024
bc45a09
fix: handle root prefix when no root span on trace (#1006)
fchikwekwe Feb 23, 2024
ecef721
fix: Fix a typo from PR #1006 (#1007)
rkhoriander Feb 23, 2024
e1186ea
rel: prepare v2.4.1 (#1012)
robbkidd Feb 26, 2024
6f5aef9
fix: Fix OTLP http responses (#1010)
TylerHelmuth Feb 28, 2024
3e69344
rel: prepare v2.4.2 (#1017)
robbkidd Feb 28, 2024
25a474e
maint: Update Husky to handle invalid content type errors (#1019)
MikeGoldsmith Mar 1, 2024
f56f63c
rel: prepare v2.4.3 (#1029)
robbkidd Mar 1, 2024
75ffeaf
maint: group minor/patch dep updates (#1028)
codeboten Mar 1, 2024
9ffd911
maint(deps): bump the minor-patch group with 12 updates (#1030)
dependabot[bot] Mar 1, 2024
af38960
fix: Support 'none' as a logger type (#1034)
kentquirk Mar 5, 2024
731657c
maint: add labels to release.yml for auto-generated grouping (#1042)
JamieDanielson Mar 6, 2024
4558dac
feat: support Classic Ingest Keys (#1043)
jharley Mar 7, 2024
7bd258f
feat: Shortcut evaluation of rules containing 'root.' (#1018)
kentquirk Mar 7, 2024
6be586d
fix: `defaulttrue` now shows up in docs as `bool` (#1045)
kentquirk Mar 9, 2024
01a576f
fix: change validation type for PeerManagement.Peers to be url (#1046)
VinozzZ Mar 11, 2024
3bf4232
feat: new metric for drops caused by rules (#1047)
kentquirk Mar 11, 2024
b3b3379
rel: License fixes and prep for v2.5.0 (#1049)
kentquirk Mar 12, 2024
22d0eca
maint: Bump protobuf (#1058)
kentquirk Mar 15, 2024
8254ed0
fix: deal with locking issues at startup (#1060)
kentquirk Mar 19, 2024
d42a9f3
fix: Add validation for ingest keys (#1066)
kentquirk Mar 22, 2024
36b6fc7
maint(deps): bump the minor-patch group with 4 updates (#1073)
dependabot[bot] Apr 4, 2024
bd3c107
fix: Clarify what has-root-span does (#1114)
cartermp May 3, 2024
8c810d6
fix: Update cache lookup to use read lock (#1145) (#1146)
MikeGoldsmith May 15, 2024
4bb5695
rel: Prepare 2.5.1 release (#1147)
MikeGoldsmith May 15, 2024
636f03b
fix: correct race condition in OTel metrics (#1165)
kentquirk May 22, 2024
5e4bcf5
rel: prep v2.5.2 (#1166)
kentquirk May 22, 2024
1067c56
maint: bump Husky to v0.30.0 (#1190)
TylerHelmuth Jun 5, 2024
dc11e02
maint: bump libhoney-go to v1.23.0 (#1192)
MikeGoldsmith Jun 10, 2024
a1088e7
feat: Add OTLP log endpoints (gRPC & HTTP) (#1187)
MikeGoldsmith Jun 11, 2024
9e03f2f
maint: Bump libhoney-go to v1.23.1 (#1200)
MikeGoldsmith Jun 13, 2024
59418df
feat: Allow URL encoded dataset in libhoney endpoint paths (#1199)
MikeGoldsmith Jun 17, 2024
1d1635a
rel: Prepare v2.6.0 release (#1207)
MikeGoldsmith Jun 17, 2024
4260ba8
maint(deps): bump the minor-patch group with 9 updates (#1198)
dependabot[bot] Jun 17, 2024
eb76cf4
fix: Don’t consider log events as root spans (#1208)
MikeGoldsmith Jun 17, 2024
aefec0b
rel: Prepare v2.6.1 release (#1209)
MikeGoldsmith Jun 17, 2024
07202af
feat: Add some useful generics (#1206)
kentquirk Jun 18, 2024
4a7077d
feat: track config hash on config reload (#1212)
VinozzZ Jun 20, 2024
6536ea8
feat: Working, tested, but unused pubsub system (#1205)
kentquirk Jun 21, 2024
b658cf7
feat: add otel tracing support for Refinery internal operations (#1218)
VinozzZ Jul 2, 2024
a19e3f9
fix: Change pubsub interface to use callbacks. (#1217)
kentquirk Jul 2, 2024
ef992e4
fix: allow sending otel tracing to non honeycomb backend (#1219)
VinozzZ Jul 3, 2024
f8d7c17
feat: peer management on pubsub via callbacks (#1220)
kentquirk Jul 3, 2024
e4c23d2
docs: update vulnerability reporting process (#1224)
robbkidd Jul 15, 2024
8f61ee8
feat: Add metrics to pubsub and peers (#1226)
kentquirk Jul 17, 2024
876d8c5
maint: Add jitter to peer traffic, fix startup (#1227)
kentquirk Jul 17, 2024
c33fcf1
maint: change targeted arch to arm for local development Dockerfile (…
VinozzZ Jul 17, 2024
e14d0c1
feat: Health/Ready system imported from R3 (#1231)
kentquirk Jul 17, 2024
b5d3715
maint(deps): bump google.golang.org/grpc from 1.64.0 to 1.64.1 (#1223)
dependabot[bot] Jul 17, 2024
28665ef
maint: add instrumentation for GoRedisPubSub (#1229)
VinozzZ Jul 18, 2024
3af0b4e
maint(deps): bump the minor-patch group across 1 directory with 9 upd…
dependabot[bot] Jul 18, 2024
923c010
fix: Root spans must have a non-empty parent ID field (#1236)
MikeGoldsmith Jul 18, 2024
e3e9a9f
fix: make sure to inject Health object as a pointer (#1237)
VinozzZ Jul 18, 2024
023fe0f
fix: remove otel-config-go as a dependency (#1240)
VinozzZ Jul 22, 2024
aaa6d9b
fix: add peer logging, add debug log of peers (#1239)
kentquirk Jul 23, 2024
8c96628
feat: use pub/sub for stress relief (#1221)
VinozzZ Jul 23, 2024
b57bec3
fix: make sure stress relief pub/sub topic is consistent (#1245)
VinozzZ Jul 23, 2024
bd6b9c1
maint: Update licenses (#1244)
TylerHelmuth Jul 24, 2024
829d38a
feat: gossip config reload information (#1241)
kentquirk Jul 24, 2024
629f70a
fix: add injection tags for configwatcher (#1246)
VinozzZ Jul 24, 2024
865c884
docs: Tweak docs for reload (#1247)
kentquirk Jul 24, 2024
f44e532
fix: reduce pub/sub messages from stress relief (#1248)
VinozzZ Jul 24, 2024
ac17328
maint: update doc based on config changes (#1243)
VinozzZ Jul 24, 2024
255a6a3
fix: sharder should use peer identity from Peers package (#1249)
VinozzZ Jul 25, 2024
9995440
fix: clean up a print line (#1250)
VinozzZ Jul 25, 2024
3ea3107
fix: Record hashes at startup in metrics (#1252)
kentquirk Jul 26, 2024
31d2ce2
fix: FilePeers implies no Redis (#1251)
kentquirk Jul 26, 2024
38883ff
fix: remove personal api keys (#1253)
kentquirk Jul 26, 2024
fa870c1
maint: last changes before the final release prep (#1254)
kentquirk Jul 26, 2024
70781b0
fix: allow a single node to activate stress relief mode during signif…
VinozzZ Jul 26, 2024
e24f371
rel: prep 2.7 release (#1255)
kentquirk Jul 29, 2024
086f6bd
refactor: Remove error returns from config functions, fix tests. (#1259)
kentquirk Jul 31, 2024
32a662f
feat: unregister peer asap on shutdown (#1260)
VinozzZ Aug 1, 2024
9a66d1d
maint(deps): bump the minor-patch group with 4 updates (#1262)
dependabot[bot] Aug 2, 2024
ef21c5e
feat: Allow more complex key behavior (#1263)
kentquirk Aug 7, 2024
41ca9d1
docs: fix CacheCapacity documentation (#1267)
kentquirk Aug 9, 2024
8bbdda7
feat: redistribute remaining traces during shutdown (#1261)
VinozzZ Aug 9, 2024
5005bb0
feat: Add SpanLimit (includes some config changes) (#1266)
kentquirk Aug 12, 2024
24436a5
fix: Use HTTP/2 for all upstream and peer-to-peer connections (#1269)
irvingpop Aug 13, 2024
1aad5b2
feat: redistribute traces on peer membership changes (#1268)
VinozzZ Aug 14, 2024
74d602c
fix: SpanLimit shouldn't add SendDelay (#1272)
kentquirk Aug 14, 2024
039babc
fix: record sample rate in decision cache during stress relief (#1273)
VinozzZ Aug 14, 2024
244e0e4
feat: allow root. in field list for dynamic sampler (#1275)
VinozzZ Aug 15, 2024
d147025
fix: allow draining traces even if only 1 peer left (#1278)
VinozzZ Aug 15, 2024
cde0584
fix: don't read more than max bytes from a request (#1276) (#1282)
kentquirk Aug 15, 2024
6e99675
fix: set up tls for redis when it's enabled
VinozzZ Aug 16, 2024
e6310cd
log error when pubsub fail to publish peer information
VinozzZ Aug 16, 2024
e14617a
fix: record previous value of sampler counter metrics so they report …
kentquirk Aug 19, 2024
faa1375
maint: change default for MaxSendMsgSize and MaxRcvMsgSize. (#1289)
kentquirk Aug 19, 2024
a070610
fix: only set send reason to span limit if it's configured (#1290)
VinozzZ Aug 19, 2024
3084f98
maint: use non-forked cuckoofilter again (#1287)
kentquirk Aug 19, 2024
0a79fb4
fix: support TLS connections to Redis (#1285)
VinozzZ Aug 16, 2024
1fd7b9b
Merge branch 'main' into yingrong.setup_tls
VinozzZ Aug 19, 2024
91ee53f
fix: set up tls for redis when it's enabled
VinozzZ Aug 16, 2024
8421f6d
fix: support TLS connections to Redis (#1285)
VinozzZ Aug 16, 2024
6e40e4c
Merge branch 'yingrong.setup_tls' of github.com:honeycombio/refinery …
VinozzZ Aug 19, 2024
d4e7bbf
Merge pull request #1284 from honeycombio/yingrong.setup_tls
VinozzZ Aug 19, 2024
0f7f6f5
maint: add a docker'd Redis TLS local setup (#1291)
robbkidd Aug 21, 2024
a3e9090
maint: Delete unused Dockerfile (#1292)
TylerHelmuth Aug 22, 2024
c87cc15
maint: Add warning about cli flags (#1293)
TylerHelmuth Aug 22, 2024
2cc0574
feat: support configure refinery to use redis in cluster mode (#1294)
VinozzZ Aug 22, 2024
9f5ea80
feat: Add a cache to the cache (#1296)
kentquirk Aug 22, 2024
7c56f56
fix: use trace.DescendantCount for span limit (#1297)
VinozzZ Aug 22, 2024
ea810a5
fix: escape use input in debug route (#1299)
TylerHelmuth Aug 26, 2024
8317a10
feat: support layered (multiple) configuration files (#1301)
kentquirk Aug 29, 2024
0c38e22
feat: add IN operator (#1302)
kentquirk Aug 30, 2024
51d9c7d
fix: use float histogram for otel metrics (#1303)
kentquirk Aug 30, 2024
8e6413d
maint(deps): bump the minor-patch group with 13 updates (#1304)
dependabot[bot] Sep 3, 2024
5c27d84
fix: join peer list only after refinery is ready to accept traffic (#…
VinozzZ Sep 4, 2024
34734d2
maint: Add some extra logging to pubsub systems (#1308)
kentquirk Sep 4, 2024
26814ac
fix: revert "Use HTTP/2 for all upstream and peer-to-peer connections…
kentquirk Sep 4, 2024
290152a
fix: revert the revert -- that wasn't the problem (#1311)
kentquirk Sep 4, 2024
8cb02d6
fix: periodically clean up recent_dropped_traces cache (#1312)
VinozzZ Sep 4, 2024
4a6e335
docs: updates for Refinery 2.8 (#1307)
kentquirk Sep 5, 2024
fe0b7bb
docs: Sync Refinery docs content for 2.8 (#1313)
mjingle Sep 5, 2024
f619706
rel: Release notes and prep for 2.8 (#1295)
kentquirk Sep 5, 2024
952168c
fix: load peer list in sharder once manually on startup (#1314)
VinozzZ Sep 5, 2024
135e46d
rel: Prep 2.8.1 (#1315)
kentquirk Sep 5, 2024
9c5ca72
update to v2.8.1
somtochiama Sep 9, 2024
5d6afe2
make 2.8.1 work with fly-dns
somtochiama Sep 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ commands:
jobs:
test:
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
- image: redis:6.2
steps:
- checkout
Expand All @@ -92,7 +92,7 @@ jobs:

build_binaries:
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
steps:
- checkout
- go-build:
Expand Down Expand Up @@ -183,7 +183,7 @@ jobs:

build_docker:
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
steps:
- setup_googleko
- checkout
Expand All @@ -194,7 +194,7 @@ jobs:

publish_docker_to_ecr:
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
steps:
- setup_googleko
- checkout
Expand All @@ -217,7 +217,7 @@ jobs:

publish_docker_to_dockerhub:
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
steps:
- setup_googleko
- checkout
Expand Down
5 changes: 5 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ updates:
- "type: dependencies"
reviewers:
- "honeycombio/collection-team"
groups:
minor-patch:
update-types:
- "minor"
- "patch"
commit-message:
prefix: "maint"
include: "scope"
4 changes: 3 additions & 1 deletion .github/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ changelog:
- title: 🛠 Maintenance
labels:
- "type: maintenance"
- "type: dependencies"
- "type: documentation"
- title: 🤷 Other Changes
labels:
- "*"
- "*"
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,6 @@ dockerize*
.idea/

.DS_Store

# redis dump file
*.rdb
1 change: 1 addition & 0 deletions .tool-versions
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
golang 1.21.8
292 changes: 282 additions & 10 deletions CHANGELOG.md

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,14 @@ at the root of the Refinery directory.

`go run ./cmd/refinery/main.go -c config_complete.yaml -r rules_complete.yaml`

# Running Refinery tests locally

Tests require a local installation of redis. See [here](https://redis.io/docs/install/install-stack) for how to get it running.

You can run Refinery tests by running the command below at the root of the Refinery directory.

`make test`

# Making changes to configuration code

With the new configuration format redesign in v2.0.0, the workflow for making a configuration requires the following steps:
Expand Down
21 changes: 21 additions & 0 deletions LICENSES/github.com/dgryski/go-rendezvous/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
The MIT License (MIT)

Copyright (c) 2017-2020 Damian Gryski <[email protected]>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
177 changes: 0 additions & 177 deletions LICENSES/github.com/gomodule/redigo/redis/LICENSE

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
Copyright 2010 The Go Authors. All rights reserved.
Copyright (c) 2009,2014 Google Inc. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

Expand All @@ -25,4 +25,3 @@ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

2 changes: 1 addition & 1 deletion LICENSES/github.com/gorilla/mux/LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2012-2018 The Gorilla Authors. All rights reserved.
Copyright (c) 2023 The Gorilla Authors. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Apache License
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,13 +1,3 @@
PACKAGE

package goautoneg
import "bitbucket.org/ww/goautoneg"

HTTP Content-Type Autonegotiation.

The functions in this package implement the behaviour specified in
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html

Copyright (c) 2011, Open Knowledge Foundation Ltd.
All rights reserved.

Expand Down Expand Up @@ -39,29 +29,3 @@ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


FUNCTIONS

func Negotiate(header string, alternatives []string) (content_type string)
Negotiate the most appropriate content_type given the accept header
and a list of alternatives.

func ParseAccept(header string) (accept []Accept)
Parse an Accept Header string returning a sorted list
of clauses


TYPES

type Accept struct {
Type, SubType string
Q float32
Params map[string]string
}
Structure to represent a clause in an HTTP Accept Header


SUBDIRECTORIES

.hg
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
Copyright (c) 2019 The github.com/vmihailenco/tagparser Authors.
All rights reserved.
Copyright (c) 2013 The Go Authors. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
Expand All @@ -11,6 +10,9 @@ notice, this list of conditions and the following disclaimer.
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
Expand Down
Loading