From 49157f1a8633f235c0ef82a08e16cb458b528a40 Mon Sep 17 00:00:00 2001 From: Hanna922 Date: Mon, 5 Feb 2024 21:02:56 +0900 Subject: [PATCH] feat: modify Logger.ts type & naming --- src/Logger.ts | 47 +++++++++++++++-------------------------------- 1 file changed, 15 insertions(+), 32 deletions(-) diff --git a/src/Logger.ts b/src/Logger.ts index 21974b7..f8225c2 100644 --- a/src/Logger.ts +++ b/src/Logger.ts @@ -1,8 +1,8 @@ -import { LogPayloadParams, LogType, LoggerType } from './types/LogType'; +import { LogPayloadParams } from './types/LogType'; -const createUserId = () => { - // Todo: create random id - return 123; +const createHashedId = (userId: string) => { + // Todo: create hashedId + return ''; }; const createTimestamp = () => { @@ -11,50 +11,33 @@ const createTimestamp = () => { return now.toISOString(); }; -const setLocalStorage = (logger: LogType) => { - if (window.localStorage.getItem('yls-web') == undefined) { - const list: any[] = []; - list.push(logger); - localStorage.setItem('yls-web', JSON.stringify(list)); - } else { - const remainList: any[] = JSON.parse(localStorage.getItem('yls-web') as string) || []; - const updateList = [...remainList, logger]; - localStorage.setItem('yls-web', JSON.stringify(updateList)); - } -}; - export const useYLSLogger = () => { - const screen = ({ serviceName, name }: LogPayloadParams) => { - //사용자에서 path,name,message를 넣어줌 - const loggerType: LoggerType = { + const screen = ({ userId, name }: LogPayloadParams) => { + //사용자에서 userId, name, message(선택) 등을 넣어줌 + const loggerType: LogPayloadParams = { + userId: userId, path: '/', serviceName: 'home', name: '', message: '/', }; const logger = Logger(loggerType); - console.log(`Logging screen information for path: ${serviceName}`); logger.event.name = name; - - setLocalStorage(logger); }; - const click = ({ name }: LogPayloadParams) => { - console.log(`Logging click information for button: ${name}`); - //사용자에서 path,name,message를 넣어줌 - const loggerType: LoggerType = { + const click = ({ userId, name }: LogPayloadParams) => { + //사용자에서 userId, name, message(선택) 등을 넣어줌 + const loggerType: LogPayloadParams = { + userId: userId, path: '/', serviceName: 'home', name: '', message: '/', }; const logger = Logger(loggerType); - + console.log(`Logging click information for button: ${name}`); logger.event.name = name; - - setLocalStorage(logger); }; - // todo: 로컬스토리지 로그 개수가 10개 넘어가면 postLog.ts호출 return { screen, @@ -62,9 +45,9 @@ export const useYLSLogger = () => { }; }; -export const Logger = ({ serviceName, name, message, path, tags }: LoggerType) => { +export const Logger = ({ userId, serviceName, name, message, path, tags }: LogPayloadParams) => { return { - userId: createUserId(), + hashedId: createHashedId(userId), timestamp: createTimestamp(), event: { platform: 'web',