|
1 |
| --ifndef(MATCH_SPEC_TYPES_DEFINED). |
2 | 1 | -include_lib("opentelemetry_api_experimental/include/match_spec.hrl").
|
3 |
| --endif. |
4 | 2 |
|
5 | 3 | -define(DEFAULT_METER_PROVIDER, otel_meter_provider_default).
|
6 | 4 |
|
| 5 | +-type key_inner_match_spec() :: {match_spec(atom()), match_spec(opentelemetry:attributes_map()), match_spec(reference())}. |
| 6 | +-type key_match_spec() :: match_spec(otel_aggregation:key()) | key_inner_match_spec() | {key_inner_match_spec()}. |
| 7 | + |
7 | 8 | -record(meter,
|
8 | 9 | {
|
9 | 10 | module :: module() | '_',
|
|
26 | 27 | -record(sum_aggregation,
|
27 | 28 | {
|
28 | 29 | %% TODO: attributes should be a tuple of just the values, sorted by attribute name
|
29 |
| - key :: match_spec(otel_aggregation:key()) | otel_aggregation:key_match_spec() | undefined | {element, 2, '$_'}, |
| 30 | + key :: key_match_spec() | undefined | {element, 2, '$_'}, |
30 | 31 | start_time_unix_nano :: match_spec(integer()) | undefined,
|
31 | 32 | last_start_time_unix_nano :: match_spec(integer()) | undefined,
|
32 | 33 | checkpoint :: match_spec(number()) | undefined | {'+', '$2', '$3'} | {'+', '$3', '$4'},
|
|
38 | 39 | -record(last_value_aggregation,
|
39 | 40 | {
|
40 | 41 | %% TODO: attributes should be a tuple of just the values, sorted by attribute name
|
41 |
| - key :: match_spec(otel_aggregation:key()) | otel_aggregation:key_match_spec() | undefined, |
| 42 | + key :: key_match_spec() | undefined, |
42 | 43 | checkpoint :: match_spec(number()) | undefined,
|
43 | 44 | value :: match_spec(number()) | undefined,
|
44 | 45 | start_time_unix_nano :: match_spec(integer()) | undefined,
|
|
58 | 59 | -record(explicit_histogram_aggregation,
|
59 | 60 | {
|
60 | 61 | %% TODO: attributes should be a tuple of just the values, sorted by attribute name
|
61 |
| - key :: match_spec(otel_aggregation:key()) | otel_aggregation:key_match_spec() | undefined, |
62 |
| - start_time_unix_nano :: integer() | {const, eqwalizer:dynamic()} | '$9' | '$2' | undefined, |
| 62 | + key :: key_match_spec() | undefined, |
| 63 | + start_time_unix_nano :: match_spec(integer()) | undefined, |
63 | 64 | %% instrument_temporality :: otel_aggregation:temporality(),
|
64 | 65 | %% default: [0.0, 5.0, 10.0, 25.0, 50.0, 75.0, 100.0, 250.0, 500.0, 1000.0]
|
65 | 66 | explicit_bucket_boundaries :: match_spec([float()]) | undefined,
|
|
0 commit comments