• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Golang sets.SSet函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Golang中github.com/feyeleanor/sets.SSet函数的典型用法代码示例。如果您正苦于以下问题:Golang SSet函数的具体用法?Golang SSet怎么用?Golang SSet使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了SSet函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。

示例1: GetMetricStatistics

// Get statistics for specified metric
//
// If the arguments are invalid or the server returns an error, the error will
// be set and the other values undefined.
func (c *CloudWatch) GetMetricStatistics(req *GetMetricStatisticsRequest) (result *GetMetricStatisticsResponse, err error) {
	statisticsSet := sets.SSet(req.Statistics...)
	// Kick out argument errors
	switch {
	case req.EndTime.IsZero():
		err = errors.New("No endTime specified")
	case req.StartTime.IsZero():
		err = errors.New("No startTime specified")
	case req.MetricName == "":
		err = errors.New("No metricName specified")
	case req.Namespace == "":
		err = errors.New("No Namespace specified")
	case req.Period < 60 || req.Period%60 != 0:
		err = errors.New("Period not 60 seconds or a multiple of 60 seconds")
	case len(req.Statistics) < 1:
		err = errors.New("No statistics supplied")
	case validMetricStatistics.Union(statisticsSet).Len() != validMetricStatistics.Len():
		err = errors.New("Invalid statistic values supplied")
	case req.Unit != "" && !validUnits.Member(req.Unit):
		err = errors.New("Unit is not a valid value")
	}
	if err != nil {
		return
	}

	// Serialize all the params
	params := aws.MakeParams("GetMetricStatistics")
	params["EndTime"] = req.EndTime.UTC().Format(time.RFC3339)
	params["StartTime"] = req.StartTime.UTC().Format(time.RFC3339)
	params["MetricName"] = req.MetricName
	params["Namespace"] = req.Namespace
	params["Period"] = strconv.Itoa(req.Period)
	if req.Unit != "" {
		params["Unit"] = req.Unit
	}

	// Serialize the lists of data
	for i, d := range req.Dimensions {
		prefix := "Dimensions.member." + strconv.Itoa(i+1)
		params[prefix+".Name"] = d.Name
		params[prefix+".Value"] = d.Value
	}
	for i, d := range req.Statistics {
		prefix := "Statistics.member." + strconv.Itoa(i+1)
		params[prefix] = d
	}
	result = new(GetMetricStatisticsResponse)
	err = c.query("GET", "/", params, result)
	return
}
开发者ID:JonPulfer,项目名称:goamz,代码行数:54,代码来源:cloudwatch.go


示例2: Init

func (cwi *CloudwatchInput) Init(config interface{}) (err error) {
	conf := config.(*CloudwatchInputConfig)

	statisticsSet := sets.SSet(conf.Statistics...)
	switch {
	case conf.MetricName == "":
		err = errors.New("No metric name supplied")
	case conf.Period < 60 || conf.Period%60 != 0:
		err = errors.New("Period must be divisible by 60")
	case len(conf.Statistics) < 1:
		err = errors.New("text·2")
	case conf.Unit != "" && !validUnits.Member(conf.Unit):
		err = errors.New("Unit is not a valid value")
	case len(conf.Statistics) < 1:
		err = errors.New("No statistics supplied")
	case validMetricStatistics.Union(statisticsSet).Len() != validMetricStatistics.Len():
		err = errors.New("Invalid statistic values supplied")
	}
	if err != nil {
		return
	}

	dims := make([]cloudwatch.Dimension, 0)
	for k, v := range conf.Dimensions {
		dims = append(dims, cloudwatch.Dimension{k, v})
	}

	auth := aws.Auth{AccessKey: conf.AccessKey, SecretKey: conf.SecretKey}

	cwi.req = &cloudwatch.GetMetricStatisticsRequest{
		MetricName: conf.MetricName,
		Period:     conf.Period,
		Unit:       conf.Unit,
		Statistics: conf.Statistics,
		Dimensions: dims,
	}
	cwi.pollInterval, err = time.ParseDuration(conf.PollInterval)
	if err != nil {
		return
	}
	region, ok := aws.Regions[conf.Region]
	if !ok {
		err = errors.New("Region of that name not found.")
		return
	}
	cwi.namespace = conf.Namespace
	cwi.cw, err = cloudwatch.NewCloudWatch(auth, region.CloudWatchServicepoint,
		conf.Namespace)
	return
}
开发者ID:jmptrader,项目名称:heka-mozsvc-plugins,代码行数:50,代码来源:cloudwatch.go


示例3:

}

var validUnits = sets.SSet(
	"Seconds",
	"Microseconds",
	"Milliseconds",
	"Bytes",
	"Kilobytes",
	"Megabytes",
	"Gigabytes",
	"Terabytes",
	"Bits",
	"Kilobits",
	"Megabits",
	"Gigabits",
	"Terabits",
	"Percent",
	"Count",
	"Bytes/Second",
	"Kilobytes/Second",
	"Megabytes/Second",
	"Gigabytes/Second",
	"Terabytes/Second",
	"Bits/Second",
	"Kilobits/Second",
	"Megabits/Second",
	"Gigabits/Second",
	"Terabits/Second",
	"Count/Second",
)

var validMetricStatistics = sets.SSet(
开发者ID:JonPulfer,项目名称:goamz,代码行数:32,代码来源:cloudwatch.go


示例4:

var validUnits = sets.SSet(
	UnitSeconds,
	UnitMicroseconds,
	UnitMilliseconds,
	UnitBytes,
	UnitKilobytes,
	UnitMegabytes,
	UnitGigabytes,
	UnitTerabytes,
	UnitBits,
	UnitKilobits,
	UnitMegabits,
	UnitGigabits,
	UnitTerabits,
	UnitPercent,
	UnitCount,
	UnitBytesPerSecond,
	UnitKilobytesPerSecond,
	UnitMegabytesPerSecond,
	UnitGigabytesPerSecond,
	UnitTerabytesPerSecond,
	UnitBitsPerSecond,
	UnitKilobitsPerSecond,
	UnitMegabitsPerSecond,
	UnitGigabitsPerSecond,
	UnitTerabitsPerSecond,
	UnitCountPerSecond,
	UnitNone,
)
开发者ID:nalin-humin,项目名称:goamz,代码行数:29,代码来源:cloudwatch.go



注:本文中的github.com/feyeleanor/sets.SSet函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Golang goldi.Container类代码示例发布时间:2022-05-23
下一篇:
Golang pila.Stack类代码示例发布时间:2022-05-23
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap