Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
437e45b
feat(api): Add ClickHouse data seeding scripts and materialized view …
djabarovgeorge Jan 8, 2026
844f5f9
refactor(analytic-logs): Remove unused WorkflowRunOptimizeCronService…
djabarovgeorge Jan 11, 2026
038e027
refactor(analytic-logs): Replace TraceLogRepository with MessageSentC…
djabarovgeorge Jan 11, 2026
2fc70fe
feat(analytic-logs): Implement feature flag logic for message deliver…
djabarovgeorge Jan 11, 2026
6269f12
refactor(analytic-logs): Rename method for fetching message delivery …
djabarovgeorge Jan 11, 2026
8bacfe5
refactor(analytic-logs): Remove MessageSentCountsRepository as it is …
djabarovgeorge Jan 11, 2026
f35251e
refactor(analytic-logs): Replace MessageSentCountsRepository with Wor…
djabarovgeorge Jan 11, 2026
2bb1208
feat(analytic-logs): Add new method for average messages per subscrib…
djabarovgeorge Jan 11, 2026
0eb0e1f
feat(activity): Implement provider volume data retrieval
djabarovgeorge Jan 11, 2026
7dfb2d5
refactor(vscode): Update settings to exclude additional build artifac…
djabarovgeorge Jan 12, 2026
49559ae
feat(activity): Integrate feature flag logic for interaction trend an…
djabarovgeorge Jan 12, 2026
971585c
feat(activity): Enhance delivery trend chart with feature flag integr…
djabarovgeorge Jan 12, 2026
7073aaf
feat(activity): Integrate feature flag logic for workflow volume data…
djabarovgeorge Jan 12, 2026
2fb6a67
refactor(analytic-logs): Remove InteractionCountsRepository and relat…
djabarovgeorge Jan 12, 2026
6897c70
refactor(analytic-logs): Remove WorkflowVolumeCounts and related comp…
djabarovgeorge Jan 12, 2026
6325722
refactor(analytic-logs): Remove deprecated SQL migrations for workflo…
djabarovgeorge Jan 12, 2026
e04aa3b
refactor(activity): update feature flag keys for various charts
djabarovgeorge Jan 13, 2026
2f671ca
feat(analytic-logs): Add provider_id column to traces table and updat…
djabarovgeorge Jan 13, 2026
0cbd9f6
refactor(analytic-logs): Replace ProviderVolumeCounts with WorkflowAc…
djabarovgeorge Jan 13, 2026
c7a96d8
refactor(analytic-logs): Rename WorkflowActivityCounts to TraceRollup…
djabarovgeorge Jan 13, 2026
6285055
feat: update hash
djabarovgeorge Jan 13, 2026
c24394d
Merge branch 'next' into wip-improve-pref-usage-2
djabarovgeorge Jan 13, 2026
618db5c
refactor(activity): update feature flag keys for various charts to an…
djabarovgeorge Jan 13, 2026
b281e92
feat(analytics): add provider_id column to traces table and update re…
djabarovgeorge Jan 13, 2026
b83443b
fix(clickhouse-seeder): update trace event type selection logic and a…
djabarovgeorge Jan 13, 2026
86e3791
refactor(analytics): update trace rollup table and materialized view …
djabarovgeorge Jan 13, 2026
f67b588
fix(analytic-logs): change provider_id type to non-nullable string in…
djabarovgeorge Jan 13, 2026
b51bfa2
refactor(analytics): reorder columns in trace rollup table and schema…
djabarovgeorge Jan 14, 2026
80d4bce
chore: update hash to next
djabarovgeorge Jan 14, 2026
9b61f6c
chore: update hash to next
djabarovgeorge Jan 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
refactor(analytic-logs): Remove InteractionCountsRepository and relat…
…ed SQL migration

- Deleted InteractionCountsRepository and its associated SQL migration for interaction counts.
- Updated use cases to utilize WorkflowActivityCountsRepository for interaction trend and total interactions data retrieval.
- Adjusted shared module to remove InteractionCountsRepository references.
  • Loading branch information
djabarovgeorge committed Jan 12, 2026
commit 2fb6a67270285453eb46044720f3c6eaca6b5b5b
30 changes: 0 additions & 30 deletions apps/api/migrations/clickhouse-migrations/5_interaction_counts.sql

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
-- Unified workflow activity counts migration
-- Merges interaction_counts functionality into workflow_activity_counts
-- Adds event_type column to track both message_sent and interaction events

-- Drop existing materialized views
DROP VIEW IF EXISTS workflow_activity_counts_mv;
DROP VIEW IF EXISTS interaction_counts_mv;

-- Drop existing tables
DROP TABLE IF EXISTS workflow_activity_counts;
DROP TABLE IF EXISTS interaction_counts;

-- Create unified workflow activity counts table with event_type
CREATE TABLE IF NOT EXISTS workflow_activity_counts (
date Date,
organization_id String,
environment_id String,
workflow_id String,
external_subscriber_id String DEFAULT '',
event_type LowCardinality(String),
count UInt64
)
ENGINE = SummingMergeTree(count)
PARTITION BY toYYYYMM(date)
ORDER BY (organization_id, environment_id, workflow_id, date, external_subscriber_id, event_type);

-- Materialized view populates from traces table
-- Captures both message_sent events and interaction events
CREATE MATERIALIZED VIEW IF NOT EXISTS workflow_activity_counts_mv
TO workflow_activity_counts
AS SELECT
toDate(created_at) AS date,
organization_id,
environment_id,
ifNull(workflow_id, '') AS workflow_id,
ifNull(external_subscriber_id, '') AS external_subscriber_id,
event_type,
1 AS count
FROM traces
WHERE event_type IN ('message_sent', 'message_seen', 'message_read', 'message_snoozed', 'message_archived');
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common';
import {
FeatureFlagsService,
InstrumentUsecase,
InteractionCountsRepository,
PinoLogger,
TraceLogRepository,
WorkflowActivityCountsRepository,
} from '@novu/application-generic';
import { FeatureFlagsKeysEnum } from '@novu/shared';
import { InteractionTrendDataPointDto } from '../../dtos/get-charts.response.dto';
Expand All @@ -13,7 +13,7 @@ import { BuildInteractionTrendChartCommand } from './build-interaction-trend-cha
@Injectable()
export class BuildInteractionTrendChart {
constructor(
private interactionCountsRepository: InteractionCountsRepository,
private workflowActivityCountsRepository: WorkflowActivityCountsRepository,
private traceLogRepository: TraceLogRepository,
private featureFlagsService: FeatureFlagsService,
private logger: PinoLogger
Expand Down Expand Up @@ -46,7 +46,7 @@ export class BuildInteractionTrendChart {
const useNewQuery = isGlobalEnabled || isDedicatedEnabled;

const traces = useNewQuery
? await this.interactionCountsRepository.getInteractionTrendData(
? await this.workflowActivityCountsRepository.getInteractionTrendData(
environmentId,
organizationId,
startDate,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ import { Injectable } from '@nestjs/common';
import {
FeatureFlagsService,
InstrumentUsecase,
InteractionCountsRepository,
PinoLogger,
TraceLogRepository,
WorkflowActivityCountsRepository,
} from '@novu/application-generic';
import { FeatureFlagsKeysEnum } from '@novu/shared';
import { TotalInteractionsDataPointDto } from '../../dtos/get-charts.response.dto';
Expand All @@ -13,7 +13,7 @@ import { BuildTotalInteractionsChartCommand } from './build-total-interactions-c
@Injectable()
export class BuildTotalInteractionsChart {
constructor(
private interactionCountsRepository: InteractionCountsRepository,
private workflowActivityCountsRepository: WorkflowActivityCountsRepository,
private traceLogRepository: TraceLogRepository,
private featureFlagsService: FeatureFlagsService,
private logger: PinoLogger
Expand Down Expand Up @@ -50,7 +50,7 @@ export class BuildTotalInteractionsChart {
const useNewQuery = isGlobalEnabled || isDedicatedEnabled;

const result = useNewQuery
? await this.interactionCountsRepository.getTotalInteractionsCount(
? await this.workflowActivityCountsRepository.getTotalInteractionsCount(
environmentId,
organizationId,
startDate,
Expand Down
2 changes: 0 additions & 2 deletions apps/api/src/app/shared/shared.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ import {
ExecuteBridgeRequest,
featureFlagsService,
GetDecryptedSecretKey,
InteractionCountsRepository,
InvalidateCacheService,
LoggerModule,
ProviderVolumeCountsRepository,
Expand Down Expand Up @@ -127,7 +126,6 @@ const ANALYTICS_PROVIDERS = [
WorkflowRunRepository,
WorkflowActivityCountsRepository,
ProviderVolumeCountsRepository,
InteractionCountsRepository,
DeliveryTrendCountsRepository,
WorkflowVolumeCountsRepository,

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
export { createClient as createClickHouseClient } from '@clickhouse/client';
export * from './clickhouse.service';
export * from './delivery-trend-counts';
export * from './interaction-counts';
export * from './log.repository';
export * from './provider-volume-counts';
export * from './request-log';
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

Loading