아하, SHOW GN이였네요.
요즘 생태계는 로거를 외부에서 주입받는 형태를 많이 선택하다보니 공감이 안됐던것도 있는 것 같습니다.
설정되지않으면 당연히 작동하지않으니까요.
그래도 지금까지 해당 생태계에 없던 로거 인터페이스기도 하고, 자유도가 높다보니 더 좋은 것 같습니다.
주신 벤치마크 기준의 경우 system call을 제외하고 null output을 출력하다보니
이 부분에 대해서는 내부 로거 형태에 따라서 확실히 다를 수 있다고 생각이되네요.
이 부분에서는 Pino와 세배까지 차이를 가져가는군요. 크
FYI: 추가로 제가 말씀드렸던 외부에서 주입받는 로거의 형태는 Openai Node sdk만 보셔도 로거를 외부에서 주입받아서 출력을 하는 형태라서 쉽게 확인해보실 수 있을 것 같습니다.
아하, 그런 말씀이셨군요. 일단 null output 기준으로 벤치마크를 돌려 봤을 때는 오버헤드가 거의 없다고 볼 수 있겠더라고요. 하지만, 성능적인 오버헤드보다 좀 더 중요하다고 생각했던 건 디폴트 동작이 no-op이냐 아니냐에 있다고 봤습니다. 라이브러리 저자 입장에서는 라이브러리 내에서 로그를 찍더라도 라이브러리를 사용하는 애플리케이션이 실행될 때 멋대로 콘솔이나 파일에 로그가 출력되면 곤란하니까요.