Toggle Concepts

Core concepts of the Toggle service

Context

The context is a set of properties, and their values, that drive evaluations are are used by toggles for targeting purposes. While there are only a few required properties there are rich extensibility points that allow developers to provide complex contexts to be used when targeting given values for a toggle.

Targeting

Targeting is the concept of providing a value based on properties of the context that is being evaluated. For example, a developer may choose to target all users who's email address is on a given domain. Hyphen uses the standard of JSON Logic to enable rich and complex targeting.

Telemetry

Hyphen collects two types of telemetry when you use toggle, Evaluation and Usage.

Evaluations

An evaluation is the result of applying a context to all toggles in a given project. Hyphen evaluates all the toggles at once for performance reasons. There are several layers of caching, invalidated by changes to the context or toggles, that allow Hyphen to provide unparalleled performance. Evaluation is the metric on which an organization is billed.

Usage

Usage telemetry is the consumption of the toggle's value for a given evaluation. This information is usage to help developers determine what toggles are being used and what their values are being evaluated to. This telemetry is collected by our SDKs and may be turned off with SDK options. Doing so will reduce the information available to your developer in the hyphen application. Organization are not billed based on usage metrics.