Go에서 파일에 로그 쓰기
표준 Go 로깅 패키지를 사용하여 파일에 로그를 쓰려고 하면 사용자에게 문제가 발생할 수 있습니다. 로그 파일이 생성되었지만 비어 있는 상태로 유지됩니다. 이 문제를 해결하려면 로그를 파일에 기록하는 올바른 접근 방식을 이해하는 것이 중요합니다.
제공된 코드에서 다음을 포함하여 여러 접근 방식을 시도했습니다.
그러나 os.Open("logfile")이 파일을 읽기 전용으로 열기 때문에 이러한 방법은 모두 실패했습니다. , 로그 작성에 적합하지 않습니다.
올바른 접근 방식은 os.OpenFile("testlogfile", os.O_RDWR | os.O_CREATE | os.O_APPEND, 0666). 그러면 읽기 및 쓰기용으로 파일이 열리고 로그를 파일에 추가할 수 있습니다.
이 줄을 추가하고 로그 출력을 파일에 설정하면 Go에서 파일에 로그를 성공적으로 쓸 수 있습니다.
f, err := os.OpenFile("testlogfile", os.O_RDWR | os.O_CREATE | os.O_APPEND, 0666) if err != nil { log.Fatalf("error opening file: %v", err) } defer f.Close() log.SetOutput(f) log.Println("This is a test log entry")
위 내용은 내 Go 로그가 파일에 기록되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!