@makecode/logging-manager
v1.0.3
Published
로그 관리
Downloads
128
Readme
@makecode/logging-manager
간단하고 커스터마이즈 가능한 JavaScript/TypeScript용 로깅 유틸리티입니다. 로그 레벨, 출력 함수 및 로그 그룹을 쉽게 관리할 수 있도록 설계되었습니다.
설치
npm을 사용하여 패키지를 설치하세요:
npm install @makecode/logging-manager
또는 Yarn을 사용하여 설치하세요:
yarn add @makecode/logging-manager
사용법
프로젝트에서 logger를 임포트합니다:
import { LOG_LEVEL, LOG_GROUP_KEY, logger } from '@makecode/logging-manager';
기본 로깅 예제
특정 로그 레벨 사용
logger(LOG_LEVEL.ERROR, console.debug, 'test1', 'test-1');
logger(LOG_LEVEL.WARN)(console.log)('test2', 'test-2');
미리 정의된 로깅 메서드 사용
logger.error('test5', 'test-5');
logger.warn('test6', 'test-6');
logger.info('test7', 'test-7');
logger.debug('test8', 'test-8');
간단한 로그 출력
logger('test4', 'test-4');
고급 기능
그룹화된 로그
LOG_GROUP_KEY
파라미터를 사용하여 로그를 그룹화할 수 있습니다. 지정된 그룹에 속한 로그만 출력됩니다.
?logGroup=${로그필터값}
예를 들어 https://www.test.com?logGroup=test 해당 그룹에 해당하는 로그만 출력
logger({ level: LOG_LEVEL.WARN, [LOG_GROUP_KEY]: LOG_LEVEL.WARN })(
`로그 그룹: "${LOG_LEVEL.WARN}"`,
);
logger({ level: LOG_LEVEL.ERROR, [LOG_GROUP_KEY]: 'test' })(
'로그 그룹: "test"',
);
재사용 가능한 로거
재사용 가능한 로거 인스턴스를 생성할 수 있습니다:
const log = logger(LOG_LEVEL.WARN)(console.log);
log('로그 메시지 1');
log('로그 메시지 2', '추가 정보');
React에서 사용 예제
@makecode/logging-manager
를 React 컴포넌트에서 사용하는 예제입니다:
import { useEffect } from 'react';
import { LOG_LEVEL, LOG_GROUP_KEY, logger } from '@makecode/logging-manager';
const LogTest = () => {
useEffect(() => {
logger(LOG_LEVEL.ERROR, console.debug, 'test1', 'test-1');
logger(LOG_LEVEL.WARN)(console.log)('test2', 'test-2');
logger(console.warn)('test3', 'test-3');
logger('test4', 'test-4');
logger.error('test5', 'test-5');
logger.warn('test6', 'test-6');
logger.info('test7', 'test-7');
logger.debug('test8', 'test-8');
logger({ level: LOG_LEVEL.WARN, [LOG_GROUP_KEY]: LOG_LEVEL.WARN })(
`로그 그룹: "${LOG_LEVEL.WARN}"`,
);
logger({ level: LOG_LEVEL.ERROR, [LOG_GROUP_KEY]: 'test' })(
'로그 그룹: "test"',
);
const log = logger(LOG_LEVEL.WARN)(console.log);
log('로그 메시지 1');
log('로그 메시지 2', '추가 정보');
}, []);
return <></>;
};
export default LogTest;
API
logger
파라미터
- level (선택): 로그 레벨 (예:
LOG_LEVEL.ERROR
,LOG_LEVEL.WARN
등). - logFunction (선택): 커스텀 로그 출력 함수 (예:
console.log
,console.error
). - logGroup (선택): 로그 그룹을 지정하여 그룹화된 로그를 관리.
- payload: 추가로 출력할 데이터.
LOG_LEVEL
사용 가능한 로그 레벨:
LOG_LEVEL.FATAL
LOG_LEVEL.ERROR
LOG_LEVEL.WARN
LOG_LEVEL.INFO
LOG_LEVEL.DEBUG
LOG_GROUP_KEY
로그를 그룹화하여 필터링할 때 사용하는 키.
라이선스
MIT