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

Golang tricorder.DirectorySpec类代码示例

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

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



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

示例1: mkdir

func mkdir(dir *tricorder.DirectorySpec, name string) *tricorder.DirectorySpec {
	subdir, err := dir.RegisterDirectory(name)
	if err != nil {
		panic(err)
	}
	return subdir
}
开发者ID:rgooch,项目名称:health-agent,代码行数:7,代码来源:register.go


示例2: register

func (m *timeMetric) register(dir *tricorder.DirectorySpec,
	name, use string) error {
	if err := dir.RegisterMetric(name, &m.value, units.None, use); err != nil {
		return err
	}
	return dir.RegisterMetric(name+"-fraction", &m.fraction, units.None,
		use+" during last probe interval")
}
开发者ID:rgooch,项目名称:health-agent,代码行数:8,代码来源:register.go


示例3: registerMetrics

func (configuration *Configuration) registerMetrics(
	dir *tricorder.DirectorySpec) error {
	netDir, err := dir.RegisterDirectory("network")
	if err != nil {
		return err
	}
	return configuration.NetworkReaderContext.RegisterMetrics(netDir,
		units.Byte, "network speed")
}
开发者ID:datatonic,项目名称:Dominator,代码行数:9,代码来源:metrics.go


示例4: registerMetrics

func (ctx *ReaderContext) registerMetrics(dir *tricorder.DirectorySpec,
	unit units.Unit, description string) error {
	err := dir.RegisterMetric("speed", &ctx.maxIOPerSecond, unit, description)
	if err != nil {
		return err
	}
	return dir.RegisterMetric("limit", &ctx.speedPercent, units.None,
		"percent limit")
}
开发者ID:datatonic,项目名称:Dominator,代码行数:9,代码来源:metrics.go


示例5: register

func register(dir *tricorder.DirectorySpec) *prober {
	p := new(prober)
	if err := p.findGateway(); err != nil {
		panic(err)
	}
	if err := dir.RegisterMetric("gateway-address", &p.gatewayAddress,
		units.None, "gateway address"); err != nil {
		panic(err)
	}
	if err := dir.RegisterMetric("gateway-interface", &p.gatewayInterfaceName,
		units.None, "gateway interface"); err != nil {
		panic(err)
	}
	latencyBucketer := tricorder.NewGeometricBucketer(0.1, 10e3)
	p.gatewayPingTimeDistribution = latencyBucketer.NewDistribution()
	if err := dir.RegisterMetric("gateway-ping-time",
		p.gatewayPingTimeDistribution,
		units.Millisecond, "ping time to gateway"); err != nil {
		panic(err)
	}
	p.gatewayRttDistribution = latencyBucketer.NewDistribution()
	if err := dir.RegisterMetric("gateway-rtt", p.gatewayRttDistribution,
		units.Millisecond, "round-trip time to gateway"); err != nil {
		panic(err)
	}
	return p
}
开发者ID:cviecco,项目名称:health-agent,代码行数:27,代码来源:register.go


示例6: registerMetrics

func (configuration *Configuration) registerMetrics(
	dir *tricorder.DirectorySpec) error {
	scannerDir, err := dir.RegisterDirectory("scanner")
	if err != nil {
		return err
	}
	err = configuration.FsScanContext.RegisterMetrics(scannerDir)
	if err != nil {
		return err
	}
	netDir, err := dir.RegisterDirectory("network")
	if err != nil {
		return err
	}
	return configuration.NetworkReaderContext.RegisterMetrics(netDir,
		units.BytePerSecond, "network speed")
}
开发者ID:keep94,项目名称:Dominator,代码行数:17,代码来源:metrics.go


示例7: registerMetrics

func (ctx *ReaderContext) registerMetrics(dir *tricorder.DirectorySpec,
	unit units.Unit, description string) error {
	err := dir.RegisterMetric("speed", &ctx.maxIOPerSecond, unit, description)
	if err != nil {
		return err
	}
	err = dir.RegisterMetric("limit", &ctx.speedPercent, units.None,
		"percent limit")
	if err != nil {
		return err
	}
	ctx.sleepTimeDistribution = sleepBucketer.NewCumulativeDistribution()
	return dir.RegisterMetric("sleep-time", ctx.sleepTimeDistribution,
		units.Millisecond, "sleep time")
}
开发者ID:keep94,项目名称:Dominator,代码行数:15,代码来源:metrics.go


示例8: registerLoadavg

func (p *prober) registerLoadavg(dir *tricorder.DirectorySpec) error {
	dir = mkdir(dir, "loadavg")
	if err := dir.RegisterMetric("1m", &p.loadavg.oneMinute, units.None,
		"load average for the last minute"); err != nil {
		return err
	}
	if err := dir.RegisterMetric("5m", &p.loadavg.fiveMinutes,
		units.None, "load average for the last minute"); err != nil {
		return err
	}
	if err := dir.RegisterMetric("15m", &p.loadavg.fifteenMinutes,
		units.None, "load average for the last minute"); err != nil {
		return err
	}
	return nil
}
开发者ID:rgooch,项目名称:health-agent,代码行数:16,代码来源:register.go


示例9: registerMetrics

func (s *Store) registerMetrics(d *tricorder.DirectorySpec) (err error) {
	if err = s.supplier.RegisterMetrics(d); err != nil {
		return
	}
	// Allow this store instance to be GCed
	maxValuesPerPage := s.supplier.MaxValuesPerPage()
	metrics := s.metrics

	if err = d.RegisterMetric(
		"/pagesPerMetric",
		metrics.PagesPerMetricDist,
		units.None,
		"Number of pages used per metric"); err != nil {
		return
	}
	var primitiveMetrics storePrimitiveMetricsType
	storeGroup := tricorder.NewGroup()
	storeGroup.RegisterUpdateFunc(func() time.Time {
		metrics.Metrics(&primitiveMetrics)
		return time.Now()
	})
	if err = d.RegisterMetricInGroup(
		"/pageUtilization",
		func() float64 {
			metricValueCount := primitiveMetrics.UniqueMetricValueCount
			pagesInUseCount := metrics.PagesPerMetricDist.Sum()
			metricCount := metrics.PagesPerMetricDist.Count()
			extraValueCount := float64(metricValueCount) - float64(metricCount)
			return extraValueCount / pagesInUseCount / float64(maxValuesPerPage)
		},
		storeGroup,
		units.None,
		"Page utilization 0.0 - 1.0"); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/metricValueCount",
		&primitiveMetrics.UniqueMetricValueCount,
		storeGroup,
		units.None,
		"Number of unique metrics values"); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/timeSpan",
		primitiveMetrics.TimeSpan,
		storeGroup,
		units.Second,
		"Span of time in store"); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/valuePageCount",
		metrics.PagesPerMetricDist.Sum,
		storeGroup,
		units.None,
		"Number of pages used for values."); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/timestampPageCount",
		&primitiveMetrics.TimeStampPageCount,
		storeGroup,
		units.None,
		"Number of pages used for timestamps."); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/totalPagesInUseCount",
		func() int64 {
			return primitiveMetrics.TimeStampPageCount + int64(metrics.PagesPerMetricDist.Sum())
		},
		storeGroup,
		units.None,
		"Total number of pages used."); err != nil {
		return
	}
	return
}
开发者ID:keep94,项目名称:scotty,代码行数:79,代码来源:store.go


示例10: RegisterMetrics

func (s *pageQueueType) RegisterMetrics(d *tricorder.DirectorySpec) (
	err error) {
	var queueStats btreepq.PageQueueStats
	queueGroup := tricorder.NewGroup()
	queueGroup.RegisterUpdateFunc(func() time.Time {
		s.PageQueueStats(&queueStats)
		return time.Now()
	})
	if err = d.RegisterMetricInGroup(
		"/highPriorityCount",
		&queueStats.HighPriorityCount,
		queueGroup,
		units.None,
		"Number of pages in high priority queue"); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/lowPriorityCount",
		&queueStats.LowPriorityCount,
		queueGroup,
		units.None,
		"Number of pages in low priority queue"); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/totalPages",
		queueStats.TotalCount,
		queueGroup,
		units.None,
		"Total number of pages."); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/nextLowPrioritySeqNo",
		&queueStats.NextLowPrioritySeqNo,
		queueGroup,
		units.None,
		"Next seq no in low priority queue, 0 if empty"); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/nextHighPrioritySeqNo",
		&queueStats.NextHighPrioritySeqNo,
		queueGroup,
		units.None,
		"Next seq no in high priority queue, 0 if empty"); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/endSeqNo",
		&queueStats.EndSeqNo,
		queueGroup,
		units.None,
		"All seq no smaller than this. Marks end of both queues."); err != nil {
		return
	}
	if err = d.RegisterMetricInGroup(
		"/highPriorityRatio",
		queueStats.HighPriorityRatio,
		queueGroup,
		units.None,
		"High priority page ratio"); err != nil {
		return
	}

	if err = d.RegisterMetric(
		"/expanding",
		s.IsExpanding,
		units.None,
		"Is page queue expanding."); err != nil {
		return
	}
	if err = d.RegisterMetric(
		"/maxValuesPerPage",
		&s.valueCountPerPage,
		units.None,
		"Maximum number ofvalues that can fit in a page."); err != nil {
		return
	}
	if err = d.RegisterMetric(
		"/inactiveThreshhold",
		&s.inactiveThreshhold,
		units.None,
		"The ratio of inactive pages needed before they are reclaimed first"); err != nil {
		return
	}
	if err = d.RegisterMetric(
		"/btreeDegree",
		&s.degree,
		units.None,
		"The degree of the btrees in the queue"); err != nil {
		return
	}
	return
}
开发者ID:keep94,项目名称:scotty,代码行数:95,代码来源:pagequeue.go


示例11: registerMetrics

func (m *methodWrapper) registerMetrics(dir *tricorder.DirectorySpec) error {
	m.failedCallsDistribution = bucketer.NewCumulativeDistribution()
	err := dir.RegisterMetric("failed-call-durations",
		m.failedCallsDistribution, units.Millisecond,
		"duration of failed calls")
	if err != nil {
		return err
	}
	err = dir.RegisterMetric("num-denied-calls", &m.numDeniedCalls,
		units.None, "number of denied calls to method")
	if err != nil {
		return err
	}
	err = dir.RegisterMetric("num-permitted-calls", &m.numPermittedCalls,
		units.None, "number of permitted calls to method")
	if err != nil {
		return err
	}
	m.successfulCallsDistribution = bucketer.NewCumulativeDistribution()
	err = dir.RegisterMetric("successful-call-durations",
		m.successfulCallsDistribution, units.Millisecond,
		"duration of successful calls")
	if err != nil {
		return err
	}
	if m.plain {
		return nil
	}
	m.failedRRCallsDistribution = bucketer.NewCumulativeDistribution()
	err = dir.RegisterMetric("failed-request-reply-call-durations",
		m.failedRRCallsDistribution, units.Millisecond,
		"duration of failed request-reply calls")
	if err != nil {
		return err
	}
	m.successfulRRCallsDistribution = bucketer.NewCumulativeDistribution()
	err = dir.RegisterMetric("successful-request-reply-call-durations",
		m.successfulRRCallsDistribution, units.Millisecond,
		"duration of successful request-reply calls")
	if err != nil {
		return err
	}
	return nil
}
开发者ID:keep94,项目名称:Dominator,代码行数:44,代码来源:server.go



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
Golang protocol.DeviceIDFromBytes函数代码示例发布时间:2022-05-29
下一篇:
Golang store.Store类代码示例发布时间:2022-05-29
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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