레이블이 Fatalf 에러 위치 Log 체크인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Fatalf 에러 위치 Log 체크인 게시물을 표시합니다. 모든 게시물 표시

20241224

Fatalf 에러 위치, Log 체크 - Golang

Log 체크 방법으로, 에러 위치 체크 방법- Fatalf

- 프로그래밍 하다 보면, 가끔 어디서 오류가 났나, 데이타가 잘 전달 되었나, 체크하고 싶을때, 메시지 팝업이나, Log 체크를 할 경우, Fatalf 를 사용시 편리할거 같아서 기록합니다.

- 에러를 보고하고, 프로그램을 종료합니다.

log.Fatalf는 포맷 문자열을 지원하는 log 함수입니다.

- 여러 변수를 추가하고, 출력할수 있습니다.

- log.Fatal은 에러만 보고합니다.

- import "log" // log 패키지가 필요합니다.

%v 기본 형식 출력 log.Fatalf("%v", err)

%s 문자열 출력 log.Fatalf("%s", fname)

%d 정수 출력 log.Fatalf("%d", Number)

%f 실수 출력 log.Fatalf("%f", pi)

%t Boolean 출력 log.Fatalf("%t", isErr)

%+v 상세한 구조체 출력 log.Fatalf("%+v", myStruct)

log.Fatalf("%v: 이런 문제로 여기쯤 에러 발생", aaa변수)

log.Fatal(fmt.Sprintf("%v: 여기쯤 값이 이러네", err))

 Sprintf- 문자열 출력말고, 포맷팅을 위해 사용되는 Go의 내장 함수- 포맷팅된 문자열을 반환

 예제]  result := fmt.Sprintf("이름: %s, 나이: %d", name, age)


%s 문자열 "Hello""Hello"

%d 10진수 정수 42"42"

%f 부동소수점 실수 3.14"3.140000"

%.nf n 자리까지 소수점 제한 3.14159"3.14" (%.2f)

%t 불리언 true"true"

%v 기본 형식 (기본값 출력) 123"123"

%+v 필드 이름 포함 (구조체 )

%#v Go 구문으로 표현

%T 값의 타입 출력 "Hello""string"

%% 퍼센트 기호 출력 (%) "%%""%"


log.Fatal(err) //에러 보고하고 프로그램 종료함.

exit status 1  // 항상 종료 코드로 1을 반환 합니다. 

os.Exit
-일반적으로 비정상 종료 exit status 1 (Error)상태를 나타냅니다. 
- 0 은 정상 종료를 의미합니다.
- 1 은 비정상 종료를 의미합니다. 
- 종료 상태 코드는 프로그램이 실행 마치고, 운영 체제에 반환하는 숫자 값입니다.
- 프로그램의 성공/실패 여부를 확인하는대도 사용됩니다.
- exit status 1은 프로그램 실행 중에 오류가 발생하거나, 프로그램이 예상치 못한 상황에서 종료되었음을 나타냅니다.
- log.Fatal은 에러 메시지를 출력한 후 os.Exit(1)을 호출하여 프로그램을 종료합니다.
- os.Exit(1) 직접 호출시: os.Exit 함수는 프로그램을 종료하고 지정된 상태 코드를 반환합니다.
- Go에서 종료 상태 코드를 제어하려면 os.Exit 함수를 사용합니다.

반환 값이 2개 인경우 무시하기 : _
input, _ := reader.ReadString('\n')

반환 값이 2개 인 경우 err 반환값을 변수로 저장하기
input, err := reader.ReadString('\n')
함수나 메서드는 - 문제가 없으면 에러값으로 nil을 반환합니다.
- err 값이 nil 이면, 문제가 없는것이고,
- err 값이 nil 아니면, 에러가 발생된 것임.
  if err != nil {                 // 에러가 nil 이 아니면(에러가 발생했으면)
           log.Fatal(err)     //에러 보고후, 프로그램 종료함.
  }