[Ethers js] log level 설정하기

toto9602·2023년 3월 4일
0

Ethers js

목록 보기
1/5

ethers js 라이브러리 사용 중, ethers js에 내장된 Logger가
보고 싶지 않은 로그를 자꾸 콘솔창에 출력해 주는 경우가 있었습니다.

제 경우에는, 여러 개의 ABI 파일을 합치는 과정에서 duplicate definition이 뜨는 경우였는데, 현재는 중복을 제거하는 로직을 추가하는 방향으로 해결하였지만,
Ethers js의 Logger의 log level을 조정하는 것이 필요한 경우가 있을 수 있을 것 같아 기록합니다.

  1. 아래의 코드는 Nest js 프레임워크에 기반하여 작성하였습니다!
  2. ethers js 5.6.9 버전을 사용하였습니다!
import { Injectable, OnModuleInit } from '@nestjs/common';
import { ethers } from 'ethers';
import { Logger } from '@ethersproject/logger';

@Injectable()
export class EthersLoggerSetter implements OnModuleInit {
  onModuleInit() {
    Logger.setLogLevel(ethers.utils.Logger.levels.ERROR);
  }
}

ethers.utils.Logger.levels
DEBUG, INFO, WARNING, ERROR, OFF 총 5개의 값을 갖는 enum 타입이라는 점 외에는,
사실 코드 자체는 한 줄이라 간단했습니다!

다만, Logger@ethersproject/logger에서 import해 와야 정상적으로 작동하는 듯합니다!

profile
주니어 백엔드 개발자입니다! 조용한 시간에 읽고 쓰는 것을 좋아합니다 :)

0개의 댓글