terafoundation 0.60.0 → 0.62.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/dist/src/api/index.d.ts.map +1 -1
- package/dist/src/api/index.js +36 -1
- package/dist/src/api/index.js.map +1 -1
- package/dist/src/api/prom-metrics/exporter.d.ts +12 -0
- package/dist/src/api/prom-metrics/exporter.d.ts.map +1 -0
- package/dist/src/api/prom-metrics/exporter.js +44 -0
- package/dist/src/api/prom-metrics/exporter.js.map +1 -0
- package/dist/src/api/prom-metrics/prom-metrics-api.d.ts +95 -0
- package/dist/src/api/prom-metrics/prom-metrics-api.d.ts.map +1 -0
- package/dist/src/api/prom-metrics/prom-metrics-api.js +294 -0
- package/dist/src/api/prom-metrics/prom-metrics-api.js.map +1 -0
- package/dist/src/interfaces.d.ts +39 -2
- package/dist/src/interfaces.d.ts.map +1 -1
- package/dist/src/schema.d.ts.map +1 -1
- package/dist/src/schema.js +15 -0
- package/dist/src/schema.js.map +1 -1
- package/dist/src/test-context.d.ts.map +1 -1
- package/dist/src/test-context.js +2 -0
- package/dist/src/test-context.js.map +1 -1
- package/package.json +9 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,eAAe,CAAC;AAMnC,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,iBAAiB,GAAG,IAAI,CAsNvE"}
|
package/dist/src/api/index.js
CHANGED
|
@@ -27,6 +27,7 @@ const events_1 = require("events");
|
|
|
27
27
|
const ts = __importStar(require("@terascope/utils"));
|
|
28
28
|
const connector_utils_1 = require("../connector-utils");
|
|
29
29
|
const utils_1 = require("./utils");
|
|
30
|
+
const prom_metrics_api_1 = require("./prom-metrics/prom-metrics-api");
|
|
30
31
|
/*
|
|
31
32
|
* This module controls the API endpoints that are exposed under context.apis.
|
|
32
33
|
*/
|
|
@@ -131,7 +132,8 @@ function registerApis(context) {
|
|
|
131
132
|
});
|
|
132
133
|
}
|
|
133
134
|
return workers;
|
|
134
|
-
}
|
|
135
|
+
},
|
|
136
|
+
promMetrics: new prom_metrics_api_1.PromMetrics(context, context.logger)
|
|
135
137
|
};
|
|
136
138
|
function _registerFoundationAPIs() {
|
|
137
139
|
registerAPI('foundation', foundationApis);
|
|
@@ -164,6 +166,39 @@ function registerApis(context) {
|
|
|
164
166
|
};
|
|
165
167
|
_registerFoundationAPIs();
|
|
166
168
|
_registerLegacyAPIs();
|
|
169
|
+
/*
|
|
170
|
+
* Setup proxy for 'foundation.promMetrics' here to have access to 'PromMetrics' functions.
|
|
171
|
+
* This proxy allows the interception of the 'promMetrics' function calls in the case that
|
|
172
|
+
* 'PromMetrics' has not been initialized.
|
|
173
|
+
*/
|
|
174
|
+
const promMetricsProxy = new Proxy(context.apis.foundation.promMetrics, {
|
|
175
|
+
get(promMetrics, funcName) {
|
|
176
|
+
const apiExists = promMetrics.verifyAPI();
|
|
177
|
+
if (apiExists) {
|
|
178
|
+
if (funcName === 'init') {
|
|
179
|
+
throw new Error('Prom metrics API cannot be initialized more than once.');
|
|
180
|
+
}
|
|
181
|
+
return promMetrics[funcName];
|
|
182
|
+
}
|
|
183
|
+
if (funcName === 'init') {
|
|
184
|
+
return promMetrics[funcName];
|
|
185
|
+
}
|
|
186
|
+
if (funcName === 'hasMetric' || funcName === 'deleteMetric') {
|
|
187
|
+
return () => false;
|
|
188
|
+
}
|
|
189
|
+
if (funcName === 'set' || funcName === 'addMetric'
|
|
190
|
+
|| funcName === 'addSummary' || funcName === 'inc'
|
|
191
|
+
|| funcName === 'dec' || funcName === 'observe'
|
|
192
|
+
|| funcName === 'shutdown') {
|
|
193
|
+
return () => {
|
|
194
|
+
/// return empty function
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
return promMetrics[funcName];
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
/// Set the global promMetrics to the promMetricsProxy to override functions everywhere
|
|
201
|
+
context.apis.foundation.promMetrics = promMetricsProxy;
|
|
167
202
|
}
|
|
168
203
|
exports.default = registerApis;
|
|
169
204
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAsC;AACtC,qDAAuC;AACvC,wDAAsF;AACtF,mCAA2C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Logger } from '@terascope/utils';
|
|
2
|
+
import { PromMetricsAPIConfig } from '../../interfaces';
|
|
3
|
+
export type CloseExporter = () => void;
|
|
4
|
+
export default class Exporter {
|
|
5
|
+
private metricServer;
|
|
6
|
+
logger: Logger;
|
|
7
|
+
constructor(logger: Logger);
|
|
8
|
+
create(promMetricsAPIConfig: PromMetricsAPIConfig): Promise<void>;
|
|
9
|
+
shutdown(): Promise<void>;
|
|
10
|
+
deleteMetric(name: string): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=exporter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../../src/api/prom-metrics/exporter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,QAAQ;IACzB,OAAO,CAAC,YAAY,CAAU;IAC9B,MAAM,EAAE,MAAM,CAAC;gBAEH,MAAM,EAAE,MAAM;IAIpB,MAAM,CACR,oBAAoB,EAAE,oBAAoB;IA0BxC,QAAQ;IAIR,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGlD"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const prom_client_1 = __importDefault(require("prom-client"));
|
|
7
|
+
const express_1 = __importDefault(require("express"));
|
|
8
|
+
class Exporter {
|
|
9
|
+
constructor(logger) {
|
|
10
|
+
this.logger = logger.child({ module: 'prometheus_exporter' });
|
|
11
|
+
}
|
|
12
|
+
async create(promMetricsAPIConfig) {
|
|
13
|
+
try {
|
|
14
|
+
if (promMetricsAPIConfig.default_metrics) {
|
|
15
|
+
const defaultMetricsConfig = {
|
|
16
|
+
prefix: promMetricsAPIConfig.prefix,
|
|
17
|
+
labels: promMetricsAPIConfig.labels
|
|
18
|
+
};
|
|
19
|
+
prom_client_1.default.collectDefaultMetrics(defaultMetricsConfig);
|
|
20
|
+
}
|
|
21
|
+
const { port } = promMetricsAPIConfig;
|
|
22
|
+
const app = (0, express_1.default)();
|
|
23
|
+
app.get('/', async (_req, res) => {
|
|
24
|
+
res.status(404).send('See the \'/metrics\' endpoint for the teraslice metric exporter\n');
|
|
25
|
+
});
|
|
26
|
+
app.get('/metrics', async (_req, res) => {
|
|
27
|
+
res.set('Content-Type', prom_client_1.default.register.contentType);
|
|
28
|
+
res.end(await prom_client_1.default.register.metrics());
|
|
29
|
+
});
|
|
30
|
+
this.metricServer = app.listen(port);
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
this.logger.error('Prometheus exporter creation failed: ', err);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
async shutdown() {
|
|
37
|
+
this.metricServer.close();
|
|
38
|
+
}
|
|
39
|
+
async deleteMetric(name) {
|
|
40
|
+
prom_client_1.default.register.removeSingleMetric(name);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.default = Exporter;
|
|
44
|
+
//# sourceMappingURL=exporter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/api/prom-metrics/exporter.ts"],"names":[],"mappings":";;;;;AAAA,8DAAqC;AACrC,sDAAqD;AAOrD,MAAqB,QAAQ;IAIzB,YAAY,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CACR,oBAA0C;QAE1C,IAAI;YACA,IAAI,oBAAoB,CAAC,eAAe,EAAE;gBACtC,MAAM,oBAAoB,GAAG;oBACzB,MAAM,EAAE,oBAAoB,CAAC,MAAM;oBACnC,MAAM,EAAE,oBAAoB,CAAC,MAAM;iBACtC,CAAC;gBACF,qBAAU,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;aAC1D;YACD,MAAM,EAAE,IAAI,EAAE,GAAG,oBAAoB,CAAC;YACtC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;YACtB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAE,EAAE;gBAChD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;YAC9F,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAE,EAAE;gBACvD,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,qBAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBACzD,GAAG,CAAC,GAAG,CAAC,MAAM,qBAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SACxC;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,GAAG,CAAC,CAAC;SACnE;IACL,CAAC;IACD,KAAK,CAAC,QAAQ;QACV,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY;QAC3B,qBAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;CACJ;AA1CD,2BA0CC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { Logger } from '@terascope/utils';
|
|
2
|
+
import * as i from '../../interfaces';
|
|
3
|
+
export declare class PromMetrics {
|
|
4
|
+
readonly metricList: i.MetricList;
|
|
5
|
+
default_labels: Record<string, string>;
|
|
6
|
+
prefix: string;
|
|
7
|
+
private metricExporter;
|
|
8
|
+
context: i.FoundationContext;
|
|
9
|
+
apiConfig: i.PromMetricsAPIConfig;
|
|
10
|
+
apiRunning: boolean;
|
|
11
|
+
logger: Logger;
|
|
12
|
+
constructor(context: i.FoundationContext, logger: Logger);
|
|
13
|
+
/**
|
|
14
|
+
* Initialize the promMetrics API and create an exporter server. Will not initialize a new API
|
|
15
|
+
* if in native clustering or if the API has already been initialized.
|
|
16
|
+
* @param {i.PromMetricsInitConfig} config PromMetricsInitConfig values override those
|
|
17
|
+
* of terafoundation. This allows jobs to set different metrics configurations than the master.
|
|
18
|
+
* @returns {Promise<boolean>} Was the API initialized
|
|
19
|
+
*/
|
|
20
|
+
init(config: i.PromMetricsInitConfig): Promise<boolean>;
|
|
21
|
+
/**
|
|
22
|
+
* [set metric to value]
|
|
23
|
+
* @param {string} name [metric name]
|
|
24
|
+
* @param {Record<string, string>} labels [list of labels and labels values]
|
|
25
|
+
* @param {number} value [metric value]
|
|
26
|
+
* @return {void}
|
|
27
|
+
*/
|
|
28
|
+
set(name: string, labels: Record<string, string>, value: number): void;
|
|
29
|
+
/**
|
|
30
|
+
* [increment metric by value]
|
|
31
|
+
* @param {string} name [metric name]
|
|
32
|
+
* @param {Record<string, string>} labels [list of labels and labels values]
|
|
33
|
+
* @param {number} value [metric value, default = 1]
|
|
34
|
+
* @return {void}
|
|
35
|
+
*/
|
|
36
|
+
inc(name: string, labels: Record<string, string>, value?: number): void;
|
|
37
|
+
/**
|
|
38
|
+
* [decrement metric by value]
|
|
39
|
+
* @param {string} name [metric name]
|
|
40
|
+
* @param {Record<string, string>} labels [list of labels and labels values]
|
|
41
|
+
* @param {number} value [metric value, default = 1]
|
|
42
|
+
* @return {void}
|
|
43
|
+
*/
|
|
44
|
+
dec(name: string, labels: Record<string, string>, value?: number): void;
|
|
45
|
+
/**
|
|
46
|
+
* [observe value, used by summary metric type]
|
|
47
|
+
* @param {string} name [metric name]
|
|
48
|
+
* @param {Array<string, string>} labels [list of labels and labels values]
|
|
49
|
+
* @param {number} value [metric value]
|
|
50
|
+
* @return {void}
|
|
51
|
+
*/
|
|
52
|
+
observe(name: string, labels: Record<string, string>, value: number): void;
|
|
53
|
+
/**
|
|
54
|
+
* [addMetric (define) new metric]
|
|
55
|
+
* @param {string} name [metric name]
|
|
56
|
+
* @param {string} help [metric help]
|
|
57
|
+
* @param {Array<string>} labelsNames [list of label names]
|
|
58
|
+
* @param {'gauge' | 'counter' | 'histogram'} type [gauge,counter,histogram,or summary]
|
|
59
|
+
* @param {Array<number>} buckets [default buckets]
|
|
60
|
+
* @return {Promise<void>}
|
|
61
|
+
*/
|
|
62
|
+
addMetric(name: string, help: string, labelsNames: Array<string>, type: 'gauge' | 'counter' | 'histogram', buckets?: Array<number>): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* [hasMetric check if metricList contains metric]
|
|
65
|
+
* @param {string} name [metric name]
|
|
66
|
+
* @return {boolean}
|
|
67
|
+
*/
|
|
68
|
+
hasMetric(name: string): boolean;
|
|
69
|
+
/**
|
|
70
|
+
* [deleteMetric delete metric from metricList]
|
|
71
|
+
* @param {string} name [metric name]
|
|
72
|
+
* @return {Promise<boolean>} [was the metric successfully deleted]
|
|
73
|
+
*/
|
|
74
|
+
deleteMetric(name: string): Promise<boolean>;
|
|
75
|
+
/**
|
|
76
|
+
* [addSummary (define) new summary metric]
|
|
77
|
+
* @param {string} name [metric name]
|
|
78
|
+
* @param {string} help [metric help]
|
|
79
|
+
* @param {Array<string>} labelsNames [list of label names]
|
|
80
|
+
* @param {Array<number>} percentiles [metric percentiles, default[0.01, 0.1, 0.9, 0.99] ]
|
|
81
|
+
* @param {number} maxAgeSeconds [how old a bucket can be before it is reset ]
|
|
82
|
+
* @param {number} ageBuckets [how many buckets for sliding window ]
|
|
83
|
+
* @return {Promise<void>}
|
|
84
|
+
*/
|
|
85
|
+
addSummary(name: string, help: string, labelsNames: Array<string>, maxAgeSeconds?: number, ageBuckets?: number, percentiles?: Array<number>): Promise<void>;
|
|
86
|
+
private _createGaugeMetric;
|
|
87
|
+
private _createCounterMetric;
|
|
88
|
+
private _createHistogramMetric;
|
|
89
|
+
private _createSummaryMetric;
|
|
90
|
+
private _setPodName;
|
|
91
|
+
private createAPI;
|
|
92
|
+
verifyAPI(): boolean;
|
|
93
|
+
shutdown(): Promise<void>;
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=prom-metrics-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prom-metrics-api.d.ts","sourceRoot":"","sources":["../../../../src/api/prom-metrics/prom-metrics-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAM1C,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAC;AAItC,qBAAa,WAAW;IACpB,QAAQ,CAAC,UAAU,EAAG,CAAC,CAAC,UAAU,CAAC;IAEnC,cAAc,EAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,cAAc,CAAY;IAClC,OAAO,EAAE,CAAC,CAAC,iBAAiB,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,oBAAoB,CAAC;IAClC,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;gBAGX,OAAO,EAAE,CAAC,CAAC,iBAAiB,EAC5B,MAAM,EAAE,MAAM;IAUlB;;;;;;OAMG;IACG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,qBAAqB;IA0C1C;;;;;;OAMG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAgBtE;;;;;;OAMG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,SAAI,GAAG,IAAI;IAiBlE;;;;;;OAMG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,SAAI,GAAG,IAAI;IAgBlE;;;;;;OAMG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAiB1E;;;;;;;;OAQG;IACG,SAAS,CACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,EAC1B,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,WAAW,EACvC,OAAO,GAAE,KAAK,CAAC,MAAM,CAA8B,GACpD,OAAO,CAAC,IAAI,CAAC;IAuBhB;;;;OAIG;IAEH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC;;;;OAIG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkBlD;;;;;;;;;OASG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,EAC1B,aAAa,SAAM,EACnB,UAAU,SAAI,EACd,WAAW,GAAE,KAAK,CAAC,MAAM,CAA0B,GACpD,OAAO,CAAC,IAAI,CAAC;IAchB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,WAAW;YAQL,SAAS;IAoBvB,SAAS,IAAI,OAAO;IAId,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CASlC"}
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.PromMetrics = void 0;
|
|
7
|
+
const os_1 = __importDefault(require("os"));
|
|
8
|
+
const prom_client_1 = require("prom-client");
|
|
9
|
+
const exporter_1 = __importDefault(require("./exporter"));
|
|
10
|
+
class PromMetrics {
|
|
11
|
+
constructor(context, logger) {
|
|
12
|
+
this.context = context;
|
|
13
|
+
this.apiRunning = false;
|
|
14
|
+
this.apiConfig = {};
|
|
15
|
+
this.prefix = '';
|
|
16
|
+
this.logger = logger.child({ module: 'prom_metrics' });
|
|
17
|
+
this.metricList = {};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Initialize the promMetrics API and create an exporter server. Will not initialize a new API
|
|
21
|
+
* if in native clustering or if the API has already been initialized.
|
|
22
|
+
* @param {i.PromMetricsInitConfig} config PromMetricsInitConfig values override those
|
|
23
|
+
* of terafoundation. This allows jobs to set different metrics configurations than the master.
|
|
24
|
+
* @returns {Promise<boolean>} Was the API initialized
|
|
25
|
+
*/
|
|
26
|
+
async init(config) {
|
|
27
|
+
const { terafoundation, teraslice } = config.context.sysconfig;
|
|
28
|
+
const metricsEnabledInTF = terafoundation.prom_metrics_enabled;
|
|
29
|
+
const portToUse = config.port || terafoundation.prom_metrics_port;
|
|
30
|
+
if (teraslice.cluster_manager_type === 'native') {
|
|
31
|
+
this.logger.warn('Skipping PromMetricsAPI initialization: incompatible with native clustering.');
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
// If prom_metrics_add_default is defined in jobSpec use that value.
|
|
35
|
+
// If not use the terafoundation value.
|
|
36
|
+
const useDefaultMetrics = config.default_metrics !== undefined
|
|
37
|
+
? config.default_metrics
|
|
38
|
+
: terafoundation.prom_metrics_add_default;
|
|
39
|
+
// If prom_metrics_enabled is true in jobConfig, or if not specified in
|
|
40
|
+
// jobSpec and true in terafoundation, then we enable metrics.
|
|
41
|
+
if (config.metrics_enabled_by_job === true
|
|
42
|
+
|| (config.metrics_enabled_by_job === undefined && metricsEnabledInTF)) {
|
|
43
|
+
const apiConfig = {
|
|
44
|
+
assignment: config.assignment,
|
|
45
|
+
port: portToUse,
|
|
46
|
+
default_metrics: useDefaultMetrics,
|
|
47
|
+
labels: config.labels,
|
|
48
|
+
prefix: config.prefix
|
|
49
|
+
};
|
|
50
|
+
this.prefix = apiConfig.prefix || `teraslice_${apiConfig.assignment}_`;
|
|
51
|
+
this.default_labels = {
|
|
52
|
+
name: this.context.sysconfig.teraslice.name,
|
|
53
|
+
assignment: apiConfig.assignment,
|
|
54
|
+
...apiConfig.labels
|
|
55
|
+
};
|
|
56
|
+
await this.createAPI(apiConfig);
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
this.logger.warn('Cannot create PromMetricsAPI because metrics are disabled.');
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* [set metric to value]
|
|
64
|
+
* @param {string} name [metric name]
|
|
65
|
+
* @param {Record<string, string>} labels [list of labels and labels values]
|
|
66
|
+
* @param {number} value [metric value]
|
|
67
|
+
* @return {void}
|
|
68
|
+
*/
|
|
69
|
+
set(name, labels, value) {
|
|
70
|
+
const metric = this.metricList[name];
|
|
71
|
+
if (!metric.functions || !metric.metric) {
|
|
72
|
+
throw new Error(`Metric ${name} is not setup`);
|
|
73
|
+
}
|
|
74
|
+
if (metric.metric instanceof prom_client_1.Gauge) {
|
|
75
|
+
const labelValues = Object.keys(labels).map((key) => labels[key]);
|
|
76
|
+
const res = metric.metric.labels(...labelValues.concat(Object.values(this.default_labels)));
|
|
77
|
+
res.set(value);
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
throw new Error(`set not available on ${name} metric`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* [increment metric by value]
|
|
85
|
+
* @param {string} name [metric name]
|
|
86
|
+
* @param {Record<string, string>} labels [list of labels and labels values]
|
|
87
|
+
* @param {number} value [metric value, default = 1]
|
|
88
|
+
* @return {void}
|
|
89
|
+
*/
|
|
90
|
+
inc(name, labels, value = 1) {
|
|
91
|
+
const metric = this.metricList[name];
|
|
92
|
+
if (!metric.functions || !metric.metric) {
|
|
93
|
+
throw new Error(`Metric ${name} is not setup`);
|
|
94
|
+
}
|
|
95
|
+
if (metric.metric instanceof prom_client_1.Counter || metric.metric instanceof prom_client_1.Gauge) {
|
|
96
|
+
const labelValues = Object.keys(labels).map((key) => labels[key]);
|
|
97
|
+
const res = metric.metric.labels(...labelValues.concat(Object.values(this.default_labels)));
|
|
98
|
+
res.inc(value);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
throw new Error(`inc not available on ${name} metric`);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* [decrement metric by value]
|
|
106
|
+
* @param {string} name [metric name]
|
|
107
|
+
* @param {Record<string, string>} labels [list of labels and labels values]
|
|
108
|
+
* @param {number} value [metric value, default = 1]
|
|
109
|
+
* @return {void}
|
|
110
|
+
*/
|
|
111
|
+
dec(name, labels, value = 1) {
|
|
112
|
+
const metric = this.metricList[name];
|
|
113
|
+
if (!metric.functions || !metric.metric) {
|
|
114
|
+
throw new Error(`Metric ${name} is not setup`);
|
|
115
|
+
}
|
|
116
|
+
if (metric.metric instanceof prom_client_1.Gauge) {
|
|
117
|
+
const labelValues = Object.keys(labels).map((key) => labels[key]);
|
|
118
|
+
const res = metric.metric.labels(...labelValues.concat(Object.values(this.default_labels)));
|
|
119
|
+
res.dec(value);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
throw new Error(`dec not available on ${name} metric`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* [observe value, used by summary metric type]
|
|
127
|
+
* @param {string} name [metric name]
|
|
128
|
+
* @param {Array<string, string>} labels [list of labels and labels values]
|
|
129
|
+
* @param {number} value [metric value]
|
|
130
|
+
* @return {void}
|
|
131
|
+
*/
|
|
132
|
+
observe(name, labels, value) {
|
|
133
|
+
const metric = this.metricList[name];
|
|
134
|
+
if (!metric.functions || !metric.metric) {
|
|
135
|
+
throw new Error(`Metric ${name} is not setup`);
|
|
136
|
+
}
|
|
137
|
+
if (metric.metric instanceof prom_client_1.Summary || metric.metric instanceof prom_client_1.Histogram) {
|
|
138
|
+
const labelValues = Object.keys(labels).map((key) => labels[key]);
|
|
139
|
+
const res = metric.metric.labels(...labelValues.concat(Object.values(this.default_labels)));
|
|
140
|
+
res.observe(value);
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
throw new Error(`observe not available on ${name} metric`);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* [addMetric (define) new metric]
|
|
148
|
+
* @param {string} name [metric name]
|
|
149
|
+
* @param {string} help [metric help]
|
|
150
|
+
* @param {Array<string>} labelsNames [list of label names]
|
|
151
|
+
* @param {'gauge' | 'counter' | 'histogram'} type [gauge,counter,histogram,or summary]
|
|
152
|
+
* @param {Array<number>} buckets [default buckets]
|
|
153
|
+
* @return {Promise<void>}
|
|
154
|
+
*/
|
|
155
|
+
async addMetric(name, help, labelsNames, type, buckets = [0.1, 5, 15, 50, 100, 500]) {
|
|
156
|
+
if (!this.hasMetric(name)) {
|
|
157
|
+
const fullname = this.prefix + name;
|
|
158
|
+
if (type === 'gauge') {
|
|
159
|
+
this.metricList[name] = this._createGaugeMetric(fullname, help, labelsNames.concat(Object.keys(this.default_labels)));
|
|
160
|
+
}
|
|
161
|
+
if (type === 'counter') {
|
|
162
|
+
this.metricList[name] = this._createCounterMetric(fullname, help, labelsNames.concat(Object.keys(this.default_labels)));
|
|
163
|
+
}
|
|
164
|
+
if (type === 'histogram') {
|
|
165
|
+
this.metricList[name] = this._createHistogramMetric(fullname, help, labelsNames.concat(Object.keys(this.default_labels)), buckets);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
this.logger.info(`metric ${name} already defined in metric list`);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* [hasMetric check if metricList contains metric]
|
|
174
|
+
* @param {string} name [metric name]
|
|
175
|
+
* @return {boolean}
|
|
176
|
+
*/
|
|
177
|
+
hasMetric(name) {
|
|
178
|
+
return (name in this.metricList);
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* [deleteMetric delete metric from metricList]
|
|
182
|
+
* @param {string} name [metric name]
|
|
183
|
+
* @return {Promise<boolean>} [was the metric successfully deleted]
|
|
184
|
+
*/
|
|
185
|
+
async deleteMetric(name) {
|
|
186
|
+
let deleted = false;
|
|
187
|
+
const fullname = this.prefix + name;
|
|
188
|
+
this.logger.info(`delete metric ${fullname}`);
|
|
189
|
+
if (this.hasMetric(name)) {
|
|
190
|
+
deleted = delete this.metricList[name];
|
|
191
|
+
try {
|
|
192
|
+
await this.metricExporter.deleteMetric(fullname);
|
|
193
|
+
}
|
|
194
|
+
catch (err) {
|
|
195
|
+
deleted = false;
|
|
196
|
+
throw new Error(`unable to delete metric ${fullname} from exporter`);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
throw new Error(`metric ${name} not defined in metric list`);
|
|
201
|
+
}
|
|
202
|
+
return deleted;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* [addSummary (define) new summary metric]
|
|
206
|
+
* @param {string} name [metric name]
|
|
207
|
+
* @param {string} help [metric help]
|
|
208
|
+
* @param {Array<string>} labelsNames [list of label names]
|
|
209
|
+
* @param {Array<number>} percentiles [metric percentiles, default[0.01, 0.1, 0.9, 0.99] ]
|
|
210
|
+
* @param {number} maxAgeSeconds [how old a bucket can be before it is reset ]
|
|
211
|
+
* @param {number} ageBuckets [how many buckets for sliding window ]
|
|
212
|
+
* @return {Promise<void>}
|
|
213
|
+
*/
|
|
214
|
+
async addSummary(name, help, labelsNames, maxAgeSeconds = 600, ageBuckets = 5, percentiles = [0.01, 0.1, 0.9, 0.99]) {
|
|
215
|
+
if (!(name in this.metricList)) {
|
|
216
|
+
const fullname = this.prefix + name;
|
|
217
|
+
this.metricList[name] = this._createSummaryMetric(fullname, help, labelsNames.concat(Object.keys(this.default_labels)), percentiles, maxAgeSeconds, ageBuckets);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
_createGaugeMetric(name, help, labelsNames) {
|
|
221
|
+
const gauge = new prom_client_1.Gauge({
|
|
222
|
+
name,
|
|
223
|
+
help,
|
|
224
|
+
labelNames: labelsNames,
|
|
225
|
+
});
|
|
226
|
+
return { name, metric: gauge, functions: new Set(['inc', 'dec', 'set']) };
|
|
227
|
+
}
|
|
228
|
+
_createCounterMetric(name, help, labelsNames) {
|
|
229
|
+
const counter = new prom_client_1.Counter({
|
|
230
|
+
name,
|
|
231
|
+
help,
|
|
232
|
+
labelNames: labelsNames,
|
|
233
|
+
});
|
|
234
|
+
return { name, metric: counter, functions: new Set(['inc']) };
|
|
235
|
+
}
|
|
236
|
+
_createHistogramMetric(name, help, labelsNames, buckets) {
|
|
237
|
+
const histogram = new prom_client_1.Histogram({
|
|
238
|
+
name,
|
|
239
|
+
help,
|
|
240
|
+
labelNames: labelsNames,
|
|
241
|
+
buckets
|
|
242
|
+
});
|
|
243
|
+
return { name, metric: histogram, functions: new Set(['observe']) };
|
|
244
|
+
}
|
|
245
|
+
_createSummaryMetric(name, help, labelsNames, percentiles, ageBuckets, maxAgeSeconds) {
|
|
246
|
+
const histogram = new prom_client_1.Summary({
|
|
247
|
+
name,
|
|
248
|
+
help,
|
|
249
|
+
labelNames: labelsNames,
|
|
250
|
+
percentiles,
|
|
251
|
+
maxAgeSeconds,
|
|
252
|
+
ageBuckets
|
|
253
|
+
});
|
|
254
|
+
return { name, metric: histogram, functions: new Set(['observe']) };
|
|
255
|
+
}
|
|
256
|
+
_setPodName() {
|
|
257
|
+
// in a pod the hostname is the pod name
|
|
258
|
+
const host = os_1.default.hostname();
|
|
259
|
+
if (host.startsWith('ts-wkr-')) {
|
|
260
|
+
this.default_labels.pod_name = host;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
async createAPI(apiConfig) {
|
|
264
|
+
this._setPodName();
|
|
265
|
+
try {
|
|
266
|
+
if (!this.metricExporter) {
|
|
267
|
+
apiConfig.labels = Object.assign({}, apiConfig.labels, this.default_labels);
|
|
268
|
+
this.metricExporter = new exporter_1.default(this.logger);
|
|
269
|
+
await this.metricExporter.create(apiConfig);
|
|
270
|
+
this.logger.info(`prom_metrics_API exporter created on port ${apiConfig.port}`);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
catch (err) {
|
|
274
|
+
this.logger.info('prom_metrics_API exporter already running');
|
|
275
|
+
this.logger.error(err);
|
|
276
|
+
}
|
|
277
|
+
this.apiRunning = true;
|
|
278
|
+
}
|
|
279
|
+
verifyAPI() {
|
|
280
|
+
return this.apiRunning;
|
|
281
|
+
}
|
|
282
|
+
async shutdown() {
|
|
283
|
+
this.logger.info('prom_metrics_API exporter shutdown');
|
|
284
|
+
try {
|
|
285
|
+
await this.metricExporter.shutdown();
|
|
286
|
+
this.apiRunning = false;
|
|
287
|
+
}
|
|
288
|
+
catch (err) {
|
|
289
|
+
this.logger.error(`shutting down metric exporter ${err}`);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
exports.PromMetrics = PromMetrics;
|
|
294
|
+
//# sourceMappingURL=prom-metrics-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prom-metrics-api.js","sourceRoot":"","sources":["../../../../src/api/prom-metrics/prom-metrics-api.ts"],"names":[],"mappings":";;;;;;AAEA,4CAAoB;AACpB,6CAEqB;AAGrB,0DAAkC;AAElC,MAAa,WAAW;IAWpB,YACI,OAA4B,EAC5B,MAAc;QAEd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,EAA4B,CAAC;QAC9C,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,CAAC,MAA+B;QACtC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;QAC/D,MAAM,kBAAkB,GAAG,cAAc,CAAC,oBAAoB,CAAC;QAC/D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,IAAI,cAAc,CAAC,iBAAiB,CAAC;QAElE,IAAI,SAAS,CAAC,oBAAoB,KAAK,QAAQ,EAAE;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;YACjG,OAAO,KAAK,CAAC;SAChB;QAED,oEAAoE;QACpE,uCAAuC;QACvC,MAAM,iBAAiB,GAAG,MAAM,CAAC,eAAe,KAAK,SAAS;YAC1D,CAAC,CAAC,MAAM,CAAC,eAAe;YACxB,CAAC,CAAC,cAAc,CAAC,wBAAwB,CAAC;QAE9C,uEAAuE;QACvE,8DAA8D;QAC9D,IAAI,MAAM,CAAC,sBAAsB,KAAK,IAAI;eACvC,CAAC,MAAM,CAAC,sBAAsB,KAAK,SAAS,IAAI,kBAAkB,CAAC,EAAE;YACpE,MAAM,SAAS,GAA2B;gBACtC,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,IAAI,EAAE,SAAS;gBACf,eAAe,EAAE,iBAAiB;gBAClC,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EAAE,MAAM,CAAC,MAAM;aACxB,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,IAAI,aAAa,SAAS,CAAC,UAAU,GAAG,CAAC;YAEvE,IAAI,CAAC,cAAc,GAAG;gBAClB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI;gBAC3C,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,GAAG,SAAS,CAAC,MAAM;aACtB,CAAC;YACF,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAChC,OAAO,IAAI,CAAC;SACf;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;QAC/E,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,GAAG,CAAC,IAAY,EAAE,MAA8B,EAAE,KAAa;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACrC,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,eAAe,CAAC,CAAC;SAClD;QACD,IAAI,MAAM,CAAC,MAAM,YAAY,mBAAK,EAAE;YAChC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAClE,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAClD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CACrC,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAClB;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,SAAS,CAAC,CAAC;SAC1D;IACL,CAAC;IAED;;;;;;OAMG;IACH,GAAG,CAAC,IAAY,EAAE,MAA8B,EAAE,KAAK,GAAG,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACrC,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,eAAe,CAAC,CAAC;SAClD;QAED,IAAI,MAAM,CAAC,MAAM,YAAY,qBAAO,IAAI,MAAM,CAAC,MAAM,YAAY,mBAAK,EAAE;YACpE,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAClE,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAClD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CACrC,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAClB;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,SAAS,CAAC,CAAC;SAC1D;IACL,CAAC;IAED;;;;;;OAMG;IACH,GAAG,CAAC,IAAY,EAAE,MAA8B,EAAE,KAAK,GAAG,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACrC,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,eAAe,CAAC,CAAC;SAClD;QAED,IAAI,MAAM,CAAC,MAAM,YAAY,mBAAK,EAAE;YAChC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAClE,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAClD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CACrC,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAClB;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,SAAS,CAAC,CAAC;SAC1D;IACL,CAAC;IACD;;;;;;OAMG;IACH,OAAO,CAAC,IAAY,EAAE,MAA8B,EAAE,KAAa;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACrC,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,eAAe,CAAC,CAAC;SAClD;QAED,IAAI,MAAM,CAAC,MAAM,YAAY,qBAAO,IAAI,MAAM,CAAC,MAAM,YAAY,uBAAS,EAAE;YACxE,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAClE,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAClD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CACrC,CAAC,CAAC;YACH,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACtB;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,SAAS,CAAC,CAAC;SAC9D;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,SAAS,CACX,IAAY,EACZ,IAAY,EACZ,WAA0B,EAC1B,IAAuC,EACvC,UAAyB,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACpC,IAAI,IAAI,KAAK,OAAO,EAAE;gBAClB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAC3C,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CACvE,CAAC;aACL;YACD,IAAI,IAAI,KAAK,SAAS,EAAE;gBACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAC7C,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CACvE,CAAC;aACL;YACD,IAAI,IAAI,KAAK,WAAW,EAAE;gBACtB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAC/C,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAChF,CAAC;aACL;SACJ;aAAM;YACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,iCAAiC,CAAC,CAAC;SACrE;IACL,CAAC;IAED;;;;OAIG;IAEH,SAAS,CAAC,IAAY;QAClB,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,IAAY;QAC3B,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC;QAC9C,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACtB,OAAO,GAAG,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI;gBACA,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;aACpD;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,GAAG,KAAK,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,gBAAgB,CAAC,CAAC;aACxE;SACJ;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,6BAA6B,CAAC,CAAC;SAChE;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU,CAAC,IAAY,EACzB,IAAY,EACZ,WAA0B,EAC1B,aAAa,GAAG,GAAG,EACnB,UAAU,GAAG,CAAC,EACd,cAA6B,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;QAEnD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAC7C,QAAQ,EACR,IAAI,EACJ,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EACpD,WAAW,EACX,aAAa,EACb,UAAU,CACb,CAAC;SACL;IACL,CAAC;IAEO,kBAAkB,CAAC,IAAY,EAAE,IAAY,EACjD,WAA0B;QAC1B,MAAM,KAAK,GAAG,IAAI,mBAAK,CAAC;YACpB,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,WAAW;SAC1B,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;IAC9E,CAAC;IAEO,oBAAoB,CAAC,IAAY,EAAE,IAAY,EACnD,WAA0B;QAC1B,MAAM,OAAO,GAAG,IAAI,qBAAO,CAAC;YACxB,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,WAAW;SAC1B,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;IAClE,CAAC;IAEO,sBAAsB,CAAC,IAAY,EAAE,IAAY,EAAE,WAA0B,EACjF,OAAsB;QACtB,MAAM,SAAS,GAAG,IAAI,uBAAS,CAAC;YAC5B,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,WAAW;YACvB,OAAO;SACV,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;IACxE,CAAC;IAEO,oBAAoB,CAAC,IAAY,EAAE,IAAY,EAAE,WAA0B,EAC/E,WAA0B,EAAE,UAAkB,EAAE,aAAqB;QACrE,MAAM,SAAS,GAAG,IAAI,qBAAO,CAAC;YAC1B,IAAI;YACJ,IAAI;YACJ,UAAU,EAAE,WAAW;YACvB,WAAW;YACX,aAAa;YACb,UAAU;SACb,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;IACxE,CAAC;IAEO,WAAW;QACf,wCAAwC;QACxC,MAAM,IAAI,GAAG,YAAE,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAC5B,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;SACvC;IACL,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,SAAiC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI;YACA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;gBACtB,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAC5B,EAAE,EACF,SAAS,CAAC,MAAM,EAChB,IAAI,CAAC,cAAc,CACtB,CAAC;gBACF,IAAI,CAAC,cAAc,GAAG,IAAI,kBAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAChD,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;aACnF;SACJ;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SAC1B;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QACvD,IAAI;YACA,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;SAC3B;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,GAAG,EAAE,CAAC,CAAC;SAC7D;IACL,CAAC;CACJ;AAhWD,kCAgWC"}
|
package/dist/src/interfaces.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
import { Format } from 'convict';
|
|
4
|
+
import type { Gauge, Counter, Histogram, Summary } from 'prom-client';
|
|
4
5
|
import { EventEmitter } from 'events';
|
|
5
6
|
import { Logger, Overwrite } from '@terascope/utils';
|
|
6
7
|
import { Cluster as NodeJSCluster, Worker as NodeJSWorker } from 'cluster';
|
|
@@ -41,6 +42,7 @@ export interface FoundationAPIs {
|
|
|
41
42
|
client: any;
|
|
42
43
|
}>;
|
|
43
44
|
startWorkers(num: number, envOptions: Record<string, string>): void;
|
|
45
|
+
promMetrics: PromMetrics;
|
|
44
46
|
}
|
|
45
47
|
export interface LegacyFoundationApis {
|
|
46
48
|
/** Create a child logger */
|
|
@@ -82,9 +84,12 @@ export type FoundationSysConfig<S> = {
|
|
|
82
84
|
log_path: string;
|
|
83
85
|
log_level: LogLevelConfig;
|
|
84
86
|
logging: LogType[];
|
|
85
|
-
asset_storage_connection_type
|
|
86
|
-
asset_storage_connection
|
|
87
|
+
asset_storage_connection_type: string;
|
|
88
|
+
asset_storage_connection: string;
|
|
87
89
|
asset_storage_bucket?: string;
|
|
90
|
+
prom_metrics_enabled: boolean;
|
|
91
|
+
prom_metrics_port: number;
|
|
92
|
+
prom_metrics_add_default: boolean;
|
|
88
93
|
};
|
|
89
94
|
} & S;
|
|
90
95
|
export type FoundationContext<S = Record<string, any>, A = Record<string, any>, D extends string = string> = {
|
|
@@ -102,4 +107,36 @@ export type FoundationContext<S = Record<string, any>, A = Record<string, any>,
|
|
|
102
107
|
export type ParsedArgs<S> = {
|
|
103
108
|
configfile: FoundationSysConfig<S>;
|
|
104
109
|
};
|
|
110
|
+
export interface PromMetricsInitConfig extends Omit<PromMetricsAPIConfig, 'port' | 'default_metrics'> {
|
|
111
|
+
context: FoundationContext;
|
|
112
|
+
logger: Logger;
|
|
113
|
+
metrics_enabled_by_job?: boolean;
|
|
114
|
+
port?: number;
|
|
115
|
+
default_metrics?: boolean;
|
|
116
|
+
}
|
|
117
|
+
export interface PromMetricsAPIConfig {
|
|
118
|
+
assignment: string;
|
|
119
|
+
port: number;
|
|
120
|
+
default_metrics: boolean;
|
|
121
|
+
labels?: Record<string, string>;
|
|
122
|
+
prefix?: string;
|
|
123
|
+
}
|
|
124
|
+
export type MetricList = Record<string, {
|
|
125
|
+
readonly name?: string;
|
|
126
|
+
readonly metric?: Gauge<any> | Counter<any> | Histogram<any> | Summary<any>;
|
|
127
|
+
readonly functions?: Set<string>;
|
|
128
|
+
}>;
|
|
129
|
+
export interface PromMetrics {
|
|
130
|
+
init: (config: PromMetricsInitConfig) => Promise<boolean>;
|
|
131
|
+
set: (name: string, labels: Record<string, string>, value: number) => void;
|
|
132
|
+
inc: (name: string, labelValues: Record<string, string>, value: number) => void;
|
|
133
|
+
dec: (name: string, labelValues: Record<string, string>, value: number) => void;
|
|
134
|
+
observe: (name: string, labelValues: Record<string, string>, value: number) => void;
|
|
135
|
+
addMetric: (name: string, help: string, labelNames: Array<string>, type: 'gauge' | 'counter' | 'histogram', buckets?: Array<number>) => Promise<void>;
|
|
136
|
+
addSummary: (name: string, help: string, labelNames: Array<string>, ageBuckets: number, maxAgeSeconds: number, percentiles: Array<number>) => Promise<void>;
|
|
137
|
+
hasMetric: (name: string) => boolean;
|
|
138
|
+
deleteMetric: (name: string) => Promise<boolean>;
|
|
139
|
+
verifyAPI: () => boolean;
|
|
140
|
+
shutdown: () => Promise<void>;
|
|
141
|
+
}
|
|
105
142
|
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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"}
|
package/dist/src/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAKlD,wBAAgB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAKlD,wBAAgB,gBAAgB,wCAmG/B;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EACnC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,UAAU,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,GACxC,IAAI,CAkCN"}
|
package/dist/src/schema.js
CHANGED
|
@@ -84,6 +84,21 @@ function foundationSchema() {
|
|
|
84
84
|
doc: 'Name of S3 bucket used to store assets. Can only be used if "asset_storage_connection_type" is "s3".',
|
|
85
85
|
default: undefined,
|
|
86
86
|
format: String
|
|
87
|
+
},
|
|
88
|
+
prom_metrics_enabled: {
|
|
89
|
+
doc: 'Create prometheus exporters',
|
|
90
|
+
default: false,
|
|
91
|
+
format: Boolean
|
|
92
|
+
},
|
|
93
|
+
prom_metrics_port: {
|
|
94
|
+
doc: 'Port of prometheus exporter server',
|
|
95
|
+
default: 3333,
|
|
96
|
+
format: Number
|
|
97
|
+
},
|
|
98
|
+
prom_metrics_add_default: {
|
|
99
|
+
doc: 'Display default node metrics in prom exporter',
|
|
100
|
+
default: true,
|
|
101
|
+
format: Boolean
|
|
87
102
|
}
|
|
88
103
|
};
|
|
89
104
|
return schema;
|
package/dist/src/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-context.d.ts","sourceRoot":"","sources":["../../src/test-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEvC,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"test-context.d.ts","sourceRoot":"","sources":["../../src/test-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEvC,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAQ7C,MAAM,WAAW,aAAa;IAC1B,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC;IAC3B,YAAY,CAAC,EAAE,CAAC,CAAC,qBAAqB,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IAClC,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IACxB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,CAAC;CACzC;AAED,MAAM,WAAW,eAAe;IAC5B,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;IAClD,cAAc,IAAI,WAAW,CAAC;CACjC;AAiCD,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;CACxD;AAqBD,qBAAa,WAAW,CACpB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,CAAC,SAAS,MAAM,GAAG,MAAM,CAC3B,SAAQ,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,CAAC;gBAChC,OAAO,GAAE,kBAAkB,CAAC,CAAC,CAAM;CA2HlD"}
|
package/dist/src/test-context.js
CHANGED
|
@@ -31,6 +31,7 @@ const ts = __importStar(require("@terascope/utils"));
|
|
|
31
31
|
const nanoid_1 = require("nanoid");
|
|
32
32
|
const core_context_1 = require("./core-context");
|
|
33
33
|
const validate_configs_1 = __importDefault(require("./validate-configs"));
|
|
34
|
+
const prom_metrics_api_1 = require("./api/prom-metrics/prom-metrics-api");
|
|
34
35
|
function getKey(opts) {
|
|
35
36
|
const { type, endpoint = 'default' } = opts;
|
|
36
37
|
if (!ts.isString(type))
|
|
@@ -127,6 +128,7 @@ class TestContext extends core_context_1.CoreContext {
|
|
|
127
128
|
_cachedClients.set(ctx, cachedClients);
|
|
128
129
|
return client;
|
|
129
130
|
};
|
|
131
|
+
this.apis.foundation.promMetrics = new prom_metrics_api_1.PromMetrics(ctx, ctx.logger);
|
|
130
132
|
this.apis.setTestClients = (clients = []) => {
|
|
131
133
|
clients.forEach((clientConfig) => {
|
|
132
134
|
const { create, createClient, config: connectionConfig = {} } = clientConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-context.js","sourceRoot":"","sources":["../../src/test-context.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAuC;AACvC,mCAAgC;AAEhC,iDAA6C;AAC7C,0EAAiD;
|
|
1
|
+
{"version":3,"file":"test-context.js","sourceRoot":"","sources":["../../src/test-context.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "terafoundation",
|
|
3
3
|
"displayName": "Terafoundation",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.62.0",
|
|
5
5
|
"description": "A Clustering and Foundation tool for Terascope Tools",
|
|
6
6
|
"homepage": "https://github.com/terascope/teraslice/tree/master/packages/terafoundation#readme",
|
|
7
7
|
"bugs": {
|
|
@@ -28,27 +28,30 @@
|
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@terascope/file-asset-apis": "^0.13.0",
|
|
31
|
-
"@terascope/types": "^0.
|
|
32
|
-
"@terascope/utils": "^0.
|
|
33
|
-
"aws-sdk": "^2.1401.0",
|
|
31
|
+
"@terascope/types": "^0.16.0",
|
|
32
|
+
"@terascope/utils": "^0.58.0",
|
|
34
33
|
"bluebird": "^3.7.2",
|
|
35
34
|
"bunyan": "^1.8.15",
|
|
36
35
|
"convict": "^6.2.4",
|
|
37
36
|
"convict-format-with-moment": "^6.2.0",
|
|
38
37
|
"convict-format-with-validator": "^6.2.0",
|
|
39
38
|
"elasticsearch": "^15.4.1",
|
|
40
|
-
"elasticsearch-store": "^0.
|
|
39
|
+
"elasticsearch-store": "^0.83.0",
|
|
40
|
+
"express": "^4.19.2",
|
|
41
41
|
"js-yaml": "^4.1.0",
|
|
42
42
|
"nanoid": "^3.3.4",
|
|
43
43
|
"node-webhdfs": "^1.0.2",
|
|
44
|
+
"prom-client": "15.1.2",
|
|
44
45
|
"yargs": "^17.7.2"
|
|
45
46
|
},
|
|
46
47
|
"devDependencies": {
|
|
47
48
|
"@types/bunyan": "^1.8.11",
|
|
48
49
|
"@types/elasticsearch": "^5.0.43",
|
|
50
|
+
"@types/express": "^4.17.21",
|
|
49
51
|
"@types/js-yaml": "^4.0.9",
|
|
50
52
|
"@types/mongoose": "^5.10.3",
|
|
51
|
-
"@types/redis": "^4.0.11"
|
|
53
|
+
"@types/redis": "^4.0.11",
|
|
54
|
+
"got": "^11.8.3"
|
|
52
55
|
},
|
|
53
56
|
"engines": {
|
|
54
57
|
"node": ">=14.17.0",
|