nestjs-otel 3.0.2 → 4.0.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/.eslintignore +1 -0
- package/.eslintrc.js +27 -0
- package/CHANGELOG.md +34 -0
- package/README.md +15 -23
- package/lib/index.js +5 -1
- package/lib/index.js.map +1 -1
- package/lib/interfaces/index.js +5 -1
- package/lib/interfaces/index.js.map +1 -1
- package/lib/interfaces/opentelemetry-options.interface.d.ts +2 -6
- package/lib/metrics/decorators/common.d.ts +1 -1
- package/lib/metrics/decorators/common.js +12 -7
- package/lib/metrics/decorators/common.js.map +1 -1
- package/lib/metrics/decorators/common.spec.d.ts +1 -0
- package/lib/metrics/decorators/common.spec.js +48 -0
- package/lib/metrics/decorators/common.spec.js.map +1 -0
- package/lib/metrics/decorators/index.js +5 -1
- package/lib/metrics/decorators/index.js.map +1 -1
- package/lib/metrics/metric-data.d.ts +4 -4
- package/lib/metrics/metric-data.js +6 -6
- package/lib/metrics/metric-data.js.map +1 -1
- package/lib/metrics/metric.service.d.ts +4 -4
- package/lib/metrics/metric.service.js +6 -6
- package/lib/metrics/metric.service.js.map +1 -1
- package/lib/middleware/api-metrics.middleware.d.ts +10 -17
- package/lib/middleware/api-metrics.middleware.js +40 -50
- package/lib/middleware/api-metrics.middleware.js.map +1 -1
- package/lib/middleware/index.js +5 -1
- package/lib/middleware/index.js.map +1 -1
- package/lib/opentelemetry-core.module.js +3 -11
- package/lib/opentelemetry-core.module.js.map +1 -1
- package/lib/opentelemetry.module.js.map +1 -1
- package/lib/opentelemetry.utils.d.ts +1 -0
- package/lib/opentelemetry.utils.js +10 -0
- package/lib/opentelemetry.utils.js.map +1 -0
- package/lib/tracing/decorators/span.d.ts +2 -1
- package/lib/tracing/decorators/span.js +29 -9
- package/lib/tracing/decorators/span.js.map +1 -1
- package/lib/tracing/decorators/span.spec.d.ts +1 -1
- package/lib/tracing/decorators/span.spec.js +80 -15
- package/lib/tracing/decorators/span.spec.js.map +1 -1
- package/lib/tracing/trace.service.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +31 -30
- package/tsconfig.json +16 -0
- package/.editorconfig +0 -21
- package/.husky/commit-msg +0 -4
- package/.husky/pre-commit +0 -5
- package/.prettierrc.js +0 -47
- package/.vscode/settings.json +0 -8
- package/REFERENCE.md +0 -5
- package/commitlint.config.js +0 -7
- package/examples/nestjs-fastify-prom-grafana-tempo/.dockerignore +0 -5
- package/examples/nestjs-fastify-prom-grafana-tempo/Dockerfile +0 -17
- package/examples/nestjs-fastify-prom-grafana-tempo/README.md +0 -5
- package/examples/nestjs-fastify-prom-grafana-tempo/data/grafana-data/dashboards/nestjs-otel.json +0 -1838
- package/examples/nestjs-fastify-prom-grafana-tempo/data/grafana-data/dashboards-provisioning/dashboards.yaml +0 -14
- package/examples/nestjs-fastify-prom-grafana-tempo/data/grafana-data/datasources/datasource.yml +0 -60
- package/examples/nestjs-fastify-prom-grafana-tempo/docker-compose.yml +0 -86
- package/examples/nestjs-fastify-prom-grafana-tempo/etc/loki-local.yaml +0 -64
- package/examples/nestjs-fastify-prom-grafana-tempo/etc/prometheus.yaml +0 -27
- package/examples/nestjs-fastify-prom-grafana-tempo/etc/promtail-local.yaml +0 -43
- package/examples/nestjs-fastify-prom-grafana-tempo/etc/tempo-local.yaml +0 -45
- package/examples/nestjs-fastify-prom-grafana-tempo/grafana-dashboard.png +0 -0
- package/examples/nestjs-fastify-prom-grafana-tempo/loki-logs.png +0 -0
- package/examples/nestjs-fastify-prom-grafana-tempo/nest-cli.json +0 -4
- package/examples/nestjs-fastify-prom-grafana-tempo/package.json +0 -85
- package/examples/nestjs-fastify-prom-grafana-tempo/src/app.controller.spec.ts +0 -22
- package/examples/nestjs-fastify-prom-grafana-tempo/src/app.controller.ts +0 -26
- package/examples/nestjs-fastify-prom-grafana-tempo/src/app.module.ts +0 -22
- package/examples/nestjs-fastify-prom-grafana-tempo/src/app.service.ts +0 -8
- package/examples/nestjs-fastify-prom-grafana-tempo/src/logger/logger.module.ts +0 -17
- package/examples/nestjs-fastify-prom-grafana-tempo/src/logger/logger.ts +0 -33
- package/examples/nestjs-fastify-prom-grafana-tempo/src/main.ts +0 -20
- package/examples/nestjs-fastify-prom-grafana-tempo/src/tracing.ts +0 -48
- package/examples/nestjs-fastify-prom-grafana-tempo/test/app.e2e-spec.ts +0 -24
- package/examples/nestjs-fastify-prom-grafana-tempo/test/jest-e2e.json +0 -9
- package/examples/nestjs-fastify-prom-grafana-tempo/tsconfig.build.json +0 -4
- package/examples/nestjs-prom-grafana-tempo/.dockerignore +0 -5
- package/examples/nestjs-prom-grafana-tempo/Dockerfile +0 -17
- package/examples/nestjs-prom-grafana-tempo/README.md +0 -11
- package/examples/nestjs-prom-grafana-tempo/data/grafana-data/dashboards/nestjs-otel.json +0 -1838
- package/examples/nestjs-prom-grafana-tempo/data/grafana-data/dashboards-provisioning/dashboards.yaml +0 -14
- package/examples/nestjs-prom-grafana-tempo/data/grafana-data/datasources/datasource.yml +0 -60
- package/examples/nestjs-prom-grafana-tempo/docker-compose.yml +0 -86
- package/examples/nestjs-prom-grafana-tempo/etc/loki-local.yaml +0 -64
- package/examples/nestjs-prom-grafana-tempo/etc/prometheus.yaml +0 -27
- package/examples/nestjs-prom-grafana-tempo/etc/promtail-local.yaml +0 -43
- package/examples/nestjs-prom-grafana-tempo/etc/tempo-local.yaml +0 -45
- package/examples/nestjs-prom-grafana-tempo/grafana-dashboard.png +0 -0
- package/examples/nestjs-prom-grafana-tempo/loki-logs.png +0 -0
- package/examples/nestjs-prom-grafana-tempo/nest-cli.json +0 -4
- package/examples/nestjs-prom-grafana-tempo/package.json +0 -89
- package/examples/nestjs-prom-grafana-tempo/src/app.controller.spec.ts +0 -22
- package/examples/nestjs-prom-grafana-tempo/src/app.controller.ts +0 -26
- package/examples/nestjs-prom-grafana-tempo/src/app.module.ts +0 -23
- package/examples/nestjs-prom-grafana-tempo/src/app.service.ts +0 -8
- package/examples/nestjs-prom-grafana-tempo/src/logger/logger.module.ts +0 -17
- package/examples/nestjs-prom-grafana-tempo/src/logger/logger.ts +0 -33
- package/examples/nestjs-prom-grafana-tempo/src/main.ts +0 -26
- package/examples/nestjs-prom-grafana-tempo/src/team/team.controller.ts +0 -22
- package/examples/nestjs-prom-grafana-tempo/src/team/team.entity.ts +0 -18
- package/examples/nestjs-prom-grafana-tempo/src/team/team.module.ts +0 -9
- package/examples/nestjs-prom-grafana-tempo/src/team/team.service.ts +0 -30
- package/examples/nestjs-prom-grafana-tempo/src/tracing.ts +0 -48
- package/examples/nestjs-prom-grafana-tempo/test/app.e2e-spec.ts +0 -24
- package/examples/nestjs-prom-grafana-tempo/test/jest-e2e.json +0 -9
- package/examples/nestjs-prom-grafana-tempo/tsconfig.build.json +0 -4
- package/examples/nestjs-prom-grafana-tempo-otel-collector/.dockerignore +0 -5
- package/examples/nestjs-prom-grafana-tempo-otel-collector/Dockerfile +0 -17
- package/examples/nestjs-prom-grafana-tempo-otel-collector/README.md +0 -5
- package/examples/nestjs-prom-grafana-tempo-otel-collector/data/grafana-data/dashboards/nestjs-otel.json +0 -1838
- package/examples/nestjs-prom-grafana-tempo-otel-collector/data/grafana-data/dashboards-provisioning/dashboards.yaml +0 -14
- package/examples/nestjs-prom-grafana-tempo-otel-collector/data/grafana-data/datasources/datasource.yml +0 -60
- package/examples/nestjs-prom-grafana-tempo-otel-collector/docker-compose.yml +0 -101
- package/examples/nestjs-prom-grafana-tempo-otel-collector/etc/loki-local.yaml +0 -64
- package/examples/nestjs-prom-grafana-tempo-otel-collector/etc/otel-collector-config.yaml +0 -37
- package/examples/nestjs-prom-grafana-tempo-otel-collector/etc/prometheus.yaml +0 -28
- package/examples/nestjs-prom-grafana-tempo-otel-collector/etc/promtail-local.yaml +0 -43
- package/examples/nestjs-prom-grafana-tempo-otel-collector/etc/tempo-local.yaml +0 -45
- package/examples/nestjs-prom-grafana-tempo-otel-collector/grafana-dashboard.png +0 -0
- package/examples/nestjs-prom-grafana-tempo-otel-collector/loki-logs.png +0 -0
- package/examples/nestjs-prom-grafana-tempo-otel-collector/nest-cli.json +0 -4
- package/examples/nestjs-prom-grafana-tempo-otel-collector/package.json +0 -86
- package/examples/nestjs-prom-grafana-tempo-otel-collector/src/app.controller.spec.ts +0 -22
- package/examples/nestjs-prom-grafana-tempo-otel-collector/src/app.controller.ts +0 -26
- package/examples/nestjs-prom-grafana-tempo-otel-collector/src/app.module.ts +0 -22
- package/examples/nestjs-prom-grafana-tempo-otel-collector/src/app.service.ts +0 -8
- package/examples/nestjs-prom-grafana-tempo-otel-collector/src/logger/logger.module.ts +0 -17
- package/examples/nestjs-prom-grafana-tempo-otel-collector/src/logger/logger.ts +0 -33
- package/examples/nestjs-prom-grafana-tempo-otel-collector/src/main.ts +0 -13
- package/examples/nestjs-prom-grafana-tempo-otel-collector/src/tracing.ts +0 -54
- package/examples/nestjs-prom-grafana-tempo-otel-collector/test/app.e2e-spec.ts +0 -24
- package/examples/nestjs-prom-grafana-tempo-otel-collector/test/jest-e2e.json +0 -9
- package/examples/nestjs-prom-grafana-tempo-otel-collector/tsconfig.build.json +0 -4
- package/src/interfaces/opentelemetry-options.interface.ts +0 -59
- package/src/metrics/decorators/common.ts +0 -52
- package/src/metrics/decorators/counter.ts +0 -17
- package/src/metrics/decorators/histogram.ts +0 -10
- package/src/metrics/decorators/observable.ts +0 -28
- package/src/metrics/injector.ts +0 -14
- package/src/metrics/metric-data.ts +0 -116
- package/src/metrics/metric.service.ts +0 -48
- package/src/metrics/utils.spec.ts +0 -9
- package/src/metrics/utils.ts +0 -6
- package/src/middleware/api-metrics.middleware.ts +0 -174
- package/src/opentelemetry-core.module.ts +0 -175
- package/src/opentelemetry.constants.ts +0 -2
- package/src/opentelemetry.module.ts +0 -34
- package/src/tracing/decorators/span.spec.ts +0 -48
- package/src/tracing/decorators/span.ts +0 -23
- package/src/tracing/trace.service.ts +0 -17
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nestjs-otel",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "NestJS OpenTelemetry Library",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index",
|
|
@@ -36,41 +36,42 @@
|
|
|
36
36
|
},
|
|
37
37
|
"homepage": "https://github.com/pragmaticivan/nestjs-otel#readme",
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@opentelemetry/
|
|
40
|
-
"@opentelemetry/api": "^
|
|
41
|
-
"@opentelemetry/
|
|
42
|
-
"opentelemetry-node-metrics": "^1.1.0",
|
|
39
|
+
"@opentelemetry/api": "^1.1.0",
|
|
40
|
+
"@opentelemetry/api-metrics": "^0.32.0",
|
|
41
|
+
"@opentelemetry/host-metrics": "^0.29.0",
|
|
43
42
|
"response-time": "^2.3.2"
|
|
44
43
|
},
|
|
45
44
|
"devDependencies": {
|
|
46
|
-
"@commitlint/cli": "^
|
|
47
|
-
"@commitlint/config-conventional": "^
|
|
48
|
-
"@nestjs/common": "^
|
|
49
|
-
"@nestjs/core": "^
|
|
50
|
-
"@nestjs/platform-express": "^
|
|
51
|
-
"@nestjs/platform-fastify": "^
|
|
52
|
-
"@nestjs/testing": "^
|
|
53
|
-
"@opentelemetry/exporter-prometheus": "^0.
|
|
54
|
-
"@opentelemetry/sdk-
|
|
55
|
-
"@
|
|
56
|
-
"@
|
|
57
|
-
"@types/
|
|
58
|
-
"@
|
|
59
|
-
"@
|
|
60
|
-
"eslint": "
|
|
45
|
+
"@commitlint/cli": "^17.1.1",
|
|
46
|
+
"@commitlint/config-conventional": "^17.1.0",
|
|
47
|
+
"@nestjs/common": "^9.0.11",
|
|
48
|
+
"@nestjs/core": "^9.0.11",
|
|
49
|
+
"@nestjs/platform-express": "^9.0.11",
|
|
50
|
+
"@nestjs/platform-fastify": "^9.0.11",
|
|
51
|
+
"@nestjs/testing": "^9.0.11",
|
|
52
|
+
"@opentelemetry/exporter-prometheus": "^0.31.0",
|
|
53
|
+
"@opentelemetry/sdk-metrics-base": "^0.31.0",
|
|
54
|
+
"@opentelemetry/sdk-node": "^0.31.0",
|
|
55
|
+
"@opentelemetry/sdk-trace-node": "^1.5.0",
|
|
56
|
+
"@types/jest": "^28.1.8",
|
|
57
|
+
"@types/node": "^18.7.13",
|
|
58
|
+
"@types/supertest": "^2.0.12",
|
|
59
|
+
"@typescript-eslint/eslint-plugin": "5.35.1",
|
|
60
|
+
"@typescript-eslint/parser": "5.35.1",
|
|
61
|
+
"ansi-regex": "",
|
|
62
|
+
"eslint": "^8.23.0",
|
|
61
63
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
62
|
-
"eslint-config-airbnb-typescript": "^
|
|
63
|
-
"eslint-plugin-import": "^2.
|
|
64
|
-
"husky": "^
|
|
65
|
-
"jest": "^
|
|
66
|
-
"lint-staged": "^
|
|
64
|
+
"eslint-config-airbnb-typescript": "^17.0.0",
|
|
65
|
+
"eslint-plugin-import": "^2.26.0",
|
|
66
|
+
"husky": "^8.0.1",
|
|
67
|
+
"jest": "^28.1.3",
|
|
68
|
+
"lint-staged": "^13.0.3",
|
|
67
69
|
"reflect-metadata": "^0.1.13",
|
|
68
70
|
"rimraf": "^3.0.2",
|
|
69
|
-
"rxjs": "^7.5.
|
|
70
|
-
"supertest": "^6.
|
|
71
|
-
"ts-jest": "^
|
|
72
|
-
"typescript": "4.
|
|
73
|
-
"ansi-regex": ""
|
|
71
|
+
"rxjs": "^7.5.6",
|
|
72
|
+
"supertest": "^6.2.4",
|
|
73
|
+
"ts-jest": "^28.0.8",
|
|
74
|
+
"typescript": "4.8.2"
|
|
74
75
|
},
|
|
75
76
|
"peerDependencies": {
|
|
76
77
|
"@nestjs/common": "^7.0.0 || ^8.0.0",
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"module": "commonjs",
|
|
4
|
+
"declaration": true,
|
|
5
|
+
"removeComments": true,
|
|
6
|
+
"emitDecoratorMetadata": true,
|
|
7
|
+
"experimentalDecorators": true,
|
|
8
|
+
"allowSyntheticDefaultImports": true,
|
|
9
|
+
"target": "es2020",
|
|
10
|
+
"sourceMap": true,
|
|
11
|
+
"outDir": "./lib",
|
|
12
|
+
"baseUrl": "./",
|
|
13
|
+
"incremental": true
|
|
14
|
+
},
|
|
15
|
+
"exclude": ["node_modules", "lib", "tests", "examples"]
|
|
16
|
+
}
|
package/.editorconfig
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
root = true
|
|
2
|
-
|
|
3
|
-
[*]
|
|
4
|
-
charset = utf-8
|
|
5
|
-
end_of_line = lf
|
|
6
|
-
indent_size = 2
|
|
7
|
-
indent_style = space
|
|
8
|
-
insert_final_newline = true
|
|
9
|
-
trim_trailing_whitespace = true
|
|
10
|
-
quote_type = double
|
|
11
|
-
|
|
12
|
-
# editorconfig-tools is unable to ignore longs strings or urls
|
|
13
|
-
max_line_length = null
|
|
14
|
-
|
|
15
|
-
[*.js, *.jsx, *.tsx, *.ts]
|
|
16
|
-
quote_type = single
|
|
17
|
-
indent_style = space
|
|
18
|
-
indent_size = 2
|
|
19
|
-
|
|
20
|
-
[*.{json,yaml,yml}]
|
|
21
|
-
indent_size = 2
|
package/.husky/commit-msg
DELETED
package/.husky/pre-commit
DELETED
package/.prettierrc.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
$schema: 'http://json.schemastore.org/prettierrc',
|
|
3
|
-
|
|
4
|
-
// defaults
|
|
5
|
-
arrowParens: 'avoid',
|
|
6
|
-
bracketSpacing: true,
|
|
7
|
-
embeddedLanguageFormatting: 'auto',
|
|
8
|
-
jsxBracketSameLine: false,
|
|
9
|
-
htmlWhitespaceSensitivity: 'css',
|
|
10
|
-
requirePragma: false,
|
|
11
|
-
insertPragma: false,
|
|
12
|
-
proseWrap: 'preserve',
|
|
13
|
-
semi: true,
|
|
14
|
-
useTabs: false,
|
|
15
|
-
|
|
16
|
-
// customized
|
|
17
|
-
endOfLine: 'lf',
|
|
18
|
-
printWidth: 100,
|
|
19
|
-
singleQuote: true,
|
|
20
|
-
tabWidth: 2,
|
|
21
|
-
trailingComma: 'es5',
|
|
22
|
-
quoteProps: 'consistent',
|
|
23
|
-
|
|
24
|
-
overrides: [
|
|
25
|
-
// explicitly keep output consistent with npm
|
|
26
|
-
{
|
|
27
|
-
files: [
|
|
28
|
-
'.eslintrc.json',
|
|
29
|
-
'lerna.json',
|
|
30
|
-
'package.json',
|
|
31
|
-
'package-lock.json',
|
|
32
|
-
'npm-shrinkwrap.json',
|
|
33
|
-
],
|
|
34
|
-
options: {
|
|
35
|
-
parser: 'json-stringify',
|
|
36
|
-
tabWidth: 2,
|
|
37
|
-
trailingComma: 'none',
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
files: ['*.yaml', '*.yml'],
|
|
42
|
-
options: {
|
|
43
|
-
tabWidth: 2,
|
|
44
|
-
},
|
|
45
|
-
},
|
|
46
|
-
],
|
|
47
|
-
};
|
package/.vscode/settings.json
DELETED
package/REFERENCE.md
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
* https://github.com/MetinSeylan/Nestjs-OpenTelemetry
|
|
2
|
-
* https://github.com/digikare/nestjs-prom
|
|
3
|
-
* https://docs.spring.io/spring-boot/docs/current/reference/html/actuator.html#actuator.metrics
|
|
4
|
-
* https://github.com/prometheus/haproxy_exporter/blob/master/haproxy_exporter.go
|
|
5
|
-
* https://github.com/mnadeem/nodejs-opentelemetry-tempo
|
package/commitlint.config.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
FROM node:14.15.5-alpine3.13
|
|
2
|
-
EXPOSE 5555
|
|
3
|
-
|
|
4
|
-
RUN mkdir /app && chown -R node:node /app
|
|
5
|
-
|
|
6
|
-
USER node
|
|
7
|
-
|
|
8
|
-
COPY package.json package-lock.json /app/
|
|
9
|
-
RUN cd /app && npm install
|
|
10
|
-
|
|
11
|
-
WORKDIR /app
|
|
12
|
-
|
|
13
|
-
COPY --chown=node:node . /app
|
|
14
|
-
|
|
15
|
-
RUN npm run build
|
|
16
|
-
|
|
17
|
-
CMD [ "npm", "run" ,"start" ]
|