@promster/express 7.0.6 → 9.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,4 @@
1
- import { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp } from './middleware';
1
+ import { type TPromsterOptions, createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp } from "./middleware/index.js";
2
2
  import { getSummary, getContentType, Prometheus, defaultRegister, defaultNormalizers, timing } from '@promster/metrics';
3
- export { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp, getSummary, getContentType, Prometheus, defaultRegister, defaultNormalizers, timing, };
3
+ export { type TPromsterOptions, createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp, getSummary, getContentType, Prometheus, defaultRegister, defaultNormalizers, timing, };
4
+ export * from '@promster/types';
@@ -1,2 +1,2 @@
1
- import { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp } from './middleware';
2
- export { createMiddleware, signalIsUp, signalIsNotUp, getRequestRecorder };
1
+ import { type TPromsterOptions, createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp } from "./middleware.js";
2
+ export { type TPromsterOptions, createMiddleware, signalIsUp, signalIsNotUp, getRequestRecorder, };
@@ -1,6 +1,6 @@
1
- import type { TPromsterOptions } from '@promster/types';
2
- import type { TRequestRecorder } from '@promster/metrics';
3
- import type { Application, Request, Response, NextFunction } from 'express';
1
+ import { type TOptionalPromsterOptions, type TLabelValues } from '@promster/types';
2
+ import { type TRequestRecorder } from '@promster/metrics';
3
+ import { type Application, type Request, type Response, type NextFunction } from 'express';
4
4
  import { Prometheus } from '@promster/metrics';
5
5
  interface TApp extends Application {
6
6
  locals: Record<string, unknown>;
@@ -15,6 +15,10 @@ declare const extractPath: (req: Request) => string;
15
15
  declare const getRequestRecorder: () => TRequestRecorder;
16
16
  declare const signalIsUp: () => void;
17
17
  declare const signalIsNotUp: () => void;
18
+ type TSkipFunction = <TRequest extends Request, TResponse extends Response>(_req: TRequest, _res: TResponse, _labels: TLabelValues) => boolean;
19
+ export type TPromsterOptions = TOptionalPromsterOptions & {
20
+ skip?: TSkipFunction;
21
+ };
18
22
  type TMiddlewareOptions = {
19
23
  app?: TApp;
20
24
  options?: TPromsterOptions;
@@ -1 +1,2 @@
1
1
  export * from "./declarations/src/index";
2
+ //# sourceMappingURL=promster-express.cjs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promster-express.cjs.d.ts","sourceRoot":"","sources":["./declarations/src/index.d.ts"],"names":[],"mappings":"AAAA"}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var merge = require('merge-options');
6
6
  var metrics = require('@promster/metrics');
7
+ var types = require('@promster/types');
7
8
 
8
9
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
9
10
 
@@ -45,7 +46,9 @@ const createMiddleware = ({
45
46
  app: undefined,
46
47
  options: undefined
47
48
  }) => {
48
- const allDefaultedOptions = merge__default["default"](metrics.createHttpMetrics.defaultOptions, metrics.createGcMetrics.defaultOptions, metrics.createRequestRecorder.defaultOptions, metrics.createGcObserver.defaultOptions, metrics.defaultNormalizers, options);
49
+ const allDefaultedOptions = merge__default["default"](metrics.createHttpMetrics.defaultOptions, metrics.createGcMetrics.defaultOptions, metrics.createRequestRecorder.defaultOptions,
50
+ // @ts-expect-error
51
+ metrics.createGcObserver.defaultOptions, metrics.defaultNormalizers, options);
49
52
  const shouldSkipMetricsByEnvironment = metrics.skipMetricsInEnvironment(allDefaultedOptions);
50
53
  const httpMetrics = metrics.createHttpMetrics(allDefaultedOptions);
51
54
  const gcMetrics = metrics.createGcMetrics(allDefaultedOptions);
@@ -74,6 +77,7 @@ const createMiddleware = ({
74
77
  req: request,
75
78
  res: response
76
79
  }),
80
+ // eslint-disable-next-line camelcase
77
81
  status_code: allDefaultedOptions.normalizeStatusCode(response.statusCode, {
78
82
  req: request,
79
83
  res: response
@@ -126,3 +130,9 @@ exports.createMiddleware = createMiddleware;
126
130
  exports.getRequestRecorder = getRequestRecorder;
127
131
  exports.signalIsNotUp = signalIsNotUp;
128
132
  exports.signalIsUp = signalIsUp;
133
+ Object.keys(types).forEach(function (k) {
134
+ if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
135
+ enumerable: true,
136
+ get: function () { return types[k]; }
137
+ });
138
+ });
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var merge = require('merge-options');
6
6
  var metrics = require('@promster/metrics');
7
+ var types = require('@promster/types');
7
8
 
8
9
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
9
10
 
@@ -45,7 +46,9 @@ const createMiddleware = ({
45
46
  app: undefined,
46
47
  options: undefined
47
48
  }) => {
48
- const allDefaultedOptions = merge__default["default"](metrics.createHttpMetrics.defaultOptions, metrics.createGcMetrics.defaultOptions, metrics.createRequestRecorder.defaultOptions, metrics.createGcObserver.defaultOptions, metrics.defaultNormalizers, options);
49
+ const allDefaultedOptions = merge__default["default"](metrics.createHttpMetrics.defaultOptions, metrics.createGcMetrics.defaultOptions, metrics.createRequestRecorder.defaultOptions,
50
+ // @ts-expect-error
51
+ metrics.createGcObserver.defaultOptions, metrics.defaultNormalizers, options);
49
52
  const shouldSkipMetricsByEnvironment = metrics.skipMetricsInEnvironment(allDefaultedOptions);
50
53
  const httpMetrics = metrics.createHttpMetrics(allDefaultedOptions);
51
54
  const gcMetrics = metrics.createGcMetrics(allDefaultedOptions);
@@ -74,6 +77,7 @@ const createMiddleware = ({
74
77
  req: request,
75
78
  res: response
76
79
  }),
80
+ // eslint-disable-next-line camelcase
77
81
  status_code: allDefaultedOptions.normalizeStatusCode(response.statusCode, {
78
82
  req: request,
79
83
  res: response
@@ -126,3 +130,9 @@ exports.createMiddleware = createMiddleware;
126
130
  exports.getRequestRecorder = getRequestRecorder;
127
131
  exports.signalIsNotUp = signalIsNotUp;
128
132
  exports.signalIsUp = signalIsUp;
133
+ Object.keys(types).forEach(function (k) {
134
+ if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
135
+ enumerable: true,
136
+ get: function () { return types[k]; }
137
+ });
138
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promster/express",
3
- "version": "7.0.6",
3
+ "version": "9.0.0",
4
4
  "description": "Express server integrations of promster",
5
5
  "main": "dist/promster-express.cjs.js",
6
6
  "typings": "dist/promster-express.cjs.d.ts",
@@ -13,8 +13,8 @@
13
13
  "modules/**"
14
14
  ],
15
15
  "engines": {
16
- "node": ">=14",
17
- "npm": ">=6"
16
+ "node": ">=16",
17
+ "npm": ">=8"
18
18
  },
19
19
  "publishConfig": {
20
20
  "access": "public"
@@ -36,15 +36,16 @@
36
36
  "prometheus"
37
37
  ],
38
38
  "dependencies": {
39
- "@promster/metrics": "^9.1.6",
39
+ "@promster/metrics": "^11.0.0",
40
+ "@promster/types": "^5.0.0",
40
41
  "merge-options": "3.0.4",
41
- "tslib": "2.4.1"
42
+ "tslib": "2.6.2"
42
43
  },
43
44
  "devDependencies": {
44
- "@promster/server": "7.0.8",
45
- "@types/express": "4.17.14",
45
+ "@types/express": "4.17.17",
46
46
  "express": "4.18.2",
47
- "node-fetch": "2.6.7",
48
- "parse-prometheus-text-format": "1.1.1"
47
+ "node-fetch": "2.6.11",
48
+ "parse-prometheus-text-format": "1.1.1",
49
+ "@promster/server": "9.0.0"
49
50
  }
50
- }
51
+ }