Releases: harness/ff-proxy
0.17.0
What's Changed
-
[FFM-8377] Bump go sdk to quiet error logs by @conormurray95 in #170
-
[FFM-8959]: Updating the version of ubuntu and version of pushpin by @davejohnston in #171
-
[FFM-8999] Prevent potential panic in metrics client by @jcox250 in #172
- Fixes a panic that could occur in the ff-proxy if the following occurred
- A metrics request with no TargetData was sent to the Proxy
- A metrics request for the same environment was sent to the Proxy with TargetData before the Proxy forwarded the metrics from the previous request on to Harness SaaS.
- Fixes a panic that could occur in the ff-proxy if the following occurred
Full Changelog: 0.16.0...0.17.0
0.15.0-debugging
What's Changed
We log out the incoming metrics requests and log the outgoing metrics requests that the proxy forwards on to Saas. This is to try and help identify if there is an issue in the Proxy corrupting metrics.
Full Changelog: 0.15.0...0.15.0-debugging
0.16.0
What's Changed
Docs updates & improvements
- (FFM-8303) Update proxy call flow docs) by @conormurray95 in #159
- (FFM-8305) Document Relay Proxy endpoints by @conormurray95 in #160
- (FFM-8305) Formatting updates by @conormurray95 in #161
Performance improvements
- FFM-8238 Add KeyVal & Memoize cache files by @jcox250 in #164
- FFM-8625 Use Memoize Cache by @jcox250 in #165
We've added a memoize cache to improve performance and reduce the amount of CPU used by the Proxy. The Proxy would spend the majority of its time unmarshaling data from the redis cache just to marshal it again to send the response to clients. Using a memoize cache means we only perform a unmarshal when we read from the cache if the data has changed. If the data hasn't changed then we just return the raw bytes meaning the only unmarshal/marshal step performed is when we write the the response to the client.
From load testing with a dataset of ~800 flags, 45,000 targets and 10 segments this reduced response times by ~38% and reduced CPU usage by ~20%.
Prometheus metrics updates
- Removes the operation label from the following metrics
- ff_proxy_redis_cache_write_count
- ff_proxy_redis_cache_read_count
There used to be multiple read/write operations that could be performed (Set, SetByte, Get, GetByte) and we used the operation label to tell the difference between these. Now we only perform Get & Set operations so there's no need for the operation label.
Full Changelog: 0.15.5...0.16.0
0.15.5
0.15.4
0.15.3
0.15.2
What's Changed
- (FFM-8157) Fix metrics tests by @conormurray95 in #156
- (FFM-8155) Update proxy target poll default value by @conormurray95 in #155
Full Changelog: 0.15.1...0.15.2
0.15.1
What's Changed
- (FFM-7832) Cleanup goreport issues by @conormurray95 in #149
- FFM-7702 Clean up cache metrics registration by @jcox250 in #150
Full Changelog: 0.15.0...0.15.1
0.15.0
What's Changed
- configuaration -> configuration by @gacerioni in #141
- (FFM-7488) Serve requests for uncached targets by @conormurray95 in #142
- Update README.md by @davejohnston in #146
- FFM-7706 Add GCP Profiler to the Proxy by @jcox250 in #145
- FFM-7707 Add Prometheus Metrics by @jcox250 in #144
- (FFM-7824) Fix go 1.18 vulns by @conormurray95 in #148
New Contributors
- @gacerioni made their first contribution in #141
Full Changelog: 0.14.0...0.15.0
0.14.0
What's Changed
- (FFM-7417) Restrict envs if all keys auth by @conormurray95 in #140
Full Changelog: 0.13.4...0.14.0