exd telemetry rules
Rule-fire frequency for a flag. Which rules are matching, which never fire?
Synopsis
exd telemetry rules --flag <key>
[--namespace <slug>] [--environment <env>]
[--since <duration> | --from <ts> --to <ts>]
[--source <uri>]...
[--format human|json]
[--thresholds <path>]
[--engine <name>]
[--fail-on-error]
See common flags for shared options.
Description
For each rule in the flag's [flag.environments.<env>] blocks (and the _ catch-all), counts how many evaluations matched at that rule. Includes fallthrough counts (no rule matched; resolution fell through to variant) and "off" counts when the catch-all variant served.
Use cases
-
Find dead rules. A rule that never fires across a long window is either redundant or misconfigured —
T005flags it:exd telemetry rules --flag onboarding-banner --since 30d -
Rule-rewrite verification. After reordering or rewriting a rule, confirm the new order is matching the intended audience:
exd telemetry rules --flag onboarding-banner --since 1h -
Track segment health. A bucket-bearing segment whose rule never fires means no one's landing in that bucket — likely an
entity_id_attributemismatch. -
CI gate on a recently-removed rule. After deleting
rule[3], verify no late traffic depended on it:exd telemetry rules --flag onboarding-banner --since 1h --fail-on-error
Subcommand-specific flags
| Flag | Required | Notes |
|---|---|---|
--flag <key> | yes | The flag to analyze. |
Result fields (--format json)
Top-level fields plus a rules array; per row:
| Field | Type | Notes |
|---|---|---|
rule_id | string | "rule[<i>]" for declared rules; "fallthrough" and "off" for the synthetic catch-all rows. |
env | string | Environment block the rule belongs to. |
match_count | integer | Evaluations matched at this rule. |
match_fraction | float | match_count / total. |
Plus top-level fallthrough_count, off_count, total.
Diagnostics
T005rule never fires (match_count == 0for a declared rule across the window)
Example
$ exd telemetry rules --flag onboarding-banner --since 7d
Rule-fire frequency for 'onboarding-banner' (last 7d, n=1,388,210)
env rule_id match_count match_fraction
prod rule[0] 643,201 46.3%
prod rule[1] 632,517 45.6%
prod rule[2] 0 0.0% ← T005
prod fallthrough 112,492 8.1%
prod off 0 0.0%
T005 info: rule[2] never fires (env=prod, audience=segment `eu-only-legacy`).
Consider removing the rule or auditing the segment's predicate.
Exit codes
See telemetry exit codes.
See also
summary— per-variant aggregate that adds up to these per-rule counts.coverage— flags with no eval traffic at all.dead-flags— flags where every eval lands in fallthrough.T005.