Skip to content

Commit 403775f

Browse files
authored
Merge pull request #4148 from RedisInsight/CR-274
CR-274: Add correlation ID to session metadata
2 parents f68381d + a9c96a6 commit 403775f

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

redisinsight/api/src/common/decorators/session/session-metadata.decorator.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { v4 as uuidv4 } from 'uuid';
12
import { BadRequestException, createParamDecorator, ExecutionContext } from '@nestjs/common';
23
import { plainToClass } from 'class-transformer';
34
import { Validator } from 'class-validator';
@@ -9,10 +10,12 @@ const validator = new Validator();
910
export const sessionMetadataFromRequest = (request: Request): SessionMetadata => {
1011
const userId = request.res?.locals?.session?.data?.userId.toString();
1112
const sessionId = request.res?.locals?.session?.data?.sessionId.toString();
13+
const correlationId = request.res?.locals?.session?.correlationId || uuidv4();
1214

1315
const requestSession = {
1416
userId,
1517
sessionId,
18+
correlationId,
1619
};
1720

1821
// todo: do not forget to deal with session vs sessionMetadata property

redisinsight/api/src/common/models/session.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ export class SessionMetadata implements ISessionMetadata {
2323
@IsString()
2424
uniqueId?: string;
2525

26+
@IsOptional()
27+
@IsString()
28+
correlationId?: string;
29+
2630
/**
2731
* Validates session metadata required properties to be defined
2832
* Must be used in all the places that works with clients

0 commit comments

Comments
 (0)