// mirrorStatMessage mirror accounting message func (c mirrorStatMessage) String() string { speedBox := pb.Format(int64(c.Speed)).To(pb.U_BYTES).String() if speedBox == "" { speedBox = "0 MB" } else { speedBox = speedBox + "/s" } message := fmt.Sprintf("Total: %s, Transferred: %s, Speed: %s", pb.Format(c.Total).To(pb.U_BYTES), pb.Format(c.Transferred).To(pb.U_BYTES), speedBox) return message }
// Get os/arch/platform specific information. // Returns a map of current os/arch/platform/memstats. func getSystemData() map[string]string { host, e := os.Hostname() fatalIf(probe.NewError(e), "Unable to determine the hostname.") memstats := &runtime.MemStats{} runtime.ReadMemStats(memstats) mem := fmt.Sprintf("Used: %s | Allocated: %s | UsedHeap: %s | AllocatedHeap: %s", pb.Format(int64(memstats.Alloc)).To(pb.U_BYTES), pb.Format(int64(memstats.TotalAlloc)).To(pb.U_BYTES), pb.Format(int64(memstats.HeapAlloc)).To(pb.U_BYTES), pb.Format(int64(memstats.HeapSys)).To(pb.U_BYTES)) platform := fmt.Sprintf("Host: %s | OS: %s | Arch: %s", host, runtime.GOOS, runtime.GOARCH) goruntime := fmt.Sprintf("Version: %s | CPUs: %s", runtime.Version(), strconv.Itoa(runtime.NumCPU())) return map[string]string{ "PLATFORM": platform, "RUNTIME": goruntime, "MEM": mem, } }