diff --git a/redisinsight/api/src/modules/database/database.analytics.spec.ts b/redisinsight/api/src/modules/database/database.analytics.spec.ts index bfd2152e19..f728941f1e 100644 --- a/redisinsight/api/src/modules/database/database.analytics.spec.ts +++ b/redisinsight/api/src/modules/database/database.analytics.spec.ts @@ -103,6 +103,7 @@ describe('DatabaseAnalytics', () => { numberedDatabases: mockRedisGeneralInfo.databases, numberOfModules: 0, timeout: mockDatabaseWithTlsAuth.timeout / 1_000, // milliseconds to seconds + databaseIndex: 0, ...DEFAULT_REDIS_MODULES_SUMMARY, }, ); @@ -132,6 +133,7 @@ describe('DatabaseAnalytics', () => { numberedDatabases: mockRedisGeneralInfo.databases, numberOfModules: 0, timeout: mockDatabaseWithTlsAuth.timeout / 1_000, // milliseconds to seconds + databaseIndex: 0, ...DEFAULT_REDIS_MODULES_SUMMARY, }, ); @@ -163,6 +165,45 @@ describe('DatabaseAnalytics', () => { numberedDatabases: undefined, numberOfModules: 2, timeout: mockDatabaseWithTlsAuth.timeout / 1_000, // milliseconds to seconds + databaseIndex: 0, + ...DEFAULT_REDIS_MODULES_SUMMARY, + RediSearch: { + loaded: true, + version: 20000, + }, + customModules: [{ name: 'rediSQL', version: 1 }], + }, + ); + }); + it('should emit event without db index', () => { + const instance = { + ...mockDatabaseWithTlsAuth, + db: 2, + modules: [{ name: 'search', version: 20000 }, { name: 'rediSQL', version: 1 }], + }; + service.sendInstanceAddedEvent(instance, { + version: mockRedisGeneralInfo.version, + }); + + expect(sendEventSpy).toHaveBeenCalledWith( + TelemetryEvents.RedisInstanceAdded, + { + databaseId: instance.id, + connectionType: instance.connectionType, + provider: instance.provider, + useTLS: 'enabled', + verifyTLSCertificate: 'enabled', + useTLSAuthClients: 'enabled', + useSNI: 'enabled', + useSSH: 'disabled', + version: mockRedisGeneralInfo.version, + numberOfKeys: undefined, + numberOfKeysRange: undefined, + totalMemory: undefined, + numberedDatabases: undefined, + numberOfModules: 2, + timeout: mockDatabaseWithTlsAuth.timeout / 1_000, // milliseconds to seconds + databaseIndex: 2, ...DEFAULT_REDIS_MODULES_SUMMARY, RediSearch: { loaded: true, diff --git a/redisinsight/api/src/modules/database/database.analytics.ts b/redisinsight/api/src/modules/database/database.analytics.ts index 8b5e1815a1..7c1a2f6591 100644 --- a/redisinsight/api/src/modules/database/database.analytics.ts +++ b/redisinsight/api/src/modules/database/database.analytics.ts @@ -66,6 +66,7 @@ export class DatabaseAnalytics extends TelemetryBaseService { numberedDatabases: additionalInfo.databases, numberOfModules: instance.modules?.length || 0, timeout: instance.timeout / 1_000, // milliseconds to seconds + databaseIndex: instance.db || 0, ...modulesSummary, }, );