Skip to content

Releases: harness/ff-proxy

1.0.3

29 Nov 18:10
c51659c
Compare
Choose a tag to compare

What's Changed

Full Changelog: 1.0.2...1.0.3

1.0.2

27 Sep 12:01
6ec359c
Compare
Choose a tag to compare

What's Changed

  • Fix Flags key not refreshing when a flag is deleted by @jcox250 in #178

Full Changelog: 1.0.1...1.0.2

Contains a fix for a bug introduced in 0.17.0 where it was possible for the features and segments to not be refreshed properly in the cache when a Flag or TargetGroup was deleted from SaaS. This meant that if you hit /feature-configs on SaaS you wouldn't get the flag back but if you hit /feature-configs/ on the Proxy you would get the flag back.

1.0.1

13 Sep 11:19
c60a915
Compare
Choose a tag to compare

What's Changed

  • FFM-9314 Update gosdk verison by @jcox250 in #176
    • This fixes a bug where the cached flag data that's returned for a /feature-configs/ would be up to date but it would be possible for that flag to be out of date in the /feature-configs response.

Full Changelog: 0.17.2...1.0.1

v1.0.0

06 Sep 09:02
8225762
Compare
Choose a tag to compare

What's Changed

  • FFM-9163 Fix CacheWrapper invalid type flag error by @jcox250 in #175
  • Mirror of the last minor release. We decided to promote it to stable release v1.0.0

Full Changelog: 0.17.1...v1.0.0

0.17.2

25 Aug 11:53
8225762
Compare
Choose a tag to compare

What's Changed

  • FFM-9163 Fix CacheWrapper invalid type flag error by @jcox250 in #175
    • Fixes a bug introduced in 0.17.0 where we'd log an error whenever we tried to fetch a single flag/segment from the cache and we were unable to purge single flags/segments from the cache.

Full Changelog: 0.17.1...0.17.2

0.17.1

22 Aug 13:55
e9b032d
Compare
Choose a tag to compare

What's Changed

  • Fixes an issue where if there was an error in the cache our logs would be overly verbose.
  • Replaces the DEBUG environment variable with LOG_LEVEL.
    • The reason for this change is with the DEBUG environment variable we could only ever switch the log level between DEBUG and INFO. The new LOG_LEVEL environment takes INFO, DEBUG and ERROR as inputs so we can now switch between these three log levels.
    • With the old DEBUG environment variable we defaulted the log level to INFO. With the new LOG_LEVEL environment variable the default value is also INFO. This means that if you're happy with the current level of logging, if you upgrade to 0.17.1 you'll still get the same level of logging without having to add the LOG_LEVEL environment variable to your config. However, if you wanted to reduce the log level so only errors are logged then you would upgrade to 0.17.1 and add the LOG_LEVEL environment variable to your config e.g.
ACCOUNT_IDENTIFIER=<account>
ORG_IDENTIFIER=<org>
ADMIN_SERVICE_TOKEN=<token>
API_KEYS=<keys>
LOG_LEVEL=ERROR

Full Changelog: 0.17.0...0.17.1

0.17.0-debugging

17 Aug 11:34
0a1f94a
Compare
Choose a tag to compare

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.17.0...0.17.0-debugging

0.17.0

14 Aug 12:03
e1bdd24
Compare
Choose a tag to compare

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
      1. A metrics request with no TargetData was sent to the Proxy
      2. 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.

Full Changelog: 0.16.0...0.17.0

0.15.0-debugging

28 Jul 12:40
76e2949
Compare
Choose a tag to compare

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

21 Jul 09:33
3da139c
Compare
Choose a tag to compare

What's Changed

Docs updates & improvements

Performance improvements

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