n8n 1.51.0 → 1.52.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/ExternalHooks.d.ts +2 -4
- package/dist/ExternalHooks.js +1 -13
- package/dist/ExternalHooks.js.map +1 -1
- package/dist/ExternalSecrets/ExternalSecretsManager.ee.d.ts +3 -1
- package/dist/ExternalSecrets/ExternalSecretsManager.ee.js +11 -9
- package/dist/ExternalSecrets/ExternalSecretsManager.ee.js.map +1 -1
- package/dist/ExternalSecrets/ExternalSecretsProviders.ee.js +2 -0
- package/dist/ExternalSecrets/ExternalSecretsProviders.ee.js.map +1 -1
- package/dist/ExternalSecrets/constants.d.ts +2 -0
- package/dist/ExternalSecrets/constants.js +8 -1
- package/dist/ExternalSecrets/constants.js.map +1 -1
- package/dist/ExternalSecrets/externalSecretsHelper.ee.js +3 -3
- package/dist/ExternalSecrets/externalSecretsHelper.ee.js.map +1 -1
- package/dist/ExternalSecrets/providers/aws-secrets/aws-secrets-manager.js +1 -7
- package/dist/ExternalSecrets/providers/aws-secrets/aws-secrets-manager.js.map +1 -1
- package/dist/ExternalSecrets/providers/azure-key-vault/azure-key-vault.d.ts +20 -0
- package/dist/ExternalSecrets/providers/azure-key-vault/azure-key-vault.js +115 -0
- package/dist/ExternalSecrets/providers/azure-key-vault/azure-key-vault.js.map +1 -0
- package/dist/ExternalSecrets/providers/azure-key-vault/types.d.ts +7 -0
- package/dist/ExternalSecrets/providers/azure-key-vault/types.js +3 -0
- package/dist/ExternalSecrets/providers/azure-key-vault/types.js.map +1 -0
- package/dist/ExternalSecrets/providers/infisical.js +1 -6
- package/dist/ExternalSecrets/providers/infisical.js.map +1 -1
- package/dist/ExternalSecrets/providers/vault.js +1 -6
- package/dist/ExternalSecrets/providers/vault.js.map +1 -1
- package/dist/InternalHooks.d.ts +2 -115
- package/dist/InternalHooks.js +6 -99
- package/dist/InternalHooks.js.map +1 -1
- package/dist/Ldap/ldap.controller.ee.d.ts +3 -3
- package/dist/Ldap/ldap.controller.ee.js +7 -7
- package/dist/Ldap/ldap.controller.ee.js.map +1 -1
- package/dist/Ldap/ldap.service.ee.d.ts +3 -3
- package/dist/Ldap/ldap.service.ee.js +8 -10
- package/dist/Ldap/ldap.service.ee.js.map +1 -1
- package/dist/LoadNodesAndCredentials.d.ts +173 -3
- package/dist/LoadNodesAndCredentials.js +7 -5
- package/dist/LoadNodesAndCredentials.js.map +1 -1
- package/dist/PublicApi/index.js +7 -6
- package/dist/PublicApi/index.js.map +1 -1
- package/dist/PublicApi/v1/handlers/credentials/credentials.service.js +3 -3
- package/dist/PublicApi/v1/handlers/credentials/credentials.service.js.map +1 -1
- package/dist/PublicApi/v1/handlers/sourceControl/sourceControl.handler.js +2 -2
- package/dist/PublicApi/v1/handlers/sourceControl/sourceControl.handler.js.map +1 -1
- package/dist/PublicApi/v1/handlers/workflows/workflows.handler.js +3 -3
- package/dist/PublicApi/v1/handlers/workflows/workflows.handler.js.map +1 -1
- package/dist/Server.d.ts +3 -1
- package/dist/Server.js +8 -7
- package/dist/Server.js.map +1 -1
- package/dist/UserManagement/PermissionChecker.d.ts +2 -7
- package/dist/UserManagement/PermissionChecker.js +2 -75
- package/dist/UserManagement/PermissionChecker.js.map +1 -1
- package/dist/UserManagement/email/UserManagementMailer.js +3 -3
- package/dist/UserManagement/email/UserManagementMailer.js.map +1 -1
- package/dist/WebhookHelpers.js +2 -2
- package/dist/WebhookHelpers.js.map +1 -1
- package/dist/WorkflowExecuteAdditionalData.js +24 -22
- package/dist/WorkflowExecuteAdditionalData.js.map +1 -1
- package/dist/WorkflowRunner.d.ts +3 -3
- package/dist/WorkflowRunner.js +6 -6
- package/dist/WorkflowRunner.js.map +1 -1
- package/dist/auth/methods/email.js +2 -4
- package/dist/auth/methods/email.js.map +1 -1
- package/dist/auth/methods/ldap.js +2 -2
- package/dist/auth/methods/ldap.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/commands/BaseCommand.d.ts +1 -0
- package/dist/commands/BaseCommand.js +3 -11
- package/dist/commands/BaseCommand.js.map +1 -1
- package/dist/commands/audit.js +0 -2
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/start.js +4 -5
- package/dist/commands/start.js.map +1 -1
- package/dist/concurrency/concurrency-control.service.d.ts +3 -3
- package/dist/concurrency/concurrency-control.service.js +5 -5
- package/dist/concurrency/concurrency-control.service.js.map +1 -1
- package/dist/config/index.d.ts +0 -50
- package/dist/config/schema.d.ts +0 -170
- package/dist/config/schema.js +0 -177
- package/dist/config/schema.js.map +1 -1
- package/dist/config/types.d.ts +0 -2
- package/dist/controllers/auth.controller.d.ts +3 -3
- package/dist/controllers/auth.controller.js +7 -7
- package/dist/controllers/auth.controller.js.map +1 -1
- package/dist/controllers/communityPackages.controller.d.ts +3 -3
- package/dist/controllers/communityPackages.controller.js +8 -43
- package/dist/controllers/communityPackages.controller.js.map +1 -1
- package/dist/controllers/invitation.controller.d.ts +3 -3
- package/dist/controllers/invitation.controller.js +5 -5
- package/dist/controllers/invitation.controller.js.map +1 -1
- package/dist/controllers/me.controller.d.ts +3 -3
- package/dist/controllers/me.controller.js +8 -10
- package/dist/controllers/me.controller.js.map +1 -1
- package/dist/controllers/passwordReset.controller.d.ts +3 -3
- package/dist/controllers/passwordReset.controller.js +9 -9
- package/dist/controllers/passwordReset.controller.js.map +1 -1
- package/dist/controllers/project.controller.d.ts +15 -4
- package/dist/controllers/project.controller.js +17 -8
- package/dist/controllers/project.controller.js.map +1 -1
- package/dist/controllers/users.controller.d.ts +3 -3
- package/dist/controllers/users.controller.js +5 -5
- package/dist/controllers/users.controller.js.map +1 -1
- package/dist/credentials/credentials.controller.d.ts +3 -3
- package/dist/credentials/credentials.controller.js +8 -8
- package/dist/credentials/credentials.controller.js.map +1 -1
- package/dist/databases/migrations/common/1720101653148-AddConstraintToExecutionMetadata.js +5 -0
- package/dist/databases/migrations/common/1720101653148-AddConstraintToExecutionMetadata.js.map +1 -1
- package/dist/databases/migrations/postgresdb/1721377157740-FixExecutionMetadataSequence.d.ts +4 -0
- package/dist/databases/migrations/postgresdb/1721377157740-FixExecutionMetadataSequence.js +12 -0
- package/dist/databases/migrations/postgresdb/1721377157740-FixExecutionMetadataSequence.js.map +1 -0
- package/dist/databases/migrations/postgresdb/index.js +2 -0
- package/dist/databases/migrations/postgresdb/index.js.map +1 -1
- package/dist/environments/sourceControl/sourceControl.controller.ee.d.ts +3 -3
- package/dist/environments/sourceControl/sourceControl.controller.ee.js +12 -12
- package/dist/environments/sourceControl/sourceControl.controller.ee.js.map +1 -1
- package/dist/environments/sourceControl/sourceControl.service.ee.d.ts +3 -1
- package/dist/environments/sourceControl/sourceControl.service.ee.js +10 -31
- package/dist/environments/sourceControl/sourceControl.service.ee.js.map +1 -1
- package/dist/environments/sourceControl/sourceControlGit.service.ee.js +1 -1
- package/dist/environments/sourceControl/sourceControlGit.service.ee.js.map +1 -1
- package/dist/environments/sourceControl/sourceControlHelper.ee.d.ts +12 -12
- package/dist/environments/sourceControl/sourceControlHelper.ee.js +12 -12
- package/dist/environments/sourceControl/sourceControlHelper.ee.js.map +1 -1
- package/dist/environments/variables/variables.service.ee.d.ts +3 -1
- package/dist/environments/variables/variables.service.ee.js +6 -4
- package/dist/environments/variables/variables.service.ee.js.map +1 -1
- package/dist/eventbus/EventMessageClasses/index.d.ts +1 -1
- package/dist/eventbus/MessageEventBus/MessageEventBus.d.ts +3 -1
- package/dist/eventbus/MessageEventBus/MessageEventBus.js +10 -7
- package/dist/eventbus/MessageEventBus/MessageEventBus.js.map +1 -1
- package/dist/eventbus/MessageEventBusWriter/MessageEventBusLogWriter.d.ts +1 -0
- package/dist/eventbus/MessageEventBusWriter/MessageEventBusLogWriter.js +7 -6
- package/dist/eventbus/MessageEventBusWriter/MessageEventBusLogWriter.js.map +1 -1
- package/dist/eventbus/audit-event-relay.service.d.ts +5 -5
- package/dist/eventbus/audit-event-relay.service.js +38 -38
- package/dist/eventbus/audit-event-relay.service.js.map +1 -1
- package/dist/eventbus/{event-relay.service.d.ts → event.service.d.ts} +2 -2
- package/dist/eventbus/{event-relay.service.js → event.service.js} +6 -6
- package/dist/eventbus/event.service.js.map +1 -0
- package/dist/eventbus/event.types.d.ts +81 -5
- package/dist/executions/execution-recovery.service.d.ts +3 -3
- package/dist/executions/execution-recovery.service.js +8 -5
- package/dist/executions/execution-recovery.service.js.map +1 -1
- package/dist/license/license.service.d.ts +3 -3
- package/dist/license/license.service.js +7 -7
- package/dist/license/license.service.js.map +1 -1
- package/dist/metrics/prometheus-metrics.service.d.ts +21 -19
- package/dist/metrics/prometheus-metrics.service.js +137 -110
- package/dist/metrics/prometheus-metrics.service.js.map +1 -1
- package/dist/metrics/types.d.ts +6 -0
- package/dist/metrics/types.js +3 -0
- package/dist/metrics/types.js.map +1 -0
- package/dist/security-audit/risk-reporters/InstanceRiskReporter.d.ts +3 -1
- package/dist/security-audit/risk-reporters/InstanceRiskReporter.js +12 -9
- package/dist/security-audit/risk-reporters/InstanceRiskReporter.js.map +1 -1
- package/dist/security-audit/risk-reporters/NodesRiskReporter.d.ts +3 -1
- package/dist/security-audit/risk-reporters/NodesRiskReporter.js +6 -4
- package/dist/security-audit/risk-reporters/NodesRiskReporter.js.map +1 -1
- package/dist/services/frontend.service.js +9 -9
- package/dist/services/frontend.service.js.map +1 -1
- package/dist/services/user.service.d.ts +3 -3
- package/dist/services/user.service.js +6 -6
- package/dist/services/user.service.js.map +1 -1
- package/dist/services/{events.service.d.ts → workflow-statistics.service.d.ts} +2 -2
- package/dist/services/{events.service.js → workflow-statistics.service.js} +6 -6
- package/dist/services/workflow-statistics.service.js.map +1 -0
- package/dist/sso/saml/routes/saml.controller.ee.d.ts +3 -3
- package/dist/sso/saml/routes/saml.controller.ee.js +7 -7
- package/dist/sso/saml/routes/saml.controller.ee.js.map +1 -1
- package/dist/subworkflows/subworkflow-policy-checker.service.d.ts +11 -0
- package/dist/subworkflows/subworkflow-policy-checker.service.js +99 -0
- package/dist/subworkflows/subworkflow-policy-checker.service.js.map +1 -0
- package/dist/telemetry/telemetry-event-relay.service.d.ts +22 -3
- package/dist/telemetry/telemetry-event-relay.service.js +200 -7
- package/dist/telemetry/telemetry-event-relay.service.js.map +1 -1
- package/dist/workflows/workflow.service.d.ts +3 -3
- package/dist/workflows/workflow.service.js +6 -6
- package/dist/workflows/workflow.service.js.map +1 -1
- package/dist/workflows/workflowExecution.service.d.ts +5 -3
- package/dist/workflows/workflowExecution.service.js +12 -13
- package/dist/workflows/workflowExecution.service.js.map +1 -1
- package/dist/workflows/workflows.controller.d.ts +5 -5
- package/dist/workflows/workflows.controller.js +5 -5
- package/dist/workflows/workflows.controller.js.map +1 -1
- package/package.json +11 -9
- package/dist/eventbus/event-relay.service.js.map +0 -1
- package/dist/services/events.service.js.map +0 -1
|
@@ -19,174 +19,201 @@ const express_prom_bundle_1 = __importDefault(require("express-prom-bundle"));
|
|
|
19
19
|
const prom_client_1 = __importDefault(require("prom-client"));
|
|
20
20
|
const parse_1 = __importDefault(require("semver/functions/parse"));
|
|
21
21
|
const typedi_1 = require("typedi");
|
|
22
|
-
const events_1 = __importDefault(require("events"));
|
|
23
22
|
const cache_service_1 = require("../services/cache/cache.service");
|
|
24
23
|
const MessageEventBus_1 = require("../eventbus/MessageEventBus/MessageEventBus");
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
constructor(logger, cacheService, eventBus) {
|
|
28
|
-
super();
|
|
29
|
-
this.logger = logger;
|
|
24
|
+
let PrometheusMetricsService = class PrometheusMetricsService {
|
|
25
|
+
constructor(cacheService, eventBus) {
|
|
30
26
|
this.cacheService = cacheService;
|
|
31
27
|
this.eventBus = eventBus;
|
|
32
28
|
this.counters = {};
|
|
29
|
+
this.prefix = config_1.default.getEnv('endpoints.metrics.prefix');
|
|
30
|
+
this.includes = {
|
|
31
|
+
metrics: {
|
|
32
|
+
default: config_1.default.getEnv('endpoints.metrics.includeDefaultMetrics'),
|
|
33
|
+
routes: config_1.default.getEnv('endpoints.metrics.includeApiEndpoints'),
|
|
34
|
+
cache: config_1.default.getEnv('endpoints.metrics.includeCacheMetrics'),
|
|
35
|
+
logs: config_1.default.getEnv('endpoints.metrics.includeMessageEventBusMetrics'),
|
|
36
|
+
},
|
|
37
|
+
labels: {
|
|
38
|
+
credentialsType: config_1.default.getEnv('endpoints.metrics.includeCredentialTypeLabel'),
|
|
39
|
+
nodeType: config_1.default.getEnv('endpoints.metrics.includeNodeTypeLabel'),
|
|
40
|
+
workflowId: config_1.default.getEnv('endpoints.metrics.includeWorkflowIdLabel'),
|
|
41
|
+
apiPath: config_1.default.getEnv('endpoints.metrics.includeApiPathLabel'),
|
|
42
|
+
apiMethod: config_1.default.getEnv('endpoints.metrics.includeApiMethodLabel'),
|
|
43
|
+
apiStatusCode: config_1.default.getEnv('endpoints.metrics.includeApiStatusCodeLabel'),
|
|
44
|
+
},
|
|
45
|
+
};
|
|
33
46
|
}
|
|
34
|
-
async
|
|
47
|
+
async init(app) {
|
|
35
48
|
prom_client_1.default.register.clear();
|
|
36
|
-
this.
|
|
37
|
-
this.
|
|
38
|
-
this.
|
|
39
|
-
this.
|
|
40
|
-
this.
|
|
49
|
+
this.initDefaultMetrics();
|
|
50
|
+
this.initN8nVersionMetric();
|
|
51
|
+
this.initCacheMetrics();
|
|
52
|
+
this.initEventBusMetrics();
|
|
53
|
+
this.initRouteMetrics(app);
|
|
41
54
|
this.mountMetricsEndpoint(app);
|
|
42
55
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
version: 'v' + n8nVersion.version,
|
|
53
|
-
major: n8nVersion.major,
|
|
54
|
-
minor: n8nVersion.minor,
|
|
55
|
-
patch: n8nVersion.patch,
|
|
56
|
-
}, 1);
|
|
56
|
+
enableMetric(metric) {
|
|
57
|
+
this.includes.metrics[metric] = true;
|
|
58
|
+
}
|
|
59
|
+
disableMetric(metric) {
|
|
60
|
+
this.includes.metrics[metric] = false;
|
|
61
|
+
}
|
|
62
|
+
disableAllMetrics() {
|
|
63
|
+
for (const metric in this.includes.metrics) {
|
|
64
|
+
this.includes.metrics[metric] = false;
|
|
57
65
|
}
|
|
58
66
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
67
|
+
enableLabels(labels) {
|
|
68
|
+
for (const label of labels) {
|
|
69
|
+
this.includes.labels[label] = true;
|
|
62
70
|
}
|
|
63
71
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
autoregister: false,
|
|
68
|
-
includeUp: false,
|
|
69
|
-
includePath: config_1.default.getEnv('endpoints.metrics.includeApiPathLabel'),
|
|
70
|
-
includeMethod: config_1.default.getEnv('endpoints.metrics.includeApiMethodLabel'),
|
|
71
|
-
includeStatusCode: config_1.default.getEnv('endpoints.metrics.includeApiStatusCodeLabel'),
|
|
72
|
-
});
|
|
73
|
-
app.use(['/rest/', '/webhook/', 'webhook-test/', '/api/'], metricsMiddleware);
|
|
72
|
+
disableAllLabels() {
|
|
73
|
+
for (const label in this.includes.labels) {
|
|
74
|
+
this.includes.labels[label] = false;
|
|
74
75
|
}
|
|
75
76
|
}
|
|
77
|
+
initN8nVersionMetric() {
|
|
78
|
+
const n8nVersion = (0, parse_1.default)(constants_1.N8N_VERSION !== null && constants_1.N8N_VERSION !== void 0 ? constants_1.N8N_VERSION : '0.0.0');
|
|
79
|
+
if (!n8nVersion)
|
|
80
|
+
return;
|
|
81
|
+
const versionGauge = new prom_client_1.default.Gauge({
|
|
82
|
+
name: this.prefix + 'version_info',
|
|
83
|
+
help: 'n8n version info.',
|
|
84
|
+
labelNames: ['version', 'major', 'minor', 'patch'],
|
|
85
|
+
});
|
|
86
|
+
const { version, major, minor, patch } = n8nVersion;
|
|
87
|
+
versionGauge.set({ version: 'v' + version, major, minor, patch }, 1);
|
|
88
|
+
}
|
|
89
|
+
initDefaultMetrics() {
|
|
90
|
+
if (!this.includes.metrics.default)
|
|
91
|
+
return;
|
|
92
|
+
prom_client_1.default.collectDefaultMetrics();
|
|
93
|
+
}
|
|
94
|
+
initRouteMetrics(app) {
|
|
95
|
+
if (!this.includes.metrics.routes)
|
|
96
|
+
return;
|
|
97
|
+
const metricsMiddleware = (0, express_prom_bundle_1.default)({
|
|
98
|
+
autoregister: false,
|
|
99
|
+
includeUp: false,
|
|
100
|
+
includePath: this.includes.labels.apiPath,
|
|
101
|
+
includeMethod: this.includes.labels.apiMethod,
|
|
102
|
+
includeStatusCode: this.includes.labels.apiStatusCode,
|
|
103
|
+
});
|
|
104
|
+
app.use([
|
|
105
|
+
'/rest/',
|
|
106
|
+
'/api/',
|
|
107
|
+
'/webhook/',
|
|
108
|
+
'/webhook-waiting/',
|
|
109
|
+
'/webhook-test/',
|
|
110
|
+
'/form/',
|
|
111
|
+
'/form-waiting/',
|
|
112
|
+
'/form-test/',
|
|
113
|
+
], metricsMiddleware);
|
|
114
|
+
}
|
|
76
115
|
mountMetricsEndpoint(app) {
|
|
77
116
|
app.get('/metrics', async (_req, res) => {
|
|
78
117
|
const metrics = await prom_client_1.default.register.metrics();
|
|
118
|
+
const prefixedMetrics = this.addPrefixToMetrics(metrics);
|
|
79
119
|
res.setHeader('Content-Type', prom_client_1.default.register.contentType);
|
|
80
|
-
res.send(
|
|
120
|
+
res.send(prefixedMetrics).end();
|
|
81
121
|
});
|
|
82
122
|
}
|
|
83
|
-
|
|
84
|
-
|
|
123
|
+
addPrefixToMetrics(metrics) {
|
|
124
|
+
return metrics
|
|
125
|
+
.split('\n')
|
|
126
|
+
.map((rawLine) => {
|
|
127
|
+
const line = rawLine.trim();
|
|
128
|
+
if (!line || line.startsWith('#') || line.startsWith(this.prefix))
|
|
129
|
+
return rawLine;
|
|
130
|
+
return this.prefix + line;
|
|
131
|
+
})
|
|
132
|
+
.join('\n');
|
|
133
|
+
}
|
|
134
|
+
initCacheMetrics() {
|
|
135
|
+
if (!this.includes.metrics.cache)
|
|
85
136
|
return;
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
help: 'Total number of cache hits.',
|
|
137
|
+
const [hitsConfig, missesConfig, updatesConfig] = ['hits', 'misses', 'updates'].map((kind) => ({
|
|
138
|
+
name: this.prefix + 'cache_' + kind + '_total',
|
|
139
|
+
help: `Total number of cache ${kind}.`,
|
|
90
140
|
labelNames: ['cache'],
|
|
91
|
-
});
|
|
141
|
+
}));
|
|
142
|
+
this.counters.cacheHitsTotal = new prom_client_1.default.Counter(hitsConfig);
|
|
92
143
|
this.counters.cacheHitsTotal.inc(0);
|
|
93
|
-
this.cacheService.on('metrics.cache.hit', (
|
|
94
|
-
|
|
95
|
-
(_a = this.counters.cacheHitsTotal) === null || _a === void 0 ? void 0 : _a.inc(amount);
|
|
96
|
-
});
|
|
97
|
-
this.counters.cacheMissesTotal = new prom_client_1.default.Counter({
|
|
98
|
-
name: config_1.default.getEnv('endpoints.metrics.prefix') + 'cache_misses_total',
|
|
99
|
-
help: 'Total number of cache misses.',
|
|
100
|
-
labelNames: ['cache'],
|
|
101
|
-
});
|
|
144
|
+
this.cacheService.on('metrics.cache.hit', () => { var _a; return (_a = this.counters.cacheHitsTotal) === null || _a === void 0 ? void 0 : _a.inc(1); });
|
|
145
|
+
this.counters.cacheMissesTotal = new prom_client_1.default.Counter(missesConfig);
|
|
102
146
|
this.counters.cacheMissesTotal.inc(0);
|
|
103
|
-
this.cacheService.on('metrics.cache.miss', (
|
|
104
|
-
|
|
105
|
-
(_a = this.counters.cacheMissesTotal) === null || _a === void 0 ? void 0 : _a.inc(amount);
|
|
106
|
-
});
|
|
107
|
-
this.counters.cacheUpdatesTotal = new prom_client_1.default.Counter({
|
|
108
|
-
name: config_1.default.getEnv('endpoints.metrics.prefix') + 'cache_updates_total',
|
|
109
|
-
help: 'Total number of cache updates.',
|
|
110
|
-
labelNames: ['cache'],
|
|
111
|
-
});
|
|
147
|
+
this.cacheService.on('metrics.cache.miss', () => { var _a; return (_a = this.counters.cacheMissesTotal) === null || _a === void 0 ? void 0 : _a.inc(1); });
|
|
148
|
+
this.counters.cacheUpdatesTotal = new prom_client_1.default.Counter(updatesConfig);
|
|
112
149
|
this.counters.cacheUpdatesTotal.inc(0);
|
|
113
|
-
this.cacheService.on('metrics.cache.update', (
|
|
114
|
-
var _a;
|
|
115
|
-
(_a = this.counters.cacheUpdatesTotal) === null || _a === void 0 ? void 0 : _a.inc(amount);
|
|
116
|
-
});
|
|
150
|
+
this.cacheService.on('metrics.cache.update', () => { var _a; return (_a = this.counters.cacheUpdatesTotal) === null || _a === void 0 ? void 0 : _a.inc(1); });
|
|
117
151
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
const prefix = config_1.default.getEnv('endpoints.metrics.prefix');
|
|
123
|
-
const metricName = prefix + event.eventName.replace('n8n.', '').replace(/\./g, '_') + '_total';
|
|
152
|
+
toCounter(event) {
|
|
153
|
+
const { eventName } = event;
|
|
154
|
+
if (!this.counters[eventName]) {
|
|
155
|
+
const metricName = this.prefix + eventName.replace('n8n.', '').replace(/\./g, '_') + '_total';
|
|
124
156
|
if (!prom_client_1.default.validateMetricName(metricName)) {
|
|
125
|
-
this.
|
|
126
|
-
this.counters[event.eventName] = null;
|
|
157
|
+
this.counters[eventName] = null;
|
|
127
158
|
return null;
|
|
128
159
|
}
|
|
160
|
+
const labels = this.toLabels(event);
|
|
129
161
|
const counter = new prom_client_1.default.Counter({
|
|
130
162
|
name: metricName,
|
|
131
|
-
help: `Total number of ${
|
|
132
|
-
labelNames: Object.keys(
|
|
163
|
+
help: `Total number of ${eventName} events.`,
|
|
164
|
+
labelNames: Object.keys(labels),
|
|
133
165
|
});
|
|
134
|
-
counter.inc(0);
|
|
135
|
-
this.counters[
|
|
166
|
+
counter.labels(labels).inc(0);
|
|
167
|
+
this.counters[eventName] = counter;
|
|
136
168
|
}
|
|
137
|
-
return this.counters[
|
|
169
|
+
return this.counters[eventName];
|
|
138
170
|
}
|
|
139
|
-
|
|
140
|
-
if (!
|
|
171
|
+
initEventBusMetrics() {
|
|
172
|
+
if (!this.includes.metrics.logs)
|
|
141
173
|
return;
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
const counter = this.getCounterForEvent(event);
|
|
174
|
+
this.eventBus.on('metrics.eventBus.event', (event) => {
|
|
175
|
+
const counter = this.toCounter(event);
|
|
145
176
|
if (!counter)
|
|
146
177
|
return;
|
|
147
178
|
counter.inc(1);
|
|
148
179
|
});
|
|
149
180
|
}
|
|
150
|
-
|
|
151
|
-
var _a, _b, _c, _d
|
|
152
|
-
|
|
181
|
+
toLabels(event) {
|
|
182
|
+
var _a, _b, _c, _d;
|
|
183
|
+
const { __type, eventName, payload } = event;
|
|
184
|
+
switch (__type) {
|
|
153
185
|
case "$$EventMessageAudit":
|
|
154
|
-
if (
|
|
155
|
-
return
|
|
156
|
-
? {
|
|
157
|
-
credential_type: this.getLabelValueForCredential((_a = event.payload.credentialType) !== null && _a !== void 0 ? _a : 'unknown'),
|
|
158
|
-
}
|
|
186
|
+
if (eventName.startsWith('n8n.audit.user.credentials')) {
|
|
187
|
+
return this.includes.labels.credentialsType
|
|
188
|
+
? { credential_type: ((_a = event.payload.credentialType) !== null && _a !== void 0 ? _a : 'unknown').replace(/\./g, '_') }
|
|
159
189
|
: {};
|
|
160
190
|
}
|
|
161
|
-
if (
|
|
162
|
-
return
|
|
163
|
-
? { workflow_id: (
|
|
191
|
+
if (eventName.startsWith('n8n.audit.workflow')) {
|
|
192
|
+
return this.includes.labels.workflowId
|
|
193
|
+
? { workflow_id: (_b = payload.workflowId) !== null && _b !== void 0 ? _b : 'unknown' }
|
|
164
194
|
: {};
|
|
165
195
|
}
|
|
166
196
|
break;
|
|
167
197
|
case "$$EventMessageNode":
|
|
168
|
-
return
|
|
169
|
-
? {
|
|
198
|
+
return this.includes.labels.nodeType
|
|
199
|
+
? {
|
|
200
|
+
node_type: ((_c = payload.nodeType) !== null && _c !== void 0 ? _c : 'unknown')
|
|
201
|
+
.replace('n8n-nodes-', '')
|
|
202
|
+
.replace(/\./g, '_'),
|
|
203
|
+
}
|
|
170
204
|
: {};
|
|
171
205
|
case "$$EventMessageWorkflow":
|
|
172
|
-
return
|
|
173
|
-
? { workflow_id: (
|
|
206
|
+
return this.includes.labels.workflowId
|
|
207
|
+
? { workflow_id: (_d = payload.workflowId) !== null && _d !== void 0 ? _d : 'unknown' }
|
|
174
208
|
: {};
|
|
175
209
|
}
|
|
176
210
|
return {};
|
|
177
211
|
}
|
|
178
|
-
getLabelValueForNode(nodeType) {
|
|
179
|
-
return nodeType.replace('n8n-nodes-', '').replace(/\./g, '_');
|
|
180
|
-
}
|
|
181
|
-
getLabelValueForCredential(credentialType) {
|
|
182
|
-
return credentialType.replace(/\./g, '_');
|
|
183
|
-
}
|
|
184
212
|
};
|
|
185
213
|
exports.PrometheusMetricsService = PrometheusMetricsService;
|
|
186
214
|
exports.PrometheusMetricsService = PrometheusMetricsService = __decorate([
|
|
187
215
|
(0, typedi_1.Service)(),
|
|
188
|
-
__metadata("design:paramtypes", [
|
|
189
|
-
cache_service_1.CacheService,
|
|
216
|
+
__metadata("design:paramtypes", [cache_service_1.CacheService,
|
|
190
217
|
MessageEventBus_1.MessageEventBus])
|
|
191
218
|
], PrometheusMetricsService);
|
|
192
219
|
//# sourceMappingURL=prometheus-metrics.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prometheus-metrics.service.js","sourceRoot":"","sources":["../../src/metrics/prometheus-metrics.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sDAA8B;AAC9B,2CAA0C;AAE1C,8EAA6C;AAC7C,8DAAuD;AACvD,mEAAiD;AACjD,mCAAiC;
|
|
1
|
+
{"version":3,"file":"prometheus-metrics.service.js","sourceRoot":"","sources":["../../src/metrics/prometheus-metrics.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type MetricCategory = 'default' | 'routes' | 'cache' | 'logs';
|
|
2
|
+
export type MetricLabel = 'credentialsType' | 'nodeType' | 'workflowId' | 'apiPath' | 'apiMethod' | 'apiStatusCode';
|
|
3
|
+
export type Includes = {
|
|
4
|
+
metrics: Record<MetricCategory, boolean>;
|
|
5
|
+
labels: Record<MetricLabel, boolean>;
|
|
6
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/metrics/types.ts"],"names":[],"mappings":""}
|
|
@@ -2,10 +2,12 @@ import { InstanceSettings } from 'n8n-core';
|
|
|
2
2
|
import type { WorkflowEntity } from '../../databases/entities/WorkflowEntity';
|
|
3
3
|
import type { RiskReporter, Risk } from '../../security-audit/types';
|
|
4
4
|
import { Logger } from '../../Logger';
|
|
5
|
+
import { GlobalConfig } from '@n8n/config';
|
|
5
6
|
export declare class InstanceRiskReporter implements RiskReporter {
|
|
6
7
|
private readonly instanceSettings;
|
|
7
8
|
private readonly logger;
|
|
8
|
-
|
|
9
|
+
private readonly globalConfig;
|
|
10
|
+
constructor(instanceSettings: InstanceSettings, logger: Logger, globalConfig: GlobalConfig);
|
|
9
11
|
report(workflows: WorkflowEntity[]): Promise<Risk.InstanceReport | null>;
|
|
10
12
|
private getSecuritySettings;
|
|
11
13
|
private hasValidatorChild;
|
|
@@ -23,10 +23,12 @@ const constants_1 = require("../../security-audit/constants");
|
|
|
23
23
|
const constants_2 = require("../../constants");
|
|
24
24
|
const PublicApi_1 = require("../../PublicApi");
|
|
25
25
|
const Logger_1 = require("../../Logger");
|
|
26
|
+
const config_2 = require("@n8n/config");
|
|
26
27
|
let InstanceRiskReporter = class InstanceRiskReporter {
|
|
27
|
-
constructor(instanceSettings, logger) {
|
|
28
|
+
constructor(instanceSettings, logger, globalConfig) {
|
|
28
29
|
this.instanceSettings = instanceSettings;
|
|
29
30
|
this.logger = logger;
|
|
31
|
+
this.globalConfig = globalConfig;
|
|
30
32
|
}
|
|
31
33
|
async report(workflows) {
|
|
32
34
|
const unprotectedWebhooks = this.getUnprotectedWebhookNodes(workflows);
|
|
@@ -73,19 +75,19 @@ let InstanceRiskReporter = class InstanceRiskReporter {
|
|
|
73
75
|
return report;
|
|
74
76
|
}
|
|
75
77
|
getSecuritySettings() {
|
|
76
|
-
var _a, _b;
|
|
77
78
|
if (config_1.default.getEnv('deployment.type') === 'cloud')
|
|
78
79
|
return null;
|
|
79
80
|
const settings = {};
|
|
80
81
|
settings.features = {
|
|
81
|
-
communityPackagesEnabled:
|
|
82
|
-
versionNotificationsEnabled:
|
|
83
|
-
templatesEnabled:
|
|
82
|
+
communityPackagesEnabled: this.globalConfig.nodes.communityPackages.enabled,
|
|
83
|
+
versionNotificationsEnabled: this.globalConfig.versionNotifications.enabled,
|
|
84
|
+
templatesEnabled: this.globalConfig.templates.enabled,
|
|
84
85
|
publicApiEnabled: (0, PublicApi_1.isApiEnabled)(),
|
|
85
86
|
};
|
|
87
|
+
const { exclude, include } = this.globalConfig.nodes;
|
|
86
88
|
settings.nodes = {
|
|
87
|
-
nodesExclude:
|
|
88
|
-
nodesInclude:
|
|
89
|
+
nodesExclude: exclude.length === 0 ? 'none' : exclude.join(', '),
|
|
90
|
+
nodesInclude: include.length === 0 ? 'none' : include.join(', '),
|
|
89
91
|
};
|
|
90
92
|
settings.telemetry = {
|
|
91
93
|
diagnosticsEnabled: config_1.default.getEnv('diagnostics.enabled'),
|
|
@@ -114,7 +116,7 @@ let InstanceRiskReporter = class InstanceRiskReporter {
|
|
|
114
116
|
}, []);
|
|
115
117
|
}
|
|
116
118
|
async getNextVersions(currentVersionName) {
|
|
117
|
-
const BASE_URL =
|
|
119
|
+
const BASE_URL = this.globalConfig.versionNotifications.endpoint;
|
|
118
120
|
const { instanceId } = this.instanceSettings;
|
|
119
121
|
const response = await axios_1.default.get(BASE_URL + currentVersionName, {
|
|
120
122
|
headers: { 'n8n-instance-id': instanceId },
|
|
@@ -165,6 +167,7 @@ exports.InstanceRiskReporter = InstanceRiskReporter;
|
|
|
165
167
|
exports.InstanceRiskReporter = InstanceRiskReporter = __decorate([
|
|
166
168
|
(0, typedi_1.Service)(),
|
|
167
169
|
__metadata("design:paramtypes", [n8n_core_1.InstanceSettings,
|
|
168
|
-
Logger_1.Logger
|
|
170
|
+
Logger_1.Logger,
|
|
171
|
+
config_2.GlobalConfig])
|
|
169
172
|
], InstanceRiskReporter);
|
|
170
173
|
//# sourceMappingURL=InstanceRiskReporter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstanceRiskReporter.js","sourceRoot":"","sources":["../../../src/security-audit/risk-reporters/InstanceRiskReporter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,mCAAiC;AACjC,uCAA4C;AAC5C,sDAA8B;AAC9B,kDAAuD;AACvD,mCAAmC;AACnC,0DAKoC;AACpC,2CAA+D;AAG/D,2CAA2C;AAC3C,qCAAkC;
|
|
1
|
+
{"version":3,"file":"InstanceRiskReporter.js","sourceRoot":"","sources":["../../../src/security-audit/risk-reporters/InstanceRiskReporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,12 @@ import { LoadNodesAndCredentials } from '../../LoadNodesAndCredentials';
|
|
|
2
2
|
import type { WorkflowEntity } from '../../databases/entities/WorkflowEntity';
|
|
3
3
|
import type { Risk, RiskReporter } from '../../security-audit/types';
|
|
4
4
|
import { CommunityPackagesService } from '../../services/communityPackages.service';
|
|
5
|
+
import { GlobalConfig } from '@n8n/config';
|
|
5
6
|
export declare class NodesRiskReporter implements RiskReporter {
|
|
6
7
|
private readonly loadNodesAndCredentials;
|
|
7
8
|
private readonly communityPackagesService;
|
|
8
|
-
|
|
9
|
+
private readonly globalConfig;
|
|
10
|
+
constructor(loadNodesAndCredentials: LoadNodesAndCredentials, communityPackagesService: CommunityPackagesService, globalConfig: GlobalConfig);
|
|
9
11
|
report(workflows: WorkflowEntity[]): Promise<Risk.StandardReport | null>;
|
|
10
12
|
private getCommunityNodeDetails;
|
|
11
13
|
private getCustomNodeDetails;
|
|
@@ -39,15 +39,16 @@ exports.NodesRiskReporter = void 0;
|
|
|
39
39
|
const path = __importStar(require("path"));
|
|
40
40
|
const fast_glob_1 = __importDefault(require("fast-glob"));
|
|
41
41
|
const typedi_1 = require("typedi");
|
|
42
|
-
const config_1 = __importDefault(require("../../config"));
|
|
43
42
|
const LoadNodesAndCredentials_1 = require("../../LoadNodesAndCredentials");
|
|
44
43
|
const utils_1 = require("../../security-audit/utils");
|
|
45
44
|
const constants_1 = require("../../security-audit/constants");
|
|
46
45
|
const communityPackages_service_1 = require("../../services/communityPackages.service");
|
|
46
|
+
const config_1 = require("@n8n/config");
|
|
47
47
|
let NodesRiskReporter = class NodesRiskReporter {
|
|
48
|
-
constructor(loadNodesAndCredentials, communityPackagesService) {
|
|
48
|
+
constructor(loadNodesAndCredentials, communityPackagesService, globalConfig) {
|
|
49
49
|
this.loadNodesAndCredentials = loadNodesAndCredentials;
|
|
50
50
|
this.communityPackagesService = communityPackagesService;
|
|
51
|
+
this.globalConfig = globalConfig;
|
|
51
52
|
}
|
|
52
53
|
async report(workflows) {
|
|
53
54
|
const officialRiskyNodes = (0, utils_1.getNodeTypes)(workflows, (node) => constants_1.OFFICIAL_RISKY_NODE_TYPES.has(node.type));
|
|
@@ -99,7 +100,7 @@ let NodesRiskReporter = class NodesRiskReporter {
|
|
|
99
100
|
return report;
|
|
100
101
|
}
|
|
101
102
|
async getCommunityNodeDetails() {
|
|
102
|
-
if (!
|
|
103
|
+
if (!this.globalConfig.nodes.communityPackages.enabled)
|
|
103
104
|
return [];
|
|
104
105
|
const installedPackages = await this.communityPackagesService.getAllInstalledPackages();
|
|
105
106
|
return installedPackages.reduce((acc, pkg) => {
|
|
@@ -131,6 +132,7 @@ exports.NodesRiskReporter = NodesRiskReporter;
|
|
|
131
132
|
exports.NodesRiskReporter = NodesRiskReporter = __decorate([
|
|
132
133
|
(0, typedi_1.Service)(),
|
|
133
134
|
__metadata("design:paramtypes", [LoadNodesAndCredentials_1.LoadNodesAndCredentials,
|
|
134
|
-
communityPackages_service_1.CommunityPackagesService
|
|
135
|
+
communityPackages_service_1.CommunityPackagesService,
|
|
136
|
+
config_1.GlobalConfig])
|
|
135
137
|
], NodesRiskReporter);
|
|
136
138
|
//# sourceMappingURL=NodesRiskReporter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodesRiskReporter.js","sourceRoot":"","sources":["../../../src/security-audit/risk-reporters/NodesRiskReporter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,0DAA6B;AAC7B,mCAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"NodesRiskReporter.js","sourceRoot":"","sources":["../../../src/security-audit/risk-reporters/NodesRiskReporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -75,7 +75,7 @@ let FrontendService = class FrontendService {
|
|
|
75
75
|
loadNodesAndCredentials.addPostProcessor(async () => await this.generateTypes());
|
|
76
76
|
void this.generateTypes();
|
|
77
77
|
this.initSettings();
|
|
78
|
-
if (
|
|
78
|
+
if (this.globalConfig.nodes.communityPackages.enabled) {
|
|
79
79
|
void Promise.resolve().then(() => __importStar(require('../services/communityPackages.service'))).then(({ CommunityPackagesService }) => {
|
|
80
80
|
this.communityPackagesService = typedi_1.Container.get(CommunityPackagesService);
|
|
81
81
|
});
|
|
@@ -129,9 +129,9 @@ let FrontendService = class FrontendService {
|
|
|
129
129
|
oauth2: `${instanceBaseUrl}/${restEndpoint}/oauth2-credential/callback`,
|
|
130
130
|
},
|
|
131
131
|
versionNotifications: {
|
|
132
|
-
enabled:
|
|
133
|
-
endpoint:
|
|
134
|
-
infoUrl:
|
|
132
|
+
enabled: this.globalConfig.versionNotifications.enabled,
|
|
133
|
+
endpoint: this.globalConfig.versionNotifications.endpoint,
|
|
134
|
+
infoUrl: this.globalConfig.versionNotifications.infoUrl,
|
|
135
135
|
},
|
|
136
136
|
instanceId: this.instanceSettings.instanceId,
|
|
137
137
|
telemetry: telemetrySettings,
|
|
@@ -164,21 +164,21 @@ let FrontendService = class FrontendService {
|
|
|
164
164
|
publicApi: {
|
|
165
165
|
enabled: (0, PublicApi_1.isApiEnabled)(),
|
|
166
166
|
latestVersion: 1,
|
|
167
|
-
path:
|
|
167
|
+
path: this.globalConfig.publicApi.path,
|
|
168
168
|
swaggerUi: {
|
|
169
|
-
enabled: !
|
|
169
|
+
enabled: !this.globalConfig.publicApi.swaggerUiDisabled,
|
|
170
170
|
},
|
|
171
171
|
},
|
|
172
172
|
workflowTagsDisabled: config_2.default.getEnv('workflowTagsDisabled'),
|
|
173
173
|
logLevel: config_2.default.getEnv('logs.level'),
|
|
174
174
|
hiringBannerEnabled: config_2.default.getEnv('hiringBanner.enabled'),
|
|
175
175
|
templates: {
|
|
176
|
-
enabled:
|
|
177
|
-
host:
|
|
176
|
+
enabled: this.globalConfig.templates.enabled,
|
|
177
|
+
host: this.globalConfig.templates.host,
|
|
178
178
|
},
|
|
179
179
|
executionMode: config_2.default.getEnv('executions.mode'),
|
|
180
180
|
pushBackend: config_2.default.getEnv('push.backend'),
|
|
181
|
-
communityNodesEnabled:
|
|
181
|
+
communityNodesEnabled: this.globalConfig.nodes.communityPackages.enabled,
|
|
182
182
|
deployment: {
|
|
183
183
|
type: config_2.default.getEnv('deployment.type'),
|
|
184
184
|
},
|