"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > LogTape: 제대로 작동하는 JavaScript를 위한 제로 종속성 로깅

LogTape: 제대로 작동하는 JavaScript를 위한 제로 종속성 로깅

2024-09-01에 게시됨
검색:114

LogTape: Zero-Dependency Logging for JavaScript That Just Works

안녕하세요, 동료 개발자 여러분! ? 전체 프로젝트보다 더 많은 종속성을 갖고 있는 것처럼 보이는 복잡한 로깅 라이브러리와 씨름하는 데 지치셨나요? 강력하면서도 사용하기 쉬운 로깅 솔루션을 꿈꾸시나요? 좋아하는 음료를 들고 편안하게 쉬세요. 여러분의 삶을 훨씬 더 쉽게 만들어 줄 로깅 라이브러리인 LogTape을 소개하려고 합니다!

로그테이프란 무엇인가요?

LogTape는 모든 JavaScript 환경에서 로깅을 간단하고 유연하며 번거롭지 않게 만드는 한 가지 목표를 염두에 두고 설계된 JavaScript 및 TypeScript용 빛나는 새 로깅 라이브러리입니다. Deno, Node.js, Bun, 엣지 기능 또는 브라우저용 애플리케이션을 구축하는 경우 LogTape이 모든 것을 지원합니다.

왜 관심을 가져야 합니까?

솔직히 말해서, 로깅은 모든 프로젝트에 필요한 것 중 하나이지만 쇼의 스타가 되는 경우는 거의 없습니다. LogTape은 로깅의 모든 핵심적인 세부 사항을 처리하므로 사용자는 정말 중요한 일, 즉 멋진 코드 작성에 집중할 수 있습니다.

LogTape가 툴킷에 포함되어야 하는 이유는 다음과 같습니다.

  1. 의존성 제로: 맞습니다, 제로입니다. 나다. 제로. LogTape은 자체적으로 두 발로 서 있으므로 더 이상 의존하지 않아도 됩니다!

  2. 런타임 다양성: 어디에서나 동일한 로깅 코드를 사용합니다. Deno, Node.js, Bun, 엣지 기능, 브라우저 - LogTape은 이들 모두와 잘 작동합니다.

  3. 구조화된 로깅: 쉬운 구문 분석 및 분석을 위해 구조화된 데이터로 메시지를 기록합니다.

  4. 계층적 카테고리: 계층적 카테고리 시스템으로 로그를 구성하여 로그의 자세한 정도를 세밀하게 제어할 수 있습니다.

  5. 템플릿 리터럴 지원: 로그 메시지에 익숙한 템플릿 리터럴을 사용합니다. 다음과 같이 쉽습니다:

     logger.info`Hello, ${username}! Welcome to LogTape.`;
    
  6. Dead Simple Sinks: 나만의 사용자 정의 로그 대상을 추가하고 싶으신가요? LogTape을 사용하면 간편해집니다!

코드를 보여주세요!

좋아, LogTape이 어떻게 작동하는지 살펴보겠습니다. 먼저 설정해야 합니다(걱정하지 마세요. 매우 쉽습니다):

import { configure, getConsoleSink } from "@logtape/logtape";

await configure({
  sinks: { console: getConsoleSink() },
  filters: {},
  loggers: [
    { category: "my-awesome-app", level: "debug", sinks: ["console"] }
  ]
});

이제 로깅을 수행해 보겠습니다.

import { getLogger } from "@logtape/logtape";

const logger = getLogger(["my-awesome-app", "user-service"]);

export function greetUser(username: string): void {
  logger.debug`Preparing to greet ${username}`;
  logger.info`Hello, ${username}! Welcome to our awesome app.`;
}

그렇습니다! 깔끔하고 간단하며 강력한 로깅을 손쉽게 수행할 수 있습니다.

하지만 더 많은 것이 있습니다!

LogTape은 단순한 기본 로깅이 아닙니다. 눈에 띄는 기능이 가득합니다:

  • 유연한 싱크 시스템: 콘솔, 파일에 기록하거나 사용자 정의 싱크를 생성할 수도 있습니다.
  • 파일 로그 회전: 로그 파일을 자동으로 회전하여 깔끔하게 유지합니다.
  • 세밀한 필터링: 기록되는 내용과 위치를 정확하게 제어합니다.
  • 성능 중심: 비용이 많이 드는 계산을 기록해야 할 때를 위한 지연 평가 옵션입니다.

시작하기

LogTape를 시험해 볼 준비가 되셨나요? 다음과 같이 쉽습니다:

데노의 경우:

deno add @logtape/logtape

Node.js의 경우:

npm add @logtape/logtape

번의 경우:

bun add @logtape/logtape

마무리

LogTape는 여러분이 기다려 왔던 로깅 라이브러리입니다. 빠른 프로젝트를 위해 간단하고, 복잡한 애플리케이션을 위해 강력하며, 필요에 따라 확장할 수 있을 만큼 유연합니다. 이제 골치 아픈 로깅 작업에 작별을 고하고 LogTape을 만나보세요!

한 번 사용해 보시고 의견을 알려주세요. 모두 즐거운 로깅을 즐겨보세요! ??


LogTape을 사용해 보셨나요? 가장 좋아하는 기능은 무엇입니까? 아래 댓글로 알려주세요!

릴리스 선언문 이 글은 https://dev.to/hongminhee/logtape-zero-dependent-logging-for-javascript-that-just-works-4985?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]으로 문의하시기 바랍니다. 그것을 삭제하려면
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3