From 096aae5d9de7e887763d778c74e3d5cfa7ced0cb Mon Sep 17 00:00:00 2001 From: Todd Baert Date: Mon, 10 Feb 2025 11:36:14 -0500 Subject: [PATCH] docs: metadata conceptual doc (#1550) Adds a bit of conceptual docs about metadata. We already have lots of detail on how to configure it, how it's merged in the `definitions` page, and how it's implemented in in-process providers. --------- Signed-off-by: Todd Baert --- docs/concepts/feature-flagging.md | 1 + docs/reference/monitoring.md | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/docs/concepts/feature-flagging.md b/docs/concepts/feature-flagging.md index 60437395e..4795f136e 100644 --- a/docs/concepts/feature-flagging.md +++ b/docs/concepts/feature-flagging.md @@ -22,3 +22,4 @@ Below is a non-exhaustive table of common feature flag use-cases, and how flagd | dynamic (context-sensitive) evaluation | flagd evaluations are context sensitive. Rules can use arbitrary context attributes as inputs for flag evaluation logic. | | fractional evaluation / random assignment | flagd's [fractional](../reference/custom-operations/fractional-operation.md) custom operation supports pseudorandom assignment of flag values. | | progressive roll-outs | Progressive roll-outs of new features can be accomplished by leveraging the [fractional](../reference/custom-operations/fractional-operation.md) custom operation as well as automation in your build pipeline, SCM, or infrastructure which updates the distribution over time. | +| feature flag telemetry | flagd supports the OpenTelemetry conventions for feature flags, by returning compliant [resolution details](https://openfeature.dev/specification/types#resolution-details) and [metadata](../reference/monitoring.md#metadata), in addition to flag values. | diff --git a/docs/reference/monitoring.md b/docs/reference/monitoring.md index 51861def7..c88d79f77 100644 --- a/docs/reference/monitoring.md +++ b/docs/reference/monitoring.md @@ -161,3 +161,10 @@ scrape_configs: Once, configuration files are ready, use `docker-compose up` to start the local setup. With successful startup, you can access metrics through [Prometheus](http://localhost:9090/graph) & traces through [Jaeger](http://localhost:16686/). + +## Metadata + +[Flag metadata](https://openfeature.dev/specification/types/#flag-metadata) comprises auxiliary data pertaining to feature flags; it's highly valuable in telemetry signals. +Flag metadata might consist of attributes indicating the version of the flag, an identifier for the flag set, ownership information about the flag, or other documentary information. +flagd supports flag metadata in all its [gRPC protocols](../reference/specifications//protos.md), in [OFREP](../reference/flagd-ofrep.md), and in its [flag definitions](./flag-definitions.md#metadata). +These attributes are returned with flag evaluations, and can be added to telemetry signals as outlined in the [OpenFeature specification](https://openfeature.dev/specification/appendix-d).