// Package util provide some utility fun package util import ( "context" "strconv" "modelRT/logger" "github.com/redis/go-redis/v9" ) // ConvertZSetMembersToFloat64 define func to conver zset member type to float64 func ConvertZSetMembersToFloat64(ctx context.Context, members []redis.Z) []float64 { dataFloats := make([]float64, 0, len(members)) for _, member := range members { valStr, ok := member.Member.(string) if !ok { logger.Warn(ctx, "redis zset member value is not a string,skipping") continue } valFloat, err := strconv.ParseFloat(valStr, 64) if err != nil { logger.Error(ctx, "failed to parse zset member string to float64", "value", valStr, "error", err) continue } dataFloats = append(dataFloats, valFloat) } return dataFloats }