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.6.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.6-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: logging_hj3415-1.0.6.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.6.tar.gz
Algorithm Hash digest
SHA256 074fa2294a63cdee8b82d65b37fc19dfb025dbe7e8ade77843b6918744498dd3
MD5 0c78b2e2fbeda4a98973a9bbad3cd88c
BLAKE2b-256 60bfaf41bdc2a569808e5628902a1a2d9c06d8113a2fcdca8df67c4ce296b58f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for logging_hj3415-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 2a58142cf8a3847b026ba929527af9e2dde4143a53e705e80f75f9db1f7c91a2
MD5 878dbd6fd6d8cbf8796aa06a39ad2c55
BLAKE2b-256 e8130e5bcbb2adfb5c938d3200d57d296c0527252cb6f04eb78e2c4b324cb7ec

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