Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- sveltekit
- style
- Spring
- gradle
- Vue
- Shell
- npm
- JUnit
- ubuntu
- Python
- Java
- Test
- vitejs
- vuex
- NextJS
- springboot
- nodejs
- NextJS13
- fetch
- svelte
- loguru
- fastapi
- EUREKA
- Logging
- Vue3
- 오라클
- InteliJ
- d3js
- react
- post
Archives
- Today
- Total
양군의 행복한 이야기
Loguru 로테이션시 파일 이름 지정 본문
loguru는 사용하기 참 편하다
그덕분에 커스텀이 힘들다.
일단 파일을 사이즈 별로 잘라 로테이션시 파일 이름이 지정된다.
기존 파일 이름이 logfile.log 이면 logifle.YYYY-MM-DD_hh-mm-ss_SSSS.log로
이게 맘에 안들어 수정을 하기로 맘을 먹었다.
from loguru import logger
import os
import datetime
def rename_log(filepath):
now = datetime.datetime.now()
pathArr = filepath.split("\\")
fileArr = pathArr[-1].split(".");
nowpath = filepath[:filepath.rfind(pathArr[-1])]
nowfile = fileArr[0] +"."+ fileArr[-1]+"."+now.strftime('%H%M%S')
os.rename(filepath, nowpath+nowfile)
logger.add(
log_path + "logfile.log",
rotation="0.01 MB",
level="DEBUG",
compression=rename_log
)
compression은 기본적으로 zip등의 값을 넣어서 암축을 하는데 로테이션시 이름을 변경 하는 용도로도 가능하다.