github.com/EngineerKamesh/gofullstack@v0.0.0-20180609171605-d41341d7d4ee/volume3/section5/gopherface/common/utility/uuid.go (about) 1 package utility 2 3 import ( 4 "fmt" 5 "log" 6 "os" 7 ) 8 9 func GenerateUUID() string { 10 f, err := os.Open("/dev/urandom") 11 if err != nil { 12 log.Println("Encountered the following error when attempting to generate an UUID: ", err) 13 return "" 14 } 15 b := make([]byte, 16) 16 f.Read(b) 17 f.Close() 18 uuid := fmt.Sprintf("%x-%x-%x-%x-%x", b[0:4], b[4:6], b[6:8], b[8:10], b[10:]) 19 return uuid 20 }