in pkg/filter/metric/metric.go [172:218]
func registerOtelMetric() error {
meter := global.MeterProvider().Meter("pixiu")
elapsedCounter, err := meter.SyncInt64().Counter("pixiu_request_elapsed", instrument.WithDescription("request total elapsed in pixiu"))
if err != nil {
logger.Errorf("register pixiu_request_elapsed metric failed, err: %v", err)
return err
}
totalElapsed = elapsedCounter
count, err := meter.SyncInt64().Counter("pixiu_request_count", instrument.WithDescription("request total count in pixiu"))
if err != nil {
logger.Errorf("register pixiu_request_count metric failed, err: %v", err)
return err
}
totalCount = count
errorCounter, err := meter.SyncInt64().Counter("pixiu_request_error_count", instrument.WithDescription("request error total count in pixiu"))
if err != nil {
logger.Errorf("register pixiu_request_error_count metric failed, err: %v", err)
return err
}
totalError = errorCounter
sizeRequest, err = meter.SyncInt64().Counter("pixiu_request_content_length", instrument.WithDescription("request total content length in pixiu"))
if err != nil {
logger.Errorf("register pixiu_request_content_length metric failed, err: %v", err)
return err
}
sizeResponse, err = meter.SyncInt64().Counter("pixiu_response_content_length", instrument.WithDescription("request total content length response in pixiu"))
if err != nil {
logger.Errorf("register pixiu_response_content_length metric failed, err: %v", err)
return err
}
durationHist, err = meter.SyncInt64().Histogram(
"pixiu_process_time_millicec",
instrument.WithDescription("request process time response in pixiu"),
)
if err != nil {
logger.Errorf("register pixiu_process_time_millisec metric failed, err: %v", err)
return err
}
return nil
}