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 해서 사용하는 공용 loggerreset_logging(...),current_log_level(): 런타임 로그레벨 제어to_pretty_json(...): dict, pydantic, dataclass 등을 보기 좋은 JSON 문자열로 변환
권장 패턴:
- 앱 진입점(
main.py,cli/app.py)에서setup_logging()1회 호출 - 서비스/도메인/어댑터 레이어에서는
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
동작 우선순위:
- 환경변수(
LOG_LEVEL,LOG_FILE) setup_logging(level=..., log_file=...)인자- 기본값(
INFO, 파일 출력 없음)
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)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
074fa2294a63cdee8b82d65b37fc19dfb025dbe7e8ade77843b6918744498dd3
|
|
| MD5 |
0c78b2e2fbeda4a98973a9bbad3cd88c
|
|
| BLAKE2b-256 |
60bfaf41bdc2a569808e5628902a1a2d9c06d8113a2fcdca8df67c4ce296b58f
|
File details
Details for the file logging_hj3415-1.0.6-py3-none-any.whl.
File metadata
- Download URL: logging_hj3415-1.0.6-py3-none-any.whl
- Upload date:
- Size: 5.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
python-requests/2.32.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a58142cf8a3847b026ba929527af9e2dde4143a53e705e80f75f9db1f7c91a2
|
|
| MD5 |
878dbd6fd6d8cbf8796aa06a39ad2c55
|
|
| BLAKE2b-256 |
e8130e5bcbb2adfb5c938d3200d57d296c0527252cb6f04eb78e2c4b324cb7ec
|