baseplate.go
baseplate.go copied to clipboard
Reddit's Service Framework in Go
## 💸 TL;DR Update gobreaker version from 0.4.1 to [0.5.0](https://github.com/sony/gobreaker/releases/tag/v0.5.0), which adds IsSuccess to Config ## 📜 Details We want to be able to customize the default behavior of IsSuccess,...
## 💸 TL;DR There are some places where `globalTracer` is referenced instead of the `opentracing.GlobalTracer()`. If these ever differ (which is entirely possible), this breaks assumptions about how this library...
## 💸 TL;DR This adds the ability to specify a minimum number of connections to `thriftbp.ClientPool` and `clientpool.ChannelPool`. Having a maintained minimum pool size provides benefits for load balancing which...
Hello, I'm trying to run the thrift server example in this repo. [thriftbp/example_server_test.go](https://github.com/reddit/baseplate.go/blob/e76aee8fd8abcc1bec4615004e8ead68572c3601/thriftbp/example_server_test.go) But got some errors related to configuration files, please help me. ## 1. No config file panic...
## 💸 TL;DR Consume downward facing k8s info. enrich http response headers with above metadata for debugging. The last commit is a potential implementation with the k8s client added to...
# Summary Adds redisxtest implementation which provides setup and teardown functions for setting up a mock redis cluster and client for testing purposes. One of the challenges of using this...
Similar to Baseplate.py [1] [2] and edgecontext, we should move `experiments` package out of Baseplate.go so it can be updated on its own cadence. Since this will be a breaking...
One problem we almost always run into when writing tests for baseplate services is having to create sever edge request context headers to test our endpoints. It would be nice...
In order to provide support for services being monitored by Prometheus we need to add the ability to configure a Prometheus `/metrics` endpoint. The https://github.com/prometheus/client_golang library is recommended. This would...
Protocol-specific middleware means writing O(protocol*middleware) adapters. By making protocol-agnostic middleware, we enable writing O(protocol+middleware) adapters. Fewer adapters makes making maintenance of existing adapters easier, and makes it easier to add...