Skip to main content

A logging library package built with Loguru

Project description

logging-hj3415 README

logging-hj3415loguru 기반 공통 로깅 라이브러리입니다.
애플리케이션 시작 시 로깅을 한 번 설정하고(setup_logging), 이후 모든 모듈에서 동일한 logger를 사용하도록 만드는 목적의 패키지입니다.

pyproject.toml 기준 정보:

  • 패키지명: logging-hj3415
  • 버전: 1.0.4
  • Python: >=3.11
  • 빌드 백엔드: flit_core
  • 의존성: loguru>=0.7

1. 프로젝트의 기능 설명

이 패키지가 제공하는 핵심 기능은 4가지입니다.

  • setup_logging(...): 콘솔/파일 sink를 한 번만 초기화
  • logger: 어디서나 바로 import 해서 사용하는 공용 logger
  • reset_logging(...), current_log_level(): 런타임 로그레벨 제어
  • to_pretty_json(...): dict, pydantic, dataclass 등을 보기 좋은 JSON 문자열로 변환

권장 패턴:

  1. 앱 진입점(main.py, cli/app.py)에서 setup_logging() 1회 호출
  2. 서비스/도메인/어댑터 레이어에서는 from logging_hj3415 import logger만 사용

2. 프로젝트 구조 설명

logging-hj3415/
├─ pyproject.toml
└─ src/logging_hj3415/
   ├─ __init__.py      # 외부 공개 API(logger, setup_logging 등)
   ├─ _setup.py        # 로깅 설정/재설정 구현
   ├─ pretty.py        # pretty JSON 유틸리티
   └─ py.typed         # typing 지원 표시

각 파일 역할:

  • __init__.py: 패키지 사용자가 import 하는 진입점
  • _setup.py: LOG_LEVEL, LOG_FILE 반영 및 sink 구성
  • pretty.py: 로깅/디버깅용 JSON 문자열 포맷 변환

3. 다른 프로젝트에서 임포트해서 사용하는 예시

설치:

python -m pip install logging-hj3415

애플리케이션 진입점 예시:

from logging_hj3415 import setup_logging, logger

setup_logging()  # 앱 시작 시 1회
logger.info("애플리케이션 시작")

파일 로그 포함 예시:

from logging_hj3415 import setup_logging, logger

setup_logging(level="INFO", log_file="logs/app.log")
logger.warning("파일 로그도 함께 기록됩니다.")

다른 모듈에서 재사용:

from logging_hj3415 import logger

def run_job() -> None:
    logger.info("배치 작업 시작")

to_pretty_json 예시:

from logging_hj3415 import logger, to_pretty_json

payload = {"code": "005930", "result": {"ok": True}}
logger.info("result=\n{}", to_pretty_json(payload))

4. 환경변수 설정 예시

_setup.py에서 읽는 환경변수:

  • LOG_LEVEL: 로그 레벨 (DEBUG, INFO, WARNING, ERROR 등)
  • LOG_FILE: 파일 로그 경로 (선택)

예시:

LOG_LEVEL=DEBUG
LOG_FILE=logs/app.log

동작 우선순위:

  1. 환경변수(LOG_LEVEL, LOG_FILE)
  2. setup_logging(level=..., log_file=...) 인자
  3. 기본값(INFO, 파일 출력 없음)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

logging_hj3415-1.0.5.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

logging_hj3415-1.0.5-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file logging_hj3415-1.0.5.tar.gz.

File metadata

  • Download URL: logging_hj3415-1.0.5.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.5

File hashes

Hashes for logging_hj3415-1.0.5.tar.gz
Algorithm Hash digest
SHA256 f8fc5b0c9ec92148a3c1b684f894b8d1d017a74ebb5e177f651ca55fb3455851
MD5 9cf55fbdbf8d65adace3d788f98026bb
BLAKE2b-256 35f97f0b1dea150d6748313f527ed36fa127a4bf70ea64889f534bb7e8cab9a6

See more details on using hashes here.

File details

Details for the file logging_hj3415-1.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for logging_hj3415-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 0dba8c86042f2db1e92399d923ef546cc5289681d784c6b530dc761d403a2f8e
MD5 c6ca33cdc5f69d78dae55bebe9803384
BLAKE2b-256 e5d8a1c48db0a0bbec74317977dbaf6d8239ac6c41f734e8ea950d13d7d8f182

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page