2017-11-10 22 views
1

나는 다음과 같은 한 튜토리얼을 사용하여 추적을 구문 분석 할 때 : 사용하여 바이너리를 구축오류 main.go에서) (주의 시작 부분에 두 줄을 추가 <a href="https://www.youtube.com/watch?v=ySy3sR1LFCQ" rel="nofollow noreferrer">JustForFunc episode 22</a></p> <p>에서 이동 도구 추적을

trace.Start(os.Stdout) 
defer trace.Stop() 

go build -o appName

time ./appName > m.trace

와 함께 시간이 초과되었습니다 그리고 마지막으로 go tool trace m.trace로 추적을 열려고 오류 다음만 가지고 : 내 코드에

2017/11/10 19:15:38 Parsing trace... 
failed to parse trace: unknown event type 50 at offset 0x16 

좀 더 배경 (1.9, 리눅스를 golang는) : 그것은 진 - gonic로 구축 GET 요청에 대한 서버입니다. 나는 여분의 코드 time.AfterFunc(20*time.Seconds, func(){closeServer()})을 추가하여 20 초 후에 서버를 닫았으므로 몇 가지 요청을 한 다음 서버 종료 프로그램을 중지 할 수있었습니다.

답변

1

내 문제에 대한 해결책을 찾았습니다. 이 자습서 https://making.pusher.com/go-tool-trace/을 따라했습니다. 메인에 추가 코드 :

f, err := os.Create("trace.out") 
if err != nil { 
    panic(err) 
} 
defer f.Close() 

err = trace.Start(f) 
if err != nil { 
    panic(err) 
} 
defer trace.Stop() 
// Your program here 

는 그리고 그것은 잘 작동하는 것 같군. 이 문제의 원인이 무엇인지 전혀 알 수 없습니다. (