n8n 1.90.2 → 1.91.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/abstract-server.js +2 -2
- package/dist/abstract-server.js.map +1 -1
- package/dist/active-workflow-manager.js +2 -2
- package/dist/active-workflow-manager.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/commands/base-command.js +14 -7
- package/dist/commands/base-command.js.map +1 -1
- package/dist/commands/start.js +4 -3
- package/dist/commands/start.js.map +1 -1
- package/dist/config/index.d.ts +3 -1
- package/dist/config/index.js +0 -11
- package/dist/config/index.js.map +1 -1
- package/dist/config/schema.d.ts +8 -6
- package/dist/config/schema.js +8 -6
- package/dist/config/schema.js.map +1 -1
- package/dist/constants.d.ts +0 -42
- package/dist/constants.js +1 -43
- package/dist/constants.js.map +1 -1
- package/dist/{decorators/controller.registry.d.ts → controller.registry.d.ts} +5 -6
- package/dist/{decorators/controller.registry.js → controller.registry.js} +14 -36
- package/dist/controller.registry.js.map +1 -0
- package/dist/controllers/active-workflows.controller.js +1 -1
- package/dist/controllers/active-workflows.controller.js.map +1 -1
- package/dist/controllers/ai.controller.d.ts +5 -2
- package/dist/controllers/ai.controller.js +29 -2
- package/dist/controllers/ai.controller.js.map +1 -1
- package/dist/controllers/annotation-tags.controller.ee.js +1 -1
- package/dist/controllers/annotation-tags.controller.ee.js.map +1 -1
- package/dist/controllers/api-keys.controller.js +1 -1
- package/dist/controllers/api-keys.controller.js.map +1 -1
- package/dist/controllers/auth.controller.js +1 -1
- package/dist/controllers/auth.controller.js.map +1 -1
- package/dist/controllers/binary-data.controller.js +1 -1
- package/dist/controllers/binary-data.controller.js.map +1 -1
- package/dist/controllers/community-packages.controller.js +1 -1
- package/dist/controllers/community-packages.controller.js.map +1 -1
- package/dist/controllers/cta.controller.js +1 -1
- package/dist/controllers/cta.controller.js.map +1 -1
- package/dist/controllers/debug.controller.js +1 -1
- package/dist/controllers/debug.controller.js.map +1 -1
- package/dist/controllers/dynamic-node-parameters.controller.js +1 -1
- package/dist/controllers/dynamic-node-parameters.controller.js.map +1 -1
- package/dist/controllers/folder.controller.js +1 -1
- package/dist/controllers/folder.controller.js.map +1 -1
- package/dist/controllers/invitation.controller.js +1 -1
- package/dist/controllers/invitation.controller.js.map +1 -1
- package/dist/controllers/me.controller.js +1 -1
- package/dist/controllers/me.controller.js.map +1 -1
- package/dist/controllers/mfa.controller.js +1 -1
- package/dist/controllers/mfa.controller.js.map +1 -1
- package/dist/controllers/node-types.controller.js +1 -1
- package/dist/controllers/node-types.controller.js.map +1 -1
- package/dist/controllers/oauth/abstract-oauth.controller.d.ts +3 -3
- package/dist/controllers/oauth/abstract-oauth.controller.js +5 -5
- package/dist/controllers/oauth/abstract-oauth.controller.js.map +1 -1
- package/dist/controllers/oauth/oauth1-credential.controller.js +1 -1
- package/dist/controllers/oauth/oauth1-credential.controller.js.map +1 -1
- package/dist/controllers/oauth/oauth2-credential.controller.js +1 -1
- package/dist/controllers/oauth/oauth2-credential.controller.js.map +1 -1
- package/dist/controllers/orchestration.controller.js +1 -1
- package/dist/controllers/orchestration.controller.js.map +1 -1
- package/dist/controllers/owner.controller.js +1 -1
- package/dist/controllers/owner.controller.js.map +1 -1
- package/dist/controllers/password-reset.controller.js +1 -1
- package/dist/controllers/password-reset.controller.js.map +1 -1
- package/dist/controllers/project.controller.js +1 -1
- package/dist/controllers/project.controller.js.map +1 -1
- package/dist/controllers/role.controller.js +1 -1
- package/dist/controllers/role.controller.js.map +1 -1
- package/dist/controllers/tags.controller.js +1 -1
- package/dist/controllers/tags.controller.js.map +1 -1
- package/dist/controllers/translation.controller.js +1 -1
- package/dist/controllers/translation.controller.js.map +1 -1
- package/dist/controllers/user-settings.controller.js +1 -1
- package/dist/controllers/user-settings.controller.js.map +1 -1
- package/dist/controllers/users.controller.js +1 -1
- package/dist/controllers/users.controller.js.map +1 -1
- package/dist/controllers/workflow-statistics.controller.d.ts +3 -3
- package/dist/controllers/workflow-statistics.controller.js +6 -6
- package/dist/controllers/workflow-statistics.controller.js.map +1 -1
- package/dist/credentials/credentials-finder.service.d.ts +34 -0
- package/dist/credentials/credentials-finder.service.js +108 -0
- package/dist/credentials/credentials-finder.service.js.map +1 -0
- package/dist/credentials/credentials.controller.d.ts +3 -1
- package/dist/credentials/credentials.controller.js +15 -13
- package/dist/credentials/credentials.controller.js.map +1 -1
- package/dist/credentials/credentials.service.d.ts +3 -1
- package/dist/credentials/credentials.service.ee.d.ts +3 -1
- package/dist/credentials/credentials.service.ee.js +10 -5
- package/dist/credentials/credentials.service.ee.js.map +1 -1
- package/dist/credentials/credentials.service.js +8 -5
- package/dist/credentials/credentials.service.js.map +1 -1
- package/dist/databases/migrations/common/1675940580449-PurgeInvalidWorkflowConnections.d.ts +2 -2
- package/dist/databases/migrations/common/1675940580449-PurgeInvalidWorkflowConnections.js +7 -31
- package/dist/databases/migrations/common/1675940580449-PurgeInvalidWorkflowConnections.js.map +1 -1
- package/dist/databases/repositories/credentials.repository.d.ts +1 -6
- package/dist/databases/repositories/credentials.repository.js +2 -25
- package/dist/databases/repositories/credentials.repository.js.map +1 -1
- package/dist/databases/repositories/shared-credentials.repository.d.ts +4 -24
- package/dist/databases/repositories/shared-credentials.repository.js +27 -80
- package/dist/databases/repositories/shared-credentials.repository.js.map +1 -1
- package/dist/databases/repositories/shared-workflow.repository.d.ts +8 -32
- package/dist/databases/repositories/shared-workflow.repository.js +18 -62
- package/dist/databases/repositories/shared-workflow.repository.js.map +1 -1
- package/dist/databases/types.d.ts +0 -2
- package/dist/databases/types.js.map +1 -1
- package/dist/databases/utils/migration-helpers.js +0 -2
- package/dist/databases/utils/migration-helpers.js.map +1 -1
- package/dist/deprecation/deprecation.service.d.ts +3 -1
- package/dist/deprecation/deprecation.service.js +22 -4
- package/dist/deprecation/deprecation.service.js.map +1 -1
- package/dist/environments.ee/source-control/source-control.controller.ee.d.ts +3 -3
- package/dist/environments.ee/source-control/source-control.controller.ee.js +1 -1
- package/dist/environments.ee/source-control/source-control.controller.ee.js.map +1 -1
- package/dist/environments.ee/source-control/source-control.service.ee.d.ts +2 -2
- package/dist/environments.ee/variables/variables.controller.ee.js +1 -1
- package/dist/environments.ee/variables/variables.controller.ee.js.map +1 -1
- package/dist/errors/feature-not-licensed.error.d.ts +1 -1
- package/dist/errors/feature-not-licensed.error.js.map +1 -1
- package/dist/evaluation.ee/test-definitions.controller.ee.js +1 -1
- package/dist/evaluation.ee/test-definitions.controller.ee.js.map +1 -1
- package/dist/evaluation.ee/test-runs.controller.ee.js +1 -1
- package/dist/evaluation.ee/test-runs.controller.ee.js.map +1 -1
- package/dist/eventbus/event-bus.controller.js +1 -1
- package/dist/eventbus/event-bus.controller.js.map +1 -1
- package/dist/eventbus/message-event-bus-destination/message-event-bus-destination-webhook.ee.js +4 -35
- package/dist/eventbus/message-event-bus-destination/message-event-bus-destination-webhook.ee.js.map +1 -1
- package/dist/events/events.controller.js +1 -1
- package/dist/events/events.controller.js.map +1 -1
- package/dist/events/relays/log-streaming.event-relay.js +24 -24
- package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
- package/dist/execution-lifecycle/execution-lifecycle-hooks.js +4 -4
- package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
- package/dist/executions/executions.controller.js +1 -1
- package/dist/executions/executions.controller.js.map +1 -1
- package/dist/external-secrets.ee/errors/unknown-auth-type.error.js.map +1 -0
- package/dist/external-secrets.ee/external-secrets-manager.ee.d.ts +7 -6
- package/dist/external-secrets.ee/external-secrets-manager.ee.js +26 -23
- package/dist/external-secrets.ee/external-secrets-manager.ee.js.map +1 -1
- package/dist/external-secrets.ee/external-secrets-providers.ee.d.ts +2 -2
- package/dist/external-secrets.ee/external-secrets-providers.ee.js +2 -2
- package/dist/external-secrets.ee/external-secrets-providers.ee.js.map +1 -1
- package/dist/external-secrets.ee/external-secrets.config.d.ts +4 -0
- package/dist/external-secrets.ee/external-secrets.config.js +32 -0
- package/dist/external-secrets.ee/external-secrets.config.js.map +1 -0
- package/dist/external-secrets.ee/external-secrets.controller.ee.d.ts +7 -4
- package/dist/external-secrets.ee/external-secrets.controller.ee.js +36 -59
- package/dist/external-secrets.ee/external-secrets.controller.ee.js.map +1 -1
- package/dist/external-secrets.ee/external-secrets.service.ee.d.ts +2 -3
- package/dist/external-secrets.ee/external-secrets.service.ee.js +0 -18
- package/dist/external-secrets.ee/external-secrets.service.ee.js.map +1 -1
- package/dist/external-secrets.ee/providers/{aws-secrets/aws-secrets-manager.d.ts → aws-secrets-manager.d.ts} +13 -2
- package/dist/external-secrets.ee/providers/{aws-secrets/aws-secrets-manager.js → aws-secrets-manager.js} +65 -8
- package/dist/external-secrets.ee/providers/aws-secrets-manager.js.map +1 -0
- package/dist/external-secrets.ee/providers/azure-key-vault/azure-key-vault.d.ts +1 -1
- package/dist/external-secrets.ee/providers/azure-key-vault/azure-key-vault.js +1 -1
- package/dist/external-secrets.ee/providers/azure-key-vault/azure-key-vault.js.map +1 -1
- package/dist/external-secrets.ee/providers/azure-key-vault/types.d.ts +1 -1
- package/dist/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.d.ts +1 -1
- package/dist/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.js +1 -1
- package/dist/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.js.map +1 -1
- package/dist/external-secrets.ee/providers/gcp-secrets-manager/types.d.ts +1 -1
- package/dist/external-secrets.ee/providers/infisical.d.ts +1 -1
- package/dist/external-secrets.ee/providers/infisical.js.map +1 -1
- package/dist/external-secrets.ee/providers/vault.d.ts +2 -2
- package/dist/external-secrets.ee/providers/vault.js +4 -4
- package/dist/external-secrets.ee/providers/vault.js.map +1 -1
- package/dist/external-secrets.ee/types.d.ts +50 -0
- package/dist/external-secrets.ee/types.js +7 -0
- package/dist/external-secrets.ee/types.js.map +1 -0
- package/dist/interfaces.d.ts +1 -29
- package/dist/interfaces.js +0 -4
- package/dist/interfaces.js.map +1 -1
- package/dist/ldap.ee/ldap.controller.ee.js +1 -1
- package/dist/ldap.ee/ldap.controller.ee.js.map +1 -1
- package/dist/license/license.controller.js +1 -1
- package/dist/license/license.controller.js.map +1 -1
- package/dist/license.d.ts +1 -1
- package/dist/license.js +8 -7
- package/dist/license.js.map +1 -1
- package/dist/manual-execution.service.js +9 -0
- package/dist/manual-execution.service.js.map +1 -1
- package/dist/middlewares/list-query/index.js.map +1 -1
- package/dist/modules/insights/database/repositories/insights-by-period.repository.d.ts +1 -1
- package/dist/modules/insights/insights-collection.service.d.ts +22 -0
- package/dist/modules/insights/insights-collection.service.js +191 -0
- package/dist/modules/insights/insights-collection.service.js.map +1 -0
- package/dist/modules/insights/insights-compaction.service.d.ts +16 -0
- package/dist/modules/insights/insights-compaction.service.js +85 -0
- package/dist/modules/insights/insights-compaction.service.js.map +1 -0
- package/dist/modules/insights/insights.controller.d.ts +4 -4
- package/dist/modules/insights/insights.controller.js +28 -13
- package/dist/modules/insights/insights.controller.js.map +1 -1
- package/dist/modules/insights/insights.module.d.ts +4 -4
- package/dist/modules/insights/insights.module.js +22 -11
- package/dist/modules/insights/insights.module.js.map +1 -1
- package/dist/modules/insights/insights.service.d.ts +13 -29
- package/dist/modules/insights/insights.service.js +53 -226
- package/dist/modules/insights/insights.service.js.map +1 -1
- package/dist/public-api/v1/handlers/workflows/workflows.handler.js +9 -9
- package/dist/public-api/v1/handlers/workflows/workflows.handler.js.map +1 -1
- package/dist/public-api/v1/shared/middlewares/global.middleware.d.ts +1 -1
- package/dist/public-api/v1/shared/middlewares/global.middleware.js.map +1 -1
- package/dist/push/index.js +2 -2
- package/dist/push/index.js.map +1 -1
- package/dist/requests.d.ts +1 -27
- package/dist/requests.js.map +1 -1
- package/dist/scaling/multi-main-setup.ee.d.ts +4 -1
- package/dist/scaling/multi-main-setup.ee.js +14 -2
- package/dist/scaling/multi-main-setup.ee.js.map +1 -1
- package/dist/scaling/scaling.service.js +2 -2
- package/dist/scaling/scaling.service.js.map +1 -1
- package/dist/server.d.ts +1 -0
- package/dist/server.js +3 -2
- package/dist/server.js.map +1 -1
- package/dist/services/access.service.d.ts +3 -3
- package/dist/services/access.service.js +5 -5
- package/dist/services/access.service.js.map +1 -1
- package/dist/services/active-workflows.service.d.ts +3 -1
- package/dist/services/active-workflows.service.js +6 -3
- package/dist/services/active-workflows.service.js.map +1 -1
- package/dist/services/ai-workflow-builder.service.d.ts +17 -0
- package/dist/services/ai-workflow-builder.service.js +43 -0
- package/dist/services/ai-workflow-builder.service.js.map +1 -0
- package/dist/services/community-packages.service.js +12 -11
- package/dist/services/community-packages.service.js.map +1 -1
- package/dist/services/frontend.service.d.ts +3 -1
- package/dist/services/frontend.service.js +16 -5
- package/dist/services/frontend.service.js.map +1 -1
- package/dist/services/project.service.ee.js +1 -1
- package/dist/services/project.service.ee.js.map +1 -1
- package/dist/services/pruning/pruning.service.js +2 -2
- package/dist/services/pruning/pruning.service.js.map +1 -1
- package/dist/services/redis-client.service.js +2 -2
- package/dist/services/redis-client.service.js.map +1 -1
- package/dist/shutdown/shutdown.service.d.ts +5 -11
- package/dist/shutdown/shutdown.service.js +9 -15
- package/dist/shutdown/shutdown.service.js.map +1 -1
- package/dist/sso.ee/saml/routes/saml.controller.ee.d.ts +3 -1
- package/dist/sso.ee/saml/routes/saml.controller.ee.js +2 -2
- package/dist/sso.ee/saml/routes/saml.controller.ee.js.map +1 -1
- package/dist/task-runners/task-runner-module.js +2 -2
- package/dist/task-runners/task-runner-module.js.map +1 -1
- package/dist/task-runners/task-runner-process.js +4 -2
- package/dist/task-runners/task-runner-process.js.map +1 -1
- package/dist/telemetry/index.js +2 -2
- package/dist/telemetry/index.js.map +1 -1
- package/dist/webhooks/webhook.service.d.ts +1 -2
- package/dist/webhooks/webhook.types.d.ts +1 -0
- package/dist/webhooks/webhooks.controller.d.ts +7 -0
- package/dist/webhooks/webhooks.controller.js +45 -0
- package/dist/webhooks/webhooks.controller.js.map +1 -0
- package/dist/workflows/workflow-finder.service.d.ts +37 -0
- package/dist/workflows/workflow-finder.service.js +81 -0
- package/dist/workflows/workflow-finder.service.js.map +1 -0
- package/dist/workflows/workflow-history.ee/workflow-history.controller.ee.d.ts +2 -1
- package/dist/workflows/workflow-history.ee/workflow-history.controller.ee.js +10 -6
- package/dist/workflows/workflow-history.ee/workflow-history.controller.ee.js.map +1 -1
- package/dist/workflows/workflow-history.ee/workflow-history.service.ee.d.ts +3 -3
- package/dist/workflows/workflow-history.ee/workflow-history.service.ee.js +6 -6
- package/dist/workflows/workflow-history.ee/workflow-history.service.ee.js.map +1 -1
- package/dist/workflows/workflow.service.d.ts +3 -1
- package/dist/workflows/workflow.service.ee.d.ts +8 -4
- package/dist/workflows/workflow.service.ee.js +24 -9
- package/dist/workflows/workflow.service.ee.js.map +1 -1
- package/dist/workflows/workflow.service.js +7 -4
- package/dist/workflows/workflow.service.js.map +1 -1
- package/dist/workflows/workflows.controller.d.ts +3 -1
- package/dist/workflows/workflows.controller.js +11 -8
- package/dist/workflows/workflows.controller.js.map +1 -1
- package/package.json +18 -13
- package/dist/decorators/args.d.ts +0 -3
- package/dist/decorators/args.js +0 -13
- package/dist/decorators/args.js.map +0 -1
- package/dist/decorators/controller.registry.js.map +0 -1
- package/dist/decorators/debounce.d.ts +0 -1
- package/dist/decorators/debounce.js +0 -20
- package/dist/decorators/debounce.js.map +0 -1
- package/dist/decorators/index.d.ts +0 -7
- package/dist/decorators/index.js +0 -25
- package/dist/decorators/index.js.map +0 -1
- package/dist/decorators/licensed.d.ts +0 -2
- package/dist/decorators/licensed.js +0 -10
- package/dist/decorators/licensed.js.map +0 -1
- package/dist/decorators/middleware.d.ts +0 -1
- package/dist/decorators/middleware.js +0 -10
- package/dist/decorators/middleware.js.map +0 -1
- package/dist/decorators/module.d.ts +0 -14
- package/dist/decorators/module.js +0 -39
- package/dist/decorators/module.js.map +0 -1
- package/dist/decorators/on-shutdown.d.ts +0 -1
- package/dist/decorators/on-shutdown.js +0 -20
- package/dist/decorators/on-shutdown.js.map +0 -1
- package/dist/decorators/redactable.d.ts +0 -3
- package/dist/decorators/redactable.js +0 -28
- package/dist/decorators/redactable.js.map +0 -1
- package/dist/decorators/rest-controller.d.ts +0 -1
- package/dist/decorators/rest-controller.js +0 -12
- package/dist/decorators/rest-controller.js.map +0 -1
- package/dist/decorators/route.d.ts +0 -14
- package/dist/decorators/route.js +0 -19
- package/dist/decorators/route.js.map +0 -1
- package/dist/decorators/scoped.d.ts +0 -3
- package/dist/decorators/scoped.js +0 -13
- package/dist/decorators/scoped.js.map +0 -1
- package/dist/decorators/types.d.ts +0 -37
- package/dist/decorators/types.js +0 -3
- package/dist/decorators/types.js.map +0 -1
- package/dist/errors/external-secrets-provider-not-found.error.d.ts +0 -5
- package/dist/errors/external-secrets-provider-not-found.error.js +0 -12
- package/dist/errors/external-secrets-provider-not-found.error.js.map +0 -1
- package/dist/errors/unknown-auth-type.error.js.map +0 -1
- package/dist/external-secrets.ee/external-secrets-helper.ee.d.ts +0 -3
- package/dist/external-secrets.ee/external-secrets-helper.ee.js +0 -16
- package/dist/external-secrets.ee/external-secrets-helper.ee.js.map +0 -1
- package/dist/external-secrets.ee/providers/aws-secrets/aws-secrets-client.d.ts +0 -12
- package/dist/external-secrets.ee/providers/aws-secrets/aws-secrets-client.js +0 -136
- package/dist/external-secrets.ee/providers/aws-secrets/aws-secrets-client.js.map +0 -1
- package/dist/external-secrets.ee/providers/aws-secrets/aws-secrets-manager.js.map +0 -1
- package/dist/external-secrets.ee/providers/aws-secrets/types.d.ts +0 -43
- package/dist/external-secrets.ee/providers/aws-secrets/types.js +0 -3
- package/dist/external-secrets.ee/providers/aws-secrets/types.js.map +0 -1
- /package/dist/{errors → external-secrets.ee/errors}/unknown-auth-type.error.d.ts +0 -0
- /package/dist/{errors → external-secrets.ee/errors}/unknown-auth-type.error.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insights-collection.service.js","sourceRoot":"","sources":["../../../src/modules/insights/insights-collection.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { InsightsByPeriodRepository } from './database/repositories/insights-by-period.repository';
|
|
2
|
+
import { InsightsRawRepository } from './database/repositories/insights-raw.repository';
|
|
3
|
+
import { InsightsConfig } from './insights.config';
|
|
4
|
+
export declare class InsightsCompactionService {
|
|
5
|
+
private readonly insightsByPeriodRepository;
|
|
6
|
+
private readonly insightsRawRepository;
|
|
7
|
+
private readonly insightsConfig;
|
|
8
|
+
private compactInsightsTimer;
|
|
9
|
+
constructor(insightsByPeriodRepository: InsightsByPeriodRepository, insightsRawRepository: InsightsRawRepository, insightsConfig: InsightsConfig);
|
|
10
|
+
startCompactionTimer(): void;
|
|
11
|
+
stopCompactionTimer(): void;
|
|
12
|
+
compactInsights(): Promise<void>;
|
|
13
|
+
compactRawToHour(): Promise<number>;
|
|
14
|
+
compactHourToDay(): Promise<number>;
|
|
15
|
+
compactDayToWeek(): Promise<number>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.InsightsCompactionService = void 0;
|
|
13
|
+
const di_1 = require("@n8n/di");
|
|
14
|
+
const insights_by_period_repository_1 = require("./database/repositories/insights-by-period.repository");
|
|
15
|
+
const insights_raw_repository_1 = require("./database/repositories/insights-raw.repository");
|
|
16
|
+
const insights_config_1 = require("./insights.config");
|
|
17
|
+
let InsightsCompactionService = class InsightsCompactionService {
|
|
18
|
+
constructor(insightsByPeriodRepository, insightsRawRepository, insightsConfig) {
|
|
19
|
+
this.insightsByPeriodRepository = insightsByPeriodRepository;
|
|
20
|
+
this.insightsRawRepository = insightsRawRepository;
|
|
21
|
+
this.insightsConfig = insightsConfig;
|
|
22
|
+
}
|
|
23
|
+
startCompactionTimer() {
|
|
24
|
+
this.stopCompactionTimer();
|
|
25
|
+
this.compactInsightsTimer = setInterval(async () => await this.compactInsights(), this.insightsConfig.compactionIntervalMinutes * 60 * 1000);
|
|
26
|
+
}
|
|
27
|
+
stopCompactionTimer() {
|
|
28
|
+
if (this.compactInsightsTimer !== undefined) {
|
|
29
|
+
clearInterval(this.compactInsightsTimer);
|
|
30
|
+
this.compactInsightsTimer = undefined;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
async compactInsights() {
|
|
34
|
+
let numberOfCompactedRawData;
|
|
35
|
+
do {
|
|
36
|
+
numberOfCompactedRawData = await this.compactRawToHour();
|
|
37
|
+
} while (numberOfCompactedRawData > 0);
|
|
38
|
+
let numberOfCompactedHourData;
|
|
39
|
+
do {
|
|
40
|
+
numberOfCompactedHourData = await this.compactHourToDay();
|
|
41
|
+
} while (numberOfCompactedHourData > 0);
|
|
42
|
+
let numberOfCompactedDayData;
|
|
43
|
+
do {
|
|
44
|
+
numberOfCompactedDayData = await this.compactDayToWeek();
|
|
45
|
+
} while (numberOfCompactedDayData > 0);
|
|
46
|
+
}
|
|
47
|
+
async compactRawToHour() {
|
|
48
|
+
const batchQuery = this.insightsRawRepository.getRawInsightsBatchQuery(this.insightsConfig.compactionBatchSize);
|
|
49
|
+
return await this.insightsByPeriodRepository.compactSourceDataIntoInsightPeriod({
|
|
50
|
+
sourceBatchQuery: batchQuery,
|
|
51
|
+
sourceTableName: this.insightsRawRepository.metadata.tableName,
|
|
52
|
+
periodUnitToCompactInto: 'hour',
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
async compactHourToDay() {
|
|
56
|
+
const batchQuery = this.insightsByPeriodRepository.getPeriodInsightsBatchQuery({
|
|
57
|
+
periodUnitToCompactFrom: 'hour',
|
|
58
|
+
compactionBatchSize: this.insightsConfig.compactionBatchSize,
|
|
59
|
+
maxAgeInDays: this.insightsConfig.compactionHourlyToDailyThresholdDays,
|
|
60
|
+
});
|
|
61
|
+
return await this.insightsByPeriodRepository.compactSourceDataIntoInsightPeriod({
|
|
62
|
+
sourceBatchQuery: batchQuery,
|
|
63
|
+
periodUnitToCompactInto: 'day',
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
async compactDayToWeek() {
|
|
67
|
+
const batchQuery = this.insightsByPeriodRepository.getPeriodInsightsBatchQuery({
|
|
68
|
+
periodUnitToCompactFrom: 'day',
|
|
69
|
+
compactionBatchSize: this.insightsConfig.compactionBatchSize,
|
|
70
|
+
maxAgeInDays: this.insightsConfig.compactionDailyToWeeklyThresholdDays,
|
|
71
|
+
});
|
|
72
|
+
return await this.insightsByPeriodRepository.compactSourceDataIntoInsightPeriod({
|
|
73
|
+
sourceBatchQuery: batchQuery,
|
|
74
|
+
periodUnitToCompactInto: 'week',
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
exports.InsightsCompactionService = InsightsCompactionService;
|
|
79
|
+
exports.InsightsCompactionService = InsightsCompactionService = __decorate([
|
|
80
|
+
(0, di_1.Service)(),
|
|
81
|
+
__metadata("design:paramtypes", [insights_by_period_repository_1.InsightsByPeriodRepository,
|
|
82
|
+
insights_raw_repository_1.InsightsRawRepository,
|
|
83
|
+
insights_config_1.InsightsConfig])
|
|
84
|
+
], InsightsCompactionService);
|
|
85
|
+
//# sourceMappingURL=insights-compaction.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insights-compaction.service.js","sourceRoot":"","sources":["../../../src/modules/insights/insights-compaction.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { ListInsightsWorkflowQueryDto } from '@n8n/api-types';
|
|
1
|
+
import { InsightsDateFilterDto, ListInsightsWorkflowQueryDto } from '@n8n/api-types';
|
|
2
2
|
import type { InsightsSummary, InsightsByTime, InsightsByWorkflow } from '@n8n/api-types';
|
|
3
3
|
import { AuthenticatedRequest } from '../../requests';
|
|
4
4
|
import { InsightsService } from './insights.service';
|
|
5
5
|
export declare class InsightsController {
|
|
6
6
|
private readonly insightsService;
|
|
7
|
-
private readonly maxAgeInDaysFilteredInsights;
|
|
8
7
|
constructor(insightsService: InsightsService);
|
|
9
|
-
|
|
8
|
+
private getMaxAgeInDaysAndGranularity;
|
|
9
|
+
getInsightsSummary(_req: AuthenticatedRequest, _res: Response, payload?: InsightsDateFilterDto): Promise<InsightsSummary>;
|
|
10
10
|
getInsightsByWorkflow(_req: AuthenticatedRequest, _res: Response, payload: ListInsightsWorkflowQueryDto): Promise<InsightsByWorkflow>;
|
|
11
|
-
getInsightsByTime(): Promise<InsightsByTime[]>;
|
|
11
|
+
getInsightsByTime(_req: AuthenticatedRequest, _res: Response, payload: InsightsDateFilterDto): Promise<InsightsByTime[]>;
|
|
12
12
|
}
|
|
@@ -14,32 +14,43 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.InsightsController = void 0;
|
|
16
16
|
const api_types_1 = require("@n8n/api-types");
|
|
17
|
-
const decorators_1 = require("
|
|
18
|
-
const
|
|
19
|
-
const sort_by_1 = require("../../middlewares/list-query/sort-by");
|
|
17
|
+
const decorators_1 = require("@n8n/decorators");
|
|
18
|
+
const forbidden_error_1 = require("../../errors/response-errors/forbidden.error");
|
|
20
19
|
const insights_service_1 = require("./insights.service");
|
|
21
20
|
let InsightsController = class InsightsController {
|
|
22
21
|
constructor(insightsService) {
|
|
23
22
|
this.insightsService = insightsService;
|
|
24
|
-
this.maxAgeInDaysFilteredInsights = 7;
|
|
25
23
|
}
|
|
26
|
-
|
|
24
|
+
getMaxAgeInDaysAndGranularity(payload) {
|
|
25
|
+
try {
|
|
26
|
+
return this.insightsService.getMaxAgeInDaysAndGranularity(payload.dateRange ?? 'week');
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
throw new forbidden_error_1.ForbiddenError(error.message);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
async getInsightsSummary(_req, _res, payload = { dateRange: 'week' }) {
|
|
33
|
+
const dateRangeAndMaxAgeInDays = this.getMaxAgeInDaysAndGranularity(payload);
|
|
27
34
|
return await this.insightsService.getInsightsSummary({
|
|
28
|
-
periodLengthInDays:
|
|
35
|
+
periodLengthInDays: dateRangeAndMaxAgeInDays.maxAgeInDays,
|
|
29
36
|
});
|
|
30
37
|
}
|
|
31
38
|
async getInsightsByWorkflow(_req, _res, payload) {
|
|
39
|
+
const dateRangeAndMaxAgeInDays = this.getMaxAgeInDaysAndGranularity({
|
|
40
|
+
dateRange: payload.dateRange ?? 'week',
|
|
41
|
+
});
|
|
32
42
|
return await this.insightsService.getInsightsByWorkflow({
|
|
33
|
-
maxAgeInDays:
|
|
43
|
+
maxAgeInDays: dateRangeAndMaxAgeInDays.maxAgeInDays,
|
|
34
44
|
skip: payload.skip,
|
|
35
45
|
take: payload.take,
|
|
36
46
|
sortBy: payload.sortBy,
|
|
37
47
|
});
|
|
38
48
|
}
|
|
39
|
-
async getInsightsByTime() {
|
|
49
|
+
async getInsightsByTime(_req, _res, payload) {
|
|
50
|
+
const dateRangeAndMaxAgeInDays = this.getMaxAgeInDaysAndGranularity(payload);
|
|
40
51
|
return await this.insightsService.getInsightsByTime({
|
|
41
|
-
maxAgeInDays:
|
|
42
|
-
periodUnit:
|
|
52
|
+
maxAgeInDays: dateRangeAndMaxAgeInDays.maxAgeInDays,
|
|
53
|
+
periodUnit: dateRangeAndMaxAgeInDays.granularity,
|
|
43
54
|
});
|
|
44
55
|
}
|
|
45
56
|
};
|
|
@@ -47,12 +58,14 @@ exports.InsightsController = InsightsController;
|
|
|
47
58
|
__decorate([
|
|
48
59
|
(0, decorators_1.Get)('/summary'),
|
|
49
60
|
(0, decorators_1.GlobalScope)('insights:list'),
|
|
61
|
+
__param(2, decorators_1.Query),
|
|
50
62
|
__metadata("design:type", Function),
|
|
51
|
-
__metadata("design:paramtypes", [
|
|
63
|
+
__metadata("design:paramtypes", [Object, Response,
|
|
64
|
+
api_types_1.InsightsDateFilterDto]),
|
|
52
65
|
__metadata("design:returntype", Promise)
|
|
53
66
|
], InsightsController.prototype, "getInsightsSummary", null);
|
|
54
67
|
__decorate([
|
|
55
|
-
(0, decorators_1.Get)('/by-workflow'
|
|
68
|
+
(0, decorators_1.Get)('/by-workflow'),
|
|
56
69
|
(0, decorators_1.GlobalScope)('insights:list'),
|
|
57
70
|
(0, decorators_1.Licensed)('feat:insights:viewDashboard'),
|
|
58
71
|
__param(2, decorators_1.Query),
|
|
@@ -65,8 +78,10 @@ __decorate([
|
|
|
65
78
|
(0, decorators_1.Get)('/by-time'),
|
|
66
79
|
(0, decorators_1.GlobalScope)('insights:list'),
|
|
67
80
|
(0, decorators_1.Licensed)('feat:insights:viewDashboard'),
|
|
81
|
+
__param(2, decorators_1.Query),
|
|
68
82
|
__metadata("design:type", Function),
|
|
69
|
-
__metadata("design:paramtypes", [
|
|
83
|
+
__metadata("design:paramtypes", [Object, Response,
|
|
84
|
+
api_types_1.InsightsDateFilterDto]),
|
|
70
85
|
__metadata("design:returntype", Promise)
|
|
71
86
|
], InsightsController.prototype, "getInsightsByTime", null);
|
|
72
87
|
exports.InsightsController = InsightsController = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insights.controller.js","sourceRoot":"","sources":["../../../src/modules/insights/insights.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"insights.controller.js","sourceRoot":"","sources":["../../../src/modules/insights/insights.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8CAAqF;AAErF,gDAAoF;AAGpF,8EAA0E;AAG1E,yDAAqD;AAG9C,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC9B,YAA6B,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAMzD,6BAA6B,CAAC,OAA8B;QACnE,IAAI,CAAC;YACJ,OAAO,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC;QACxF,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,MAAM,IAAI,gCAAc,CAAE,KAAmB,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;IACF,CAAC;IAIK,AAAN,KAAK,CAAC,kBAAkB,CACvB,IAA0B,EAC1B,IAAc,EACP,UAAiC,EAAE,SAAS,EAAE,MAAM,EAAE;QAE7D,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;QAC7E,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;YACpD,kBAAkB,EAAE,wBAAwB,CAAC,YAAY;SACzD,CAAC,CAAC;IACJ,CAAC;IAKK,AAAN,KAAK,CAAC,qBAAqB,CAC1B,IAA0B,EAC1B,IAAc,EACP,OAAqC;QAE5C,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,CAAC;YACnE,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,MAAM;SACtC,CAAC,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC;YACvD,YAAY,EAAE,wBAAwB,CAAC,YAAY;YACnD,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;SACtB,CAAC,CAAC;IACJ,CAAC;IAKK,AAAN,KAAK,CAAC,iBAAiB,CACtB,IAA0B,EAC1B,IAAc,EACP,OAA8B;QAErC,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;QAC7E,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC;YACnD,YAAY,EAAE,wBAAwB,CAAC,YAAY;YACnD,UAAU,EAAE,wBAAwB,CAAC,WAAW;SAChD,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AA7DY,gDAAkB;AAiBxB;IAFL,IAAA,gBAAG,EAAC,UAAU,CAAC;IACf,IAAA,wBAAW,EAAC,eAAe,CAAC;IAI3B,WAAA,kBAAK,CAAA;;6CADA,QAAQ;QACE,iCAAqB;;4DAMrC;AAKK;IAHL,IAAA,gBAAG,EAAC,cAAc,CAAC;IACnB,IAAA,wBAAW,EAAC,eAAe,CAAC;IAC5B,IAAA,qBAAQ,EAAC,6BAA6B,CAAC;IAItC,WAAA,kBAAK,CAAA;;6CADA,QAAQ;QACE,wCAA4B;;+DAW5C;AAKK;IAHL,IAAA,gBAAG,EAAC,UAAU,CAAC;IACf,IAAA,wBAAW,EAAC,eAAe,CAAC;IAC5B,IAAA,qBAAQ,EAAC,6BAA6B,CAAC;IAItC,WAAA,kBAAK,CAAA;;6CADA,QAAQ;QACE,iCAAqB;;2DAOrC;6BA5DW,kBAAkB;IAD9B,IAAA,2BAAc,EAAC,WAAW,CAAC;qCAEmB,kCAAe;GADjD,kBAAkB,CA6D9B"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
+
import type { BaseN8nModule } from '@n8n/decorators';
|
|
1
2
|
import type { ExecutionLifecycleHooks } from 'n8n-core';
|
|
2
3
|
import { InstanceSettings, Logger } from 'n8n-core';
|
|
3
|
-
import type { BaseN8nModule } from '../../decorators/module';
|
|
4
|
-
import { OrchestrationService } from '../../services/orchestration.service';
|
|
5
4
|
import { InsightsService } from './insights.service';
|
|
6
5
|
import './insights.controller';
|
|
7
6
|
export declare class InsightsModule implements BaseN8nModule {
|
|
8
7
|
private readonly logger;
|
|
9
8
|
private readonly insightsService;
|
|
10
9
|
private readonly instanceSettings;
|
|
11
|
-
|
|
12
|
-
constructor(logger: Logger, insightsService: InsightsService, instanceSettings: InstanceSettings, orchestrationService: OrchestrationService);
|
|
10
|
+
constructor(logger: Logger, insightsService: InsightsService, instanceSettings: InstanceSettings);
|
|
13
11
|
initialize(): void;
|
|
14
12
|
registerLifecycleHooks(hooks: ExecutionLifecycleHooks): void;
|
|
13
|
+
startBackgroundProcess(): void;
|
|
14
|
+
stopBackgroundProcess(): void;
|
|
15
15
|
}
|
|
@@ -10,27 +10,21 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.InsightsModule = void 0;
|
|
13
|
+
const decorators_1 = require("@n8n/decorators");
|
|
13
14
|
const n8n_core_1 = require("n8n-core");
|
|
14
|
-
const module_1 = require("../../decorators/module");
|
|
15
|
-
const orchestration_service_1 = require("../../services/orchestration.service");
|
|
16
15
|
const insights_service_1 = require("./insights.service");
|
|
17
16
|
require("./insights.controller");
|
|
18
17
|
let InsightsModule = class InsightsModule {
|
|
19
|
-
constructor(logger, insightsService, instanceSettings
|
|
18
|
+
constructor(logger, insightsService, instanceSettings) {
|
|
20
19
|
this.logger = logger;
|
|
21
20
|
this.insightsService = insightsService;
|
|
22
21
|
this.instanceSettings = instanceSettings;
|
|
23
|
-
this.orchestrationService = orchestrationService;
|
|
24
22
|
this.logger = this.logger.scoped('insights');
|
|
25
23
|
}
|
|
26
24
|
initialize() {
|
|
27
25
|
if (this.instanceSettings.isLeader) {
|
|
28
26
|
this.insightsService.startBackgroundProcess();
|
|
29
27
|
}
|
|
30
|
-
if (this.instanceSettings.isMultiMain) {
|
|
31
|
-
this.orchestrationService.multiMainSetup.on('leader-takeover', () => this.insightsService.startBackgroundProcess());
|
|
32
|
-
this.orchestrationService.multiMainSetup.on('leader-stepdown', () => this.insightsService.stopBackgroundProcess());
|
|
33
|
-
}
|
|
34
28
|
}
|
|
35
29
|
registerLifecycleHooks(hooks) {
|
|
36
30
|
const insightsService = this.insightsService;
|
|
@@ -38,13 +32,30 @@ let InsightsModule = class InsightsModule {
|
|
|
38
32
|
await insightsService.workflowExecuteAfterHandler(this, fullRunData);
|
|
39
33
|
});
|
|
40
34
|
}
|
|
35
|
+
startBackgroundProcess() {
|
|
36
|
+
this.insightsService.startBackgroundProcess();
|
|
37
|
+
}
|
|
38
|
+
stopBackgroundProcess() {
|
|
39
|
+
this.insightsService.stopBackgroundProcess();
|
|
40
|
+
}
|
|
41
41
|
};
|
|
42
42
|
exports.InsightsModule = InsightsModule;
|
|
43
|
+
__decorate([
|
|
44
|
+
(0, decorators_1.OnLeaderTakeover)(),
|
|
45
|
+
__metadata("design:type", Function),
|
|
46
|
+
__metadata("design:paramtypes", []),
|
|
47
|
+
__metadata("design:returntype", void 0)
|
|
48
|
+
], InsightsModule.prototype, "startBackgroundProcess", null);
|
|
49
|
+
__decorate([
|
|
50
|
+
(0, decorators_1.OnLeaderStepdown)(),
|
|
51
|
+
__metadata("design:type", Function),
|
|
52
|
+
__metadata("design:paramtypes", []),
|
|
53
|
+
__metadata("design:returntype", void 0)
|
|
54
|
+
], InsightsModule.prototype, "stopBackgroundProcess", null);
|
|
43
55
|
exports.InsightsModule = InsightsModule = __decorate([
|
|
44
|
-
(0,
|
|
56
|
+
(0, decorators_1.N8nModule)(),
|
|
45
57
|
__metadata("design:paramtypes", [n8n_core_1.Logger,
|
|
46
58
|
insights_service_1.InsightsService,
|
|
47
|
-
n8n_core_1.InstanceSettings
|
|
48
|
-
orchestration_service_1.OrchestrationService])
|
|
59
|
+
n8n_core_1.InstanceSettings])
|
|
49
60
|
], InsightsModule);
|
|
50
61
|
//# sourceMappingURL=insights.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insights.module.js","sourceRoot":"","sources":["../../../src/modules/insights/insights.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,
|
|
1
|
+
{"version":3,"file":"insights.module.js","sourceRoot":"","sources":["../../../src/modules/insights/insights.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,gDAAgF;AAEhF,uCAAoD;AAEpD,yDAAqD;AAErD,iCAA+B;AAGxB,IAAM,cAAc,GAApB,MAAM,cAAc;IAC1B,YACkB,MAAc,EACd,eAAgC,EAChC,gBAAkC;QAFlC,WAAM,GAAN,MAAM,CAAQ;QACd,oBAAe,GAAf,eAAe,CAAiB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAEnD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,UAAU;QAGT,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;QAC/C,CAAC;IACF,CAAC;IAED,sBAAsB,CAAC,KAA8B;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAE7C,KAAK,CAAC,UAAU,CAAC,sBAAsB,EAAE,KAAK,WAAW,WAAW;YACnE,MAAM,eAAe,CAAC,2BAA2B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACJ,CAAC;IAGD,sBAAsB;QACrB,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;IAC/C,CAAC;IAGD,qBAAqB;QACpB,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC;IAC9C,CAAC;CACD,CAAA;AAlCY,wCAAc;AA0B1B;IADC,IAAA,6BAAgB,GAAE;;;;4DAGlB;AAGD;IADC,IAAA,6BAAgB,GAAE;;;;2DAGlB;yBAjCW,cAAc;IAD1B,IAAA,sBAAS,GAAE;qCAGe,iBAAM;QACG,kCAAe;QACd,2BAAgB;GAJxC,cAAc,CAkC1B"}
|
|
@@ -1,42 +1,23 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type InsightsSummary, type InsightsDateRange } from '@n8n/api-types';
|
|
2
2
|
import { Logger } from 'n8n-core';
|
|
3
3
|
import type { ExecutionLifecycleHooks } from 'n8n-core';
|
|
4
4
|
import { type IRun } from 'n8n-workflow';
|
|
5
|
-
import {
|
|
6
|
-
import { InsightsRaw } from '../../modules/insights/database/entities/insights-raw';
|
|
5
|
+
import { License } from '../../license';
|
|
7
6
|
import type { PeriodUnit } from './database/entities/insights-shared';
|
|
8
7
|
import { InsightsByPeriodRepository } from './database/repositories/insights-by-period.repository';
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
workflowId: string;
|
|
12
|
-
workflowName: string;
|
|
13
|
-
};
|
|
8
|
+
import { InsightsCollectionService } from './insights-collection.service';
|
|
9
|
+
import { InsightsCompactionService } from './insights-compaction.service';
|
|
14
10
|
export declare class InsightsService {
|
|
15
|
-
private readonly sharedWorkflowRepository;
|
|
16
11
|
private readonly insightsByPeriodRepository;
|
|
17
|
-
private readonly
|
|
12
|
+
private readonly compactionService;
|
|
13
|
+
private readonly collectionService;
|
|
14
|
+
private readonly license;
|
|
18
15
|
private readonly logger;
|
|
19
|
-
|
|
20
|
-
private compactInsightsTimer;
|
|
21
|
-
private bufferedInsights;
|
|
22
|
-
private flushInsightsRawBufferTimer;
|
|
23
|
-
private isAsynchronouslySavingInsights;
|
|
24
|
-
private flushesInProgress;
|
|
25
|
-
constructor(sharedWorkflowRepository: SharedWorkflowRepository, insightsByPeriodRepository: InsightsByPeriodRepository, insightsRawRepository: InsightsRawRepository, logger: Logger);
|
|
16
|
+
constructor(insightsByPeriodRepository: InsightsByPeriodRepository, compactionService: InsightsCompactionService, collectionService: InsightsCollectionService, license: License, logger: Logger);
|
|
26
17
|
startBackgroundProcess(): void;
|
|
27
18
|
stopBackgroundProcess(): void;
|
|
28
|
-
private startCompactionScheduler;
|
|
29
|
-
private stopCompactionScheduler;
|
|
30
|
-
private startFlushingScheduler;
|
|
31
|
-
private stopFlushingScheduler;
|
|
32
19
|
shutdown(): Promise<void>;
|
|
33
20
|
workflowExecuteAfterHandler(ctx: ExecutionLifecycleHooks, fullRunData: IRun): Promise<void>;
|
|
34
|
-
saveInsightsMetadataAndRaw(insightsRawToInsertBuffer: Set<BufferedInsight>): Promise<void>;
|
|
35
|
-
flushEvents(): Promise<void>;
|
|
36
|
-
compactInsights(): Promise<void>;
|
|
37
|
-
compactRawToHour(): Promise<number>;
|
|
38
|
-
compactHourToDay(): Promise<number>;
|
|
39
|
-
compactDayToWeek(): Promise<number>;
|
|
40
21
|
getInsightsSummary({ periodLengthInDays, }: {
|
|
41
22
|
periodLengthInDays: number;
|
|
42
23
|
}): Promise<InsightsSummary>;
|
|
@@ -53,8 +34,8 @@ export declare class InsightsService {
|
|
|
53
34
|
workflowName: string;
|
|
54
35
|
failed: number;
|
|
55
36
|
projectName: string;
|
|
56
|
-
succeeded: number;
|
|
57
37
|
total: number;
|
|
38
|
+
succeeded: number;
|
|
58
39
|
failureRate: number;
|
|
59
40
|
runTime: number;
|
|
60
41
|
averageRunTime: number;
|
|
@@ -75,5 +56,8 @@ export declare class InsightsService {
|
|
|
75
56
|
timeSaved: number;
|
|
76
57
|
};
|
|
77
58
|
}[]>;
|
|
59
|
+
getAvailableDateRanges(): InsightsDateRange[];
|
|
60
|
+
getMaxAgeInDaysAndGranularity(dateRangeKey: InsightsDateRange['key']): InsightsDateRange & {
|
|
61
|
+
maxAgeInDays: number;
|
|
62
|
+
};
|
|
78
63
|
}
|
|
79
|
-
export {};
|