diff --git a/filter/filter_impl/metrics_filter.go b/filter/filter_impl/metrics_filter.go
index d07dc2268e96a03cafb51089a5415d40e0a75819..1e2dc35f2d3f2c39a2273665619d23e35841a475 100644
--- a/filter/filter_impl/metrics_filter.go
+++ b/filter/filter_impl/metrics_filter.go
@@ -63,7 +63,7 @@ func (p *metricsFilter) Invoke(ctx context.Context, invoker protocol.Invoker, in
 	duration := end.Sub(start)
 	go func() {
 		for _, reporter := range p.reporters {
-			reporter.Report(ctx, invoker, invocation, duration, nil)
+			reporter.Report(ctx, invoker, invocation, duration, res)
 		}
 	}()
 	return res
diff --git a/metrics/prometheus/reporter_test.go b/metrics/prometheus/reporter_test.go
index 4f734ac8b52773c2354cf0104d29403142726e1f..52e8b50c57f65e1495931354bb5a55861cbb457b 100644
--- a/metrics/prometheus/reporter_test.go
+++ b/metrics/prometheus/reporter_test.go
@@ -23,6 +23,9 @@ import (
 	"time"
 )
 
+import (
+	"github.com/stretchr/testify/assert"
+)
 import (
 	"github.com/apache/dubbo-go/common"
 	"github.com/apache/dubbo-go/common/extension"
@@ -43,6 +46,7 @@ func TestPrometheusReporter_Report(t *testing.T) {
 	attach := make(map[string]string, 10)
 	inv := invocation.NewRPCInvocation("MethodName", []interface{}{"OK", "Hello"}, attach)
 
+	assert.False(t, isConsumer(url))
 	ctx := context.Background()
 	reporter.Report(ctx, invoker, inv, 100*time.Millisecond, nil)
 }