@effect/opentelemetry 0.60.0 → 4.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/dist/{dts/Logger.d.ts → Logger.d.ts} +19 -13
- package/dist/Logger.d.ts.map +1 -0
- package/dist/Logger.js +76 -0
- package/dist/Logger.js.map +1 -0
- package/dist/Metrics.d.ts +76 -0
- package/dist/Metrics.d.ts.map +1 -0
- package/dist/Metrics.js +59 -0
- package/dist/Metrics.js.map +1 -0
- package/dist/{dts/NodeSdk.d.ts → NodeSdk.d.ts} +12 -9
- package/dist/NodeSdk.d.ts.map +1 -0
- package/dist/{esm/NodeSdk.js → NodeSdk.js} +23 -14
- package/dist/NodeSdk.js.map +1 -0
- package/dist/{dts/Resource.d.ts → Resource.d.ts} +10 -13
- package/dist/Resource.d.ts.map +1 -0
- package/dist/{esm/Resource.js → Resource.js} +12 -13
- package/dist/Resource.js.map +1 -0
- package/dist/Tracer.d.ts +129 -0
- package/dist/Tracer.d.ts.map +1 -0
- package/dist/Tracer.js +391 -0
- package/dist/Tracer.js.map +1 -0
- package/dist/{dts/WebSdk.d.ts → WebSdk.d.ts} +12 -9
- package/dist/WebSdk.d.ts.map +1 -0
- package/dist/WebSdk.js +41 -0
- package/dist/WebSdk.js.map +1 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/{esm/index.js → index.js} +4 -20
- package/dist/index.js.map +1 -0
- package/dist/internal/attributes.d.ts +2 -0
- package/dist/internal/attributes.d.ts.map +1 -0
- package/dist/internal/attributes.js +19 -0
- package/dist/internal/attributes.js.map +1 -0
- package/dist/{dts/internal → internal}/metrics.d.ts.map +1 -1
- package/dist/internal/metrics.js +406 -0
- package/dist/internal/metrics.js.map +1 -0
- package/dist/internal/utilities.d.ts +2 -0
- package/dist/internal/utilities.d.ts.map +1 -0
- package/dist/internal/utilities.js +3 -0
- package/dist/internal/utilities.js.map +1 -0
- package/package.json +70 -118
- package/src/Logger.ts +52 -55
- package/src/Metrics.ts +92 -18
- package/src/NodeSdk.ts +67 -64
- package/src/Resource.ts +16 -24
- package/src/Tracer.ts +469 -78
- package/src/WebSdk.ts +59 -51
- package/src/index.ts +7 -26
- package/src/internal/attributes.ts +21 -0
- package/src/internal/metrics.ts +381 -250
- package/src/internal/utilities.ts +5 -0
- package/Logger/package.json +0 -6
- package/Metrics/package.json +0 -6
- package/NodeSdk/package.json +0 -6
- package/Otlp/package.json +0 -6
- package/OtlpLogger/package.json +0 -6
- package/OtlpMetrics/package.json +0 -6
- package/OtlpResource/package.json +0 -6
- package/OtlpTracer/package.json +0 -6
- package/Resource/package.json +0 -6
- package/Tracer/package.json +0 -6
- package/WebSdk/package.json +0 -6
- package/dist/cjs/Logger.js +0 -85
- package/dist/cjs/Logger.js.map +0 -1
- package/dist/cjs/Metrics.js +0 -24
- package/dist/cjs/Metrics.js.map +0 -1
- package/dist/cjs/NodeSdk.js +0 -53
- package/dist/cjs/NodeSdk.js.map +0 -1
- package/dist/cjs/Otlp.js +0 -46
- package/dist/cjs/Otlp.js.map +0 -1
- package/dist/cjs/OtlpLogger.js +0 -158
- package/dist/cjs/OtlpLogger.js.map +0 -1
- package/dist/cjs/OtlpMetrics.js +0 -354
- package/dist/cjs/OtlpMetrics.js.map +0 -1
- package/dist/cjs/OtlpResource.js +0 -136
- package/dist/cjs/OtlpResource.js.map +0 -1
- package/dist/cjs/OtlpTracer.js +0 -229
- package/dist/cjs/OtlpTracer.js.map +0 -1
- package/dist/cjs/Resource.js +0 -75
- package/dist/cjs/Resource.js.map +0 -1
- package/dist/cjs/Tracer.js +0 -87
- package/dist/cjs/Tracer.js.map +0 -1
- package/dist/cjs/WebSdk.js +0 -42
- package/dist/cjs/WebSdk.js.map +0 -1
- package/dist/cjs/index.js +0 -30
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/internal/metrics.js +0 -288
- package/dist/cjs/internal/metrics.js.map +0 -1
- package/dist/cjs/internal/otlpExporter.js +0 -81
- package/dist/cjs/internal/otlpExporter.js.map +0 -1
- package/dist/cjs/internal/tracer.js +0 -299
- package/dist/cjs/internal/tracer.js.map +0 -1
- package/dist/cjs/internal/utils.js +0 -34
- package/dist/cjs/internal/utils.js.map +0 -1
- package/dist/dts/Logger.d.ts.map +0 -1
- package/dist/dts/Metrics.d.ts +0 -29
- package/dist/dts/Metrics.d.ts.map +0 -1
- package/dist/dts/NodeSdk.d.ts.map +0 -1
- package/dist/dts/Otlp.d.ts +0 -31
- package/dist/dts/Otlp.d.ts.map +0 -1
- package/dist/dts/OtlpLogger.d.ts +0 -46
- package/dist/dts/OtlpLogger.d.ts.map +0 -1
- package/dist/dts/OtlpMetrics.d.ts +0 -40
- package/dist/dts/OtlpMetrics.d.ts.map +0 -1
- package/dist/dts/OtlpResource.d.ts +0 -104
- package/dist/dts/OtlpResource.d.ts.map +0 -1
- package/dist/dts/OtlpTracer.d.ts +0 -49
- package/dist/dts/OtlpTracer.d.ts.map +0 -1
- package/dist/dts/Resource.d.ts.map +0 -1
- package/dist/dts/Tracer.d.ts +0 -143
- package/dist/dts/Tracer.d.ts.map +0 -1
- package/dist/dts/WebSdk.d.ts.map +0 -1
- package/dist/dts/index.d.ts +0 -45
- package/dist/dts/index.d.ts.map +0 -1
- package/dist/dts/internal/otlpExporter.d.ts +0 -2
- package/dist/dts/internal/otlpExporter.d.ts.map +0 -1
- package/dist/dts/internal/tracer.d.ts +0 -2
- package/dist/dts/internal/tracer.d.ts.map +0 -1
- package/dist/dts/internal/utils.d.ts +0 -2
- package/dist/dts/internal/utils.d.ts.map +0 -1
- package/dist/esm/Logger.js +0 -75
- package/dist/esm/Logger.js.map +0 -1
- package/dist/esm/Metrics.js +0 -17
- package/dist/esm/Metrics.js.map +0 -1
- package/dist/esm/NodeSdk.js.map +0 -1
- package/dist/esm/Otlp.js +0 -38
- package/dist/esm/Otlp.js.map +0 -1
- package/dist/esm/OtlpLogger.js +0 -150
- package/dist/esm/OtlpLogger.js.map +0 -1
- package/dist/esm/OtlpMetrics.js +0 -346
- package/dist/esm/OtlpMetrics.js.map +0 -1
- package/dist/esm/OtlpResource.js +0 -124
- package/dist/esm/OtlpResource.js.map +0 -1
- package/dist/esm/OtlpTracer.js +0 -221
- package/dist/esm/OtlpTracer.js.map +0 -1
- package/dist/esm/Resource.js.map +0 -1
- package/dist/esm/Tracer.js +0 -80
- package/dist/esm/Tracer.js.map +0 -1
- package/dist/esm/WebSdk.js +0 -33
- package/dist/esm/WebSdk.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/internal/metrics.js +0 -278
- package/dist/esm/internal/metrics.js.map +0 -1
- package/dist/esm/internal/otlpExporter.js +0 -74
- package/dist/esm/internal/otlpExporter.js.map +0 -1
- package/dist/esm/internal/tracer.js +0 -290
- package/dist/esm/internal/tracer.js.map +0 -1
- package/dist/esm/internal/utils.js +0 -23
- package/dist/esm/internal/utils.js.map +0 -1
- package/dist/esm/package.json +0 -4
- package/index/package.json +0 -6
- package/src/Otlp.ts +0 -66
- package/src/OtlpLogger.ts +0 -258
- package/src/OtlpMetrics.ts +0 -571
- package/src/OtlpResource.ts +0 -232
- package/src/OtlpTracer.ts +0 -349
- package/src/internal/otlpExporter.ts +0 -124
- package/src/internal/tracer.ts +0 -437
- package/src/internal/utils.ts +0 -31
- /package/dist/{dts/internal → internal}/metrics.d.ts +0 -0
|
@@ -1,288 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.registerProducer = exports.makeProducer = exports.layer = exports.MetricProducerImpl = void 0;
|
|
7
|
-
var _api = require("@opentelemetry/api");
|
|
8
|
-
var _sdkMetrics = require("@opentelemetry/sdk-metrics");
|
|
9
|
-
var Arr = _interopRequireWildcard(require("effect/Array"));
|
|
10
|
-
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
11
|
-
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
12
|
-
var Metric = _interopRequireWildcard(require("effect/Metric"));
|
|
13
|
-
var MetricKeyType = _interopRequireWildcard(require("effect/MetricKeyType"));
|
|
14
|
-
var MetricState = _interopRequireWildcard(require("effect/MetricState"));
|
|
15
|
-
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
16
|
-
var Resource = _interopRequireWildcard(require("../Resource.js"));
|
|
17
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
18
|
-
const sdkName = "@effect/opentelemetry/Metrics";
|
|
19
|
-
/** @internal */
|
|
20
|
-
class MetricProducerImpl {
|
|
21
|
-
resource;
|
|
22
|
-
constructor(resource) {
|
|
23
|
-
this.resource = resource;
|
|
24
|
-
}
|
|
25
|
-
startTimes = /*#__PURE__*/new Map();
|
|
26
|
-
startTimeFor(name, hrTime) {
|
|
27
|
-
if (this.startTimes.has(name)) {
|
|
28
|
-
return this.startTimes.get(name);
|
|
29
|
-
}
|
|
30
|
-
this.startTimes.set(name, hrTime);
|
|
31
|
-
return hrTime;
|
|
32
|
-
}
|
|
33
|
-
collect(_options) {
|
|
34
|
-
const snapshot = Metric.unsafeSnapshot();
|
|
35
|
-
const hrTimeNow = currentHrTime();
|
|
36
|
-
const metricData = [];
|
|
37
|
-
const metricDataByName = new Map();
|
|
38
|
-
const addMetricData = data => {
|
|
39
|
-
metricData.push(data);
|
|
40
|
-
metricDataByName.set(data.descriptor.name, data);
|
|
41
|
-
};
|
|
42
|
-
for (let i = 0, len = snapshot.length; i < len; i++) {
|
|
43
|
-
const {
|
|
44
|
-
metricKey,
|
|
45
|
-
metricState
|
|
46
|
-
} = snapshot[i];
|
|
47
|
-
const attributes = Arr.reduce(metricKey.tags, {}, (acc, label) => {
|
|
48
|
-
acc[label.key] = label.value;
|
|
49
|
-
return acc;
|
|
50
|
-
});
|
|
51
|
-
const descriptor = descriptorFromKey(metricKey, attributes);
|
|
52
|
-
const startTime = this.startTimeFor(descriptor.name, hrTimeNow);
|
|
53
|
-
if (MetricState.isCounterState(metricState)) {
|
|
54
|
-
const dataPoint = {
|
|
55
|
-
startTime,
|
|
56
|
-
endTime: hrTimeNow,
|
|
57
|
-
attributes,
|
|
58
|
-
value: Number(metricState.count)
|
|
59
|
-
};
|
|
60
|
-
if (metricDataByName.has(descriptor.name)) {
|
|
61
|
-
metricDataByName.get(descriptor.name).dataPoints.push(dataPoint);
|
|
62
|
-
} else {
|
|
63
|
-
addMetricData({
|
|
64
|
-
dataPointType: _sdkMetrics.DataPointType.SUM,
|
|
65
|
-
descriptor,
|
|
66
|
-
isMonotonic: descriptor.type === _sdkMetrics.InstrumentType.COUNTER,
|
|
67
|
-
aggregationTemporality: _sdkMetrics.AggregationTemporality.CUMULATIVE,
|
|
68
|
-
dataPoints: [dataPoint]
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
} else if (MetricState.isGaugeState(metricState)) {
|
|
72
|
-
const dataPoint = {
|
|
73
|
-
startTime,
|
|
74
|
-
endTime: hrTimeNow,
|
|
75
|
-
attributes,
|
|
76
|
-
value: Number(metricState.value)
|
|
77
|
-
};
|
|
78
|
-
if (metricDataByName.has(descriptor.name)) {
|
|
79
|
-
metricDataByName.get(descriptor.name).dataPoints.push(dataPoint);
|
|
80
|
-
} else {
|
|
81
|
-
addMetricData({
|
|
82
|
-
dataPointType: _sdkMetrics.DataPointType.GAUGE,
|
|
83
|
-
descriptor,
|
|
84
|
-
aggregationTemporality: _sdkMetrics.AggregationTemporality.CUMULATIVE,
|
|
85
|
-
dataPoints: [dataPoint]
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
} else if (MetricState.isHistogramState(metricState)) {
|
|
89
|
-
const size = metricState.buckets.length;
|
|
90
|
-
const buckets = {
|
|
91
|
-
boundaries: Arr.allocate(size - 1),
|
|
92
|
-
counts: Arr.allocate(size)
|
|
93
|
-
};
|
|
94
|
-
let i = 0;
|
|
95
|
-
let prev = 0;
|
|
96
|
-
for (const [boundary, value] of metricState.buckets) {
|
|
97
|
-
if (i < size - 1) {
|
|
98
|
-
buckets.boundaries[i] = boundary;
|
|
99
|
-
}
|
|
100
|
-
buckets.counts[i] = value - prev;
|
|
101
|
-
prev = value;
|
|
102
|
-
i++;
|
|
103
|
-
}
|
|
104
|
-
const dataPoint = {
|
|
105
|
-
startTime,
|
|
106
|
-
endTime: hrTimeNow,
|
|
107
|
-
attributes,
|
|
108
|
-
value: {
|
|
109
|
-
buckets,
|
|
110
|
-
count: metricState.count,
|
|
111
|
-
min: metricState.min,
|
|
112
|
-
max: metricState.max,
|
|
113
|
-
sum: metricState.sum
|
|
114
|
-
}
|
|
115
|
-
};
|
|
116
|
-
if (metricDataByName.has(descriptor.name)) {
|
|
117
|
-
metricDataByName.get(descriptor.name).dataPoints.push(dataPoint);
|
|
118
|
-
} else {
|
|
119
|
-
addMetricData({
|
|
120
|
-
dataPointType: _sdkMetrics.DataPointType.HISTOGRAM,
|
|
121
|
-
descriptor,
|
|
122
|
-
aggregationTemporality: _sdkMetrics.AggregationTemporality.CUMULATIVE,
|
|
123
|
-
dataPoints: [dataPoint]
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
} else if (MetricState.isFrequencyState(metricState)) {
|
|
127
|
-
const dataPoints = [];
|
|
128
|
-
for (const [freqKey, value] of metricState.occurrences) {
|
|
129
|
-
dataPoints.push({
|
|
130
|
-
startTime,
|
|
131
|
-
endTime: hrTimeNow,
|
|
132
|
-
attributes: {
|
|
133
|
-
...attributes,
|
|
134
|
-
key: freqKey
|
|
135
|
-
},
|
|
136
|
-
value
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
if (metricDataByName.has(descriptor.name)) {
|
|
140
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
141
|
-
metricDataByName.get(descriptor.name).dataPoints.push(...dataPoints);
|
|
142
|
-
} else {
|
|
143
|
-
addMetricData({
|
|
144
|
-
dataPointType: _sdkMetrics.DataPointType.SUM,
|
|
145
|
-
descriptor: descriptorFromKey(metricKey, attributes),
|
|
146
|
-
aggregationTemporality: _sdkMetrics.AggregationTemporality.CUMULATIVE,
|
|
147
|
-
isMonotonic: true,
|
|
148
|
-
dataPoints
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
} else if (MetricState.isSummaryState(metricState)) {
|
|
152
|
-
const dataPoints = [{
|
|
153
|
-
startTime,
|
|
154
|
-
endTime: hrTimeNow,
|
|
155
|
-
attributes: {
|
|
156
|
-
...attributes,
|
|
157
|
-
quantile: "min"
|
|
158
|
-
},
|
|
159
|
-
value: metricState.min
|
|
160
|
-
}];
|
|
161
|
-
for (const [quantile, value] of metricState.quantiles) {
|
|
162
|
-
dataPoints.push({
|
|
163
|
-
startTime,
|
|
164
|
-
endTime: hrTimeNow,
|
|
165
|
-
attributes: {
|
|
166
|
-
...attributes,
|
|
167
|
-
quantile: quantile.toString()
|
|
168
|
-
},
|
|
169
|
-
value: value._tag === "Some" ? value.value : 0
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
dataPoints.push({
|
|
173
|
-
startTime,
|
|
174
|
-
endTime: hrTimeNow,
|
|
175
|
-
attributes: {
|
|
176
|
-
...attributes,
|
|
177
|
-
quantile: "max"
|
|
178
|
-
},
|
|
179
|
-
value: metricState.max
|
|
180
|
-
});
|
|
181
|
-
const countDataPoint = {
|
|
182
|
-
startTime,
|
|
183
|
-
endTime: hrTimeNow,
|
|
184
|
-
attributes,
|
|
185
|
-
value: metricState.count
|
|
186
|
-
};
|
|
187
|
-
const sumDataPoint = {
|
|
188
|
-
startTime,
|
|
189
|
-
endTime: hrTimeNow,
|
|
190
|
-
attributes,
|
|
191
|
-
value: metricState.sum
|
|
192
|
-
};
|
|
193
|
-
if (metricDataByName.has(`${descriptor.name}_quantiles`)) {
|
|
194
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
195
|
-
metricDataByName.get(`${descriptor.name}_quantiles`).dataPoints.push(...dataPoints);
|
|
196
|
-
metricDataByName.get(`${descriptor.name}_count`).dataPoints.push(countDataPoint);
|
|
197
|
-
metricDataByName.get(`${descriptor.name}_sum`).dataPoints.push(sumDataPoint);
|
|
198
|
-
} else {
|
|
199
|
-
addMetricData({
|
|
200
|
-
dataPointType: _sdkMetrics.DataPointType.SUM,
|
|
201
|
-
descriptor: descriptorFromKey(metricKey, attributes, "quantiles"),
|
|
202
|
-
aggregationTemporality: _sdkMetrics.AggregationTemporality.CUMULATIVE,
|
|
203
|
-
isMonotonic: false,
|
|
204
|
-
dataPoints
|
|
205
|
-
});
|
|
206
|
-
addMetricData({
|
|
207
|
-
dataPointType: _sdkMetrics.DataPointType.SUM,
|
|
208
|
-
descriptor: {
|
|
209
|
-
...descriptorMeta(metricKey, "count"),
|
|
210
|
-
unit: "1",
|
|
211
|
-
type: _sdkMetrics.InstrumentType.COUNTER,
|
|
212
|
-
valueType: _api.ValueType.INT
|
|
213
|
-
},
|
|
214
|
-
aggregationTemporality: _sdkMetrics.AggregationTemporality.CUMULATIVE,
|
|
215
|
-
isMonotonic: true,
|
|
216
|
-
dataPoints: [countDataPoint]
|
|
217
|
-
});
|
|
218
|
-
addMetricData({
|
|
219
|
-
dataPointType: _sdkMetrics.DataPointType.SUM,
|
|
220
|
-
descriptor: {
|
|
221
|
-
...descriptorMeta(metricKey, "sum"),
|
|
222
|
-
unit: "1",
|
|
223
|
-
type: _sdkMetrics.InstrumentType.COUNTER,
|
|
224
|
-
valueType: _api.ValueType.DOUBLE
|
|
225
|
-
},
|
|
226
|
-
aggregationTemporality: _sdkMetrics.AggregationTemporality.CUMULATIVE,
|
|
227
|
-
isMonotonic: true,
|
|
228
|
-
dataPoints: [sumDataPoint]
|
|
229
|
-
});
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
return Promise.resolve({
|
|
234
|
-
resourceMetrics: {
|
|
235
|
-
resource: this.resource,
|
|
236
|
-
scopeMetrics: [{
|
|
237
|
-
scope: {
|
|
238
|
-
name: sdkName
|
|
239
|
-
},
|
|
240
|
-
metrics: metricData
|
|
241
|
-
}]
|
|
242
|
-
},
|
|
243
|
-
errors: []
|
|
244
|
-
});
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
exports.MetricProducerImpl = MetricProducerImpl;
|
|
248
|
-
const descriptorMeta = (metricKey, suffix) => ({
|
|
249
|
-
name: suffix ? `${metricKey.name}_${suffix}` : metricKey.name,
|
|
250
|
-
description: Option.getOrElse(metricKey.description, () => ""),
|
|
251
|
-
advice: {}
|
|
252
|
-
});
|
|
253
|
-
const descriptorFromKey = (metricKey, tags, suffix) => ({
|
|
254
|
-
...descriptorMeta(metricKey, suffix),
|
|
255
|
-
unit: tags.unit ?? tags.time_unit ?? "1",
|
|
256
|
-
type: instrumentTypeFromKey(metricKey),
|
|
257
|
-
valueType: "bigint" in metricKey.keyType && metricKey.keyType.bigint === true ? _api.ValueType.INT : _api.ValueType.DOUBLE
|
|
258
|
-
});
|
|
259
|
-
const instrumentTypeFromKey = key => {
|
|
260
|
-
if (MetricKeyType.isHistogramKey(key.keyType)) {
|
|
261
|
-
return _sdkMetrics.InstrumentType.HISTOGRAM;
|
|
262
|
-
} else if (MetricKeyType.isGaugeKey(key.keyType)) {
|
|
263
|
-
return _sdkMetrics.InstrumentType.OBSERVABLE_GAUGE;
|
|
264
|
-
} else if (MetricKeyType.isFrequencyKey(key.keyType)) {
|
|
265
|
-
return _sdkMetrics.InstrumentType.COUNTER;
|
|
266
|
-
} else if (MetricKeyType.isCounterKey(key.keyType) && key.keyType.incremental) {
|
|
267
|
-
return _sdkMetrics.InstrumentType.COUNTER;
|
|
268
|
-
}
|
|
269
|
-
return _sdkMetrics.InstrumentType.UP_DOWN_COUNTER;
|
|
270
|
-
};
|
|
271
|
-
const currentHrTime = () => {
|
|
272
|
-
const now = Date.now();
|
|
273
|
-
return [Math.floor(now / 1000), now % 1000 * 1000000];
|
|
274
|
-
};
|
|
275
|
-
/** @internal */
|
|
276
|
-
const makeProducer = exports.makeProducer = /*#__PURE__*/Effect.map(Resource.Resource, resource => new MetricProducerImpl(resource));
|
|
277
|
-
/** @internal */
|
|
278
|
-
const registerProducer = (self, metricReader, options) => Effect.acquireRelease(Effect.sync(() => {
|
|
279
|
-
const reader = metricReader();
|
|
280
|
-
const readers = Array.isArray(reader) ? reader : [reader];
|
|
281
|
-
readers.forEach(reader => reader.setMetricProducer(self));
|
|
282
|
-
return readers;
|
|
283
|
-
}), readers => Effect.promise(() => Promise.all(readers.map(reader => reader.shutdown()))).pipe(Effect.ignoreLogged, Effect.interruptible, Effect.timeoutOption(options?.shutdownTimeout ?? 3000)));
|
|
284
|
-
/** @internal */
|
|
285
|
-
exports.registerProducer = registerProducer;
|
|
286
|
-
const layer = (evaluate, options) => Layer.scopedDiscard(Effect.flatMap(makeProducer, producer => registerProducer(producer, evaluate, options)));
|
|
287
|
-
exports.layer = layer;
|
|
288
|
-
//# sourceMappingURL=metrics.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","names":["_api","require","_sdkMetrics","Arr","_interopRequireWildcard","Effect","Layer","Metric","MetricKeyType","MetricState","Option","Resource","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","sdkName","MetricProducerImpl","resource","constructor","startTimes","Map","startTimeFor","name","hrTime","collect","_options","snapshot","unsafeSnapshot","hrTimeNow","currentHrTime","metricData","metricDataByName","addMetricData","data","push","descriptor","len","length","metricKey","metricState","attributes","reduce","tags","acc","label","key","value","descriptorFromKey","startTime","isCounterState","dataPoint","endTime","Number","count","dataPoints","dataPointType","DataPointType","SUM","isMonotonic","type","InstrumentType","COUNTER","aggregationTemporality","AggregationTemporality","CUMULATIVE","isGaugeState","GAUGE","isHistogramState","size","buckets","boundaries","allocate","counts","prev","boundary","min","max","sum","HISTOGRAM","isFrequencyState","freqKey","occurrences","isSummaryState","quantile","quantiles","toString","_tag","countDataPoint","sumDataPoint","descriptorMeta","unit","valueType","ValueType","INT","DOUBLE","Promise","resolve","resourceMetrics","scopeMetrics","scope","metrics","errors","suffix","description","getOrElse","advice","time_unit","instrumentTypeFromKey","keyType","bigint","isHistogramKey","isGaugeKey","OBSERVABLE_GAUGE","isFrequencyKey","isCounterKey","incremental","UP_DOWN_COUNTER","now","Date","Math","floor","makeProducer","exports","map","registerProducer","self","metricReader","options","acquireRelease","sync","reader","readers","Array","isArray","forEach","setMetricProducer","promise","all","shutdown","pipe","ignoreLogged","interruptible","timeoutOption","shutdownTimeout","layer","evaluate","scopedDiscard","flatMap","producer"],"sources":["../../../src/internal/metrics.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.make = void 0;
|
|
7
|
-
var Headers = _interopRequireWildcard(require("@effect/platform/Headers"));
|
|
8
|
-
var HttpClient = _interopRequireWildcard(require("@effect/platform/HttpClient"));
|
|
9
|
-
var HttpClientError = _interopRequireWildcard(require("@effect/platform/HttpClientError"));
|
|
10
|
-
var HttpClientRequest = _interopRequireWildcard(require("@effect/platform/HttpClientRequest"));
|
|
11
|
-
var Duration = _interopRequireWildcard(require("effect/Duration"));
|
|
12
|
-
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
13
|
-
var FiberSet = _interopRequireWildcard(require("effect/FiberSet"));
|
|
14
|
-
var Num = _interopRequireWildcard(require("effect/Number"));
|
|
15
|
-
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
16
|
-
var Schedule = _interopRequireWildcard(require("effect/Schedule"));
|
|
17
|
-
var Scope = _interopRequireWildcard(require("effect/Scope"));
|
|
18
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
19
|
-
const policy = /*#__PURE__*/Schedule.forever.pipe(Schedule.passthrough, /*#__PURE__*/Schedule.addDelay(error => {
|
|
20
|
-
if (HttpClientError.isHttpClientError(error) && error._tag === "ResponseError" && error.response.status === 429) {
|
|
21
|
-
const retryAfter = Option.fromNullable(error.response.headers["retry-after"]).pipe(Option.flatMap(Num.parse), Option.getOrElse(() => 5));
|
|
22
|
-
return Duration.seconds(retryAfter);
|
|
23
|
-
}
|
|
24
|
-
return Duration.seconds(1);
|
|
25
|
-
}));
|
|
26
|
-
/** @internal */
|
|
27
|
-
const make = exports.make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
|
|
28
|
-
const clock = yield* Effect.clock;
|
|
29
|
-
const scope = yield* Effect.scope;
|
|
30
|
-
const exportInterval = Duration.decode(options.exportInterval);
|
|
31
|
-
let disabledUntil = undefined;
|
|
32
|
-
const client = HttpClient.filterStatusOk(yield* HttpClient.HttpClient).pipe(HttpClient.retryTransient({
|
|
33
|
-
schedule: policy,
|
|
34
|
-
times: 3
|
|
35
|
-
}));
|
|
36
|
-
let headers = Headers.unsafeFromRecord({
|
|
37
|
-
"user-agent": `effect-opentelemetry-${options.label}/0.0.0`
|
|
38
|
-
});
|
|
39
|
-
if (options.headers) {
|
|
40
|
-
headers = Headers.merge(Headers.fromInput(options.headers), headers);
|
|
41
|
-
}
|
|
42
|
-
const request = HttpClientRequest.post(options.url, {
|
|
43
|
-
headers
|
|
44
|
-
});
|
|
45
|
-
let buffer = [];
|
|
46
|
-
const runExport = Effect.suspend(() => {
|
|
47
|
-
if (disabledUntil !== undefined && clock.unsafeCurrentTimeMillis() < disabledUntil) {
|
|
48
|
-
return Effect.void;
|
|
49
|
-
} else if (disabledUntil !== undefined) {
|
|
50
|
-
disabledUntil = undefined;
|
|
51
|
-
}
|
|
52
|
-
const items = buffer;
|
|
53
|
-
if (options.maxBatchSize !== "disabled") {
|
|
54
|
-
if (buffer.length === 0) {
|
|
55
|
-
return Effect.void;
|
|
56
|
-
}
|
|
57
|
-
buffer = [];
|
|
58
|
-
}
|
|
59
|
-
return client.execute(HttpClientRequest.bodyUnsafeJson(request, options.body(items))).pipe(Effect.asVoid, Effect.withTracerEnabled(false));
|
|
60
|
-
}).pipe(Effect.catchAllCause(cause => {
|
|
61
|
-
if (disabledUntil !== undefined) return Effect.void;
|
|
62
|
-
disabledUntil = clock.unsafeCurrentTimeMillis() + Duration.toMillis("1 minute");
|
|
63
|
-
return Effect.logDebug(`Disabling ${options.label} for 60 seconds`, cause);
|
|
64
|
-
}));
|
|
65
|
-
yield* Scope.addFinalizer(scope, runExport.pipe(Effect.ignore, Effect.interruptible, Effect.timeoutOption(options.shutdownTimeout)));
|
|
66
|
-
yield* Effect.sleep(exportInterval).pipe(Effect.zipRight(runExport), Effect.forever, Effect.annotateLogs({
|
|
67
|
-
package: "@effect/opentelemetry",
|
|
68
|
-
module: options.label
|
|
69
|
-
}), Effect.forkIn(scope), Effect.interruptible);
|
|
70
|
-
const runFork = yield* FiberSet.makeRuntime().pipe(Effect.interruptible);
|
|
71
|
-
return {
|
|
72
|
-
push(data) {
|
|
73
|
-
if (disabledUntil !== undefined) return;
|
|
74
|
-
buffer.push(data);
|
|
75
|
-
if (options.maxBatchSize !== "disabled" && buffer.length >= options.maxBatchSize) {
|
|
76
|
-
runFork(runExport);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
});
|
|
81
|
-
//# sourceMappingURL=otlpExporter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"otlpExporter.js","names":["Headers","_interopRequireWildcard","require","HttpClient","HttpClientError","HttpClientRequest","Duration","Effect","FiberSet","Num","Option","Schedule","Scope","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","policy","forever","pipe","passthrough","addDelay","error","isHttpClientError","_tag","response","status","retryAfter","fromNullable","headers","flatMap","parse","getOrElse","seconds","make","exports","fnUntraced","options","clock","scope","exportInterval","decode","disabledUntil","undefined","client","filterStatusOk","retryTransient","schedule","times","unsafeFromRecord","label","merge","fromInput","request","post","url","buffer","runExport","suspend","unsafeCurrentTimeMillis","void","items","maxBatchSize","length","execute","bodyUnsafeJson","body","asVoid","withTracerEnabled","catchAllCause","cause","toMillis","logDebug","addFinalizer","ignore","interruptible","timeoutOption","shutdownTimeout","sleep","zipRight","annotateLogs","package","module","forkIn","runFork","makeRuntime","push","data"],"sources":["../../../src/internal/otlpExporter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|