Skip to main content

logging-hj3415 README

logging-hj3415는 loguru 기반 공통 로깅 라이브러리입니다.
애플리케이션 시작 시 로깅을 한 번 설정하고(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, 파일 출력 없음)

Metadata

Release files for logging-hj3415 1.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for logging-hj3415 1.0.6
File Size Uploaded
logging_hj3415-1.0.6.tar.gz 5.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for logging-hj3415 1.0.6
File Interpreter ABI Platform
logging_hj3415-1.0.6-py3-none-any.whl Python 3 none any Details

Total release size: 10.9 kB

Release files / logging_hj3415-1.0.6.tar.gz

Download URL logging_hj3415-1.0.6.tar.gz
Size 5.0 kB
Tags Source
SHA-256 checksum
How to use checksums
074fa2294a63cdee8b82d65b37fc19dfb025dbe7e8ade77843b6918744498dd3
BLAKE2b-256 checksum
How to use checksums
60bfaf41bdc2a569808e5628902a1a2d9c06d8113a2fcdca8df67c4ce296b58f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.32.5

Release files / logging_hj3415-1.0.6-py3-none-any.whl

Download URL logging_hj3415-1.0.6-py3-none-any.whl
Size 5.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2a58142cf8a3847b026ba929527af9e2dde4143a53e705e80f75f9db1f7c91a2
BLAKE2b-256 checksum
How to use checksums
e8130e5bcbb2adfb5c938d3200d57d296c0527252cb6f04eb78e2c4b324cb7ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.32.5

Release history Release notifications | RSS feed

This release

1.0.6 This release

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page