func makeVariableMessage(encoder client.StreamEncoder, items int, rdm *randomDataMaker) [][]byte { ma := make([][]byte, items) hostname, _ := os.Hostname() pid := int32(os.Getpid()) var cnt int for x := 0; x < items; x++ { msg := &message.Message{} msg.SetUuid(uuid.NewRandom()) msg.SetTimestamp(time.Now().UnixNano()) msg.SetType("hekabench") msg.SetLogger("flood") msg.SetEnvVersion("0.2") msg.SetPid(pid) msg.SetHostname(hostname) cnt = (rand.Int() % 3) * 1024 msg.SetPayload(makePayload(uint64(cnt), rdm)) cnt = rand.Int() % 5 for c := 0; c < cnt; c++ { field, _ := message.NewField(fmt.Sprintf("string%d", c), fmt.Sprintf("value%d", c), "") msg.AddField(field) } cnt = rand.Int() % 5 for c := 0; c < cnt; c++ { b := byte(c) field, _ := message.NewField(fmt.Sprintf("bytes%d", c), []byte{b, b, b, b, b, b, b, b}, "") msg.AddField(field) } cnt = rand.Int() % 5 for c := 0; c < cnt; c++ { field, _ := message.NewField(fmt.Sprintf("int%d", c), c, "") msg.AddField(field) } cnt = rand.Int() % 5 for c := 0; c < cnt; c++ { field, _ := message.NewField(fmt.Sprintf("double%d", c), float64(c), "") msg.AddField(field) } cnt = rand.Int() % 5 for c := 0; c < cnt; c++ { field, _ := message.NewField(fmt.Sprintf("bool%d", c), true, "") msg.AddField(field) } cnt = (rand.Int() % 60) * 1024 buf := make([]byte, cnt) field, _ := message.NewField("filler", buf, "") msg.AddField(field) var stream []byte if err := encoder.EncodeMessageStream(msg, &stream); err != nil { log.Println(err) } ma[x] = stream } return ma }
func makeFixedMessage(encoder client.StreamEncoder, size uint64, rdm *randomDataMaker) [][]byte { ma := make([][]byte, 1) hostname, _ := os.Hostname() pid := int32(os.Getpid()) msg := &message.Message{} msg.SetType("hekabench") msg.SetTimestamp(time.Now().UnixNano()) msg.SetUuid(uuid.NewRandom()) msg.SetSeverity(int32(6)) msg.SetEnvVersion("0.8") msg.SetPid(pid) msg.SetHostname(hostname) msg.SetPayload(makePayload(size, rdm)) var stream []byte if err := encoder.EncodeMessageStream(msg, &stream); err != nil { client.LogError.Println(err) } ma[0] = stream return ma }