func Init()

in models/metrics/metrics.go [44:77]


func Init(meter metric.Meter) error {
	var err error
	events.sent, err = meter.Int64Counter(metricName("event_sent_total"), metric.WithDescription("total number of events sent by the ARN client"))
	if err != nil {
		return err
	}

	events.bytes, err = meter.Int64Counter(metricName("event_sent_bytes_total"), metric.WithDescription("total number of bytes in event data sent by the ARN client"))
	if err != nil {
		return err
	}

	// TODO: adjust buckets
	events.latency, err = meter.Int64Histogram(
		metricName("event_sent_ms"),
		metric.WithDescription("time spent to send ARN event"),
		metric.WithExplicitBucketBoundaries(50, 100, 200, 400, 600, 800, 1000, 1250, 1500, 2000, 3000, 4000, 5000, 10000, 60000, 300000, 600000),
	)
	if err != nil {
		return err
	}

	promises.completed, err = meter.Int64Counter(metricName("promise_total"), metric.WithDescription("total number of promises made by the ARN client"))
	if err != nil {
		return err
	}

	promises.current, err = meter.Int64UpDownCounter(metricName("current_promise_count"), metric.WithDescription("current number of promises made by the ARN client"))
	if err != nil {
		return err
	}

	return nil
}