func metricPoint()

in plugins/toolkit-activation/instrument.go [63:115]


func metricPoint() []*instrument.Point {
	return []*instrument.Point{
		// Counter metric type related enhancement point
		{
			PackagePath: "metric", At: instrument.NewStructEnhance("CounterRef"),
		},
		{
			PackagePath: "metric", At: instrument.NewStaticMethodEnhance("NewCounter"),
			Interceptor: "NewCounterInterceptor",
		},
		{
			PackagePath: "metric", At: instrument.NewMethodEnhance("*CounterRef", "Get"),
			Interceptor: "CounterGetInterceptor",
		},
		{
			PackagePath: "metric", At: instrument.NewMethodEnhance("*CounterRef", "Inc"),
			Interceptor: "CounterIncInterceptor",
		},
		// Gauge metric type related enhancement point
		{
			PackagePath: "metric", At: instrument.NewStructEnhance("GaugeRef"),
		},
		{
			PackagePath: "metric", At: instrument.NewStaticMethodEnhance("NewGauge"),
			Interceptor: "NewGaugeInterceptor",
		},
		{
			PackagePath: "metric", At: instrument.NewMethodEnhance("*GaugeRef", "Get"),
			Interceptor: "GaugeGetInterceptor",
		},
		// Histogram metric type related enhancement point
		{
			PackagePath: "metric", At: instrument.NewStructEnhance("HistogramRef"),
		},
		{
			PackagePath: "metric", At: instrument.NewStaticMethodEnhance("NewHistogram"),
			Interceptor: "NewHistogramInterceptor",
		},
		{
			PackagePath: "metric", At: instrument.NewMethodEnhance("*HistogramRef", "Observe"),
			Interceptor: "HistogramObserveInterceptor",
		},
		{
			PackagePath: "metric", At: instrument.NewMethodEnhance("*HistogramRef", "ObserveWithCount"),
			Interceptor: "HistogramObserveWithCountInterceptor",
		},
		// metric options related enhancement point
		{
			PackagePath: "metric", At: instrument.NewStaticMethodEnhance("WithLabels"),
			Interceptor: "WithLabelsInterceptor",
		},
	}
}