Client for feature toggles endpoints exposed by microservices
Feature toggles metadata and default values will be scraped using the pull model (like Prometheus
does).
To make sure your application owned feature toggles are scraped correctly, you must:
- Add new HTTP endpoint without authentication that will implement the contract from the spec. This endpoint should be accessed only from the private network.
- Add
k8s
service withfeature-toggles: exporter
label and port namedhttp-exporter
orhttp
(for microservices)
- Targetprocess monolith will be discovered via
Consul
(we'll use the existingtp
andcomet
services). We don't have a convenient way to register new services inConsul
so please usek8s
discovery for microservices. - If your microservice is written in
Typescript
you're encouraged to use the existingFeatureToggles
/FeatureToggle
models from the autogenerated client for your exporter endpoint return type. - As for now most of the fields in the specification are marked optional (in order to make the transition process easier). However, you're strongly encouraged to expose as much information about each feature toggle (like feature toggle description, tags, etc) as possible. If it could be done without big efforts, please do it.