[go] log 패키지를 이용한 로깅과 동시에 작업 로깅
Golang은 log 패키지를 통해 간단하게 로깅을 할 수 있는 기능을 제공합니다. 이 블로그 포스트에서는 log 패키지의 기초적인 사용법과 동시에 작업 로깅에 대해 알아보겠습니다.
로그 레벨
Golang의 log 패키지에서는 세 가지 로그 레벨을 제공합니다:
- Println: 일반적인 로깅에 사용됩니다.
- Fatal: 로깅 후 프로그램이 종료됩니다.
- Panic: 로깅 후 패닉이 발생하며 프로그램이 중단됩니다.
이제 각 레벨을 어떻게 사용하는지 살펴보겠습니다.
package main
import (
"log"
)
func main() {
log.Println("이것은 Println 로그입니다.")
log.Fatal("이것은 Fatal 로그입니다.")
log.Panic("이것은 Panic 로그입니다.")
}
로그에 날짜 및 시간 포함
로그에 날짜와 시간 정보를 추가하고 싶을 때는 log 패키지의 DefaultLogger를 직접 수정하여 사용할 수 있습니다.
package main
import (
"log"
"os"
)
func main() {
log.SetFlags(log.LstdFlags)
log.Println("현재 시간을 포함한 로그입니다.")
}
파일로 로그 기록
로그를 파일로 기록할 수도 있습니다. 아래 예제는 log 파일을 생성하고, 해당 파일에 로그를 기록하는 방법을 보여줍니다.
package main
import (
"log"
"os"
)
func main() {
file, err := os.Create("app.log")
if err != nil {
log.Fatal(err)
}
defer file.Close()
log.SetOutput(file)
log.Println("파일로 로그를 기록합니다.")
}
로그 기록이 필요한 상황에서 Golang의 log 패키지를 사용하여 효과적으로 로깅할 수 있습니다. 추가적으로, 필요에 따라 작업 로깅에 대해 고려해 보시기 바랍니다.