Metrics
Metrics are numeric values tracked over time. Flux supports four metric types, each designed for different use cases.Metric Types
| Type | Description | Aggregation | Example |
|---|---|---|---|
| Gauge | Current value | Last | users.online, queue.depth |
| Counter | Cumulative count | Sum | api.requests, emails.sent |
| Distribution | Statistical values | Avg, P50, P95, P99 | response_time, order_value |
| Set | Unique elements | Count distinct | daily_active_users |
Gauge
A gauge represents a current value that can go up or down. Only the last value in each time bucket is kept.- Current counts (online users, queue depth)
- Resource levels (memory, disk, connections)
- Configuration values
- Any point-in-time measurement
Counter
A counter tracks cumulative counts. Values are summed within time buckets.- Request counts
- Events processed
- Emails sent
- Errors occurred
- Any monotonically increasing value
Distribution
A distribution tracks the statistical distribution of values. Flux computes min, max, avg, sum, count, and percentiles.Timing Helper
Automatically measure execution time:- Response times
- Query durations
- File/payload sizes
- Order values
- Any value where you need percentiles
Distribution Aggregations
When querying distributions, you get:| Metric | Description |
|---|---|
count | Number of values |
sum | Total of all values |
avg | Average value |
min | Minimum value |
max | Maximum value |
p50 | Median (50th percentile) |
p90 | 90th percentile |
p95 | 95th percentile |
p99 | 99th percentile |
Set
A set tracks unique elements, giving you cardinality (distinct count).- Unique users/visitors
- Distinct values seen
- Cardinality tracking
Tags
All metric types support tags for segmentation:- Filter metrics in dashboards
- Group by dimensions
- Create multi-dimensional views
Tag Best Practices
Low Cardinality
Use tags with bounded values (status codes, regions, plans)
Avoid High Cardinality
Don’t use user IDs or timestamps as tags
Consistent Keys
Use the same tag keys across related metrics
Meaningful Values
Use human-readable tag values
Default Tags
Set global tags applied to all metrics:Batching
The SDK batches metrics for performance. Configure batch behavior:Querying Metrics
Dashboard
View metrics in the Flux dashboard with:- Time range selection
- Aggregation functions
- Tag filtering
- Multiple metric overlay