From d3237766ac95f653098a6aa8fdda64c9f42b7eff Mon Sep 17 00:00:00 2001 From: William Banfield <4561443+williambanfield@users.noreply.github.com> Date: Wed, 13 Oct 2021 12:15:42 -0400 Subject: [PATCH 1/4] Update internal/proxy/app_conn.go Co-authored-by: M. J. Fromberger --- internal/proxy/app_conn.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/proxy/app_conn.go b/internal/proxy/app_conn.go index 52c5c82a0..7753a44b2 100644 --- a/internal/proxy/app_conn.go +++ b/internal/proxy/app_conn.go @@ -138,7 +138,7 @@ func (app *appConnMempool) Error() error { } func (app *appConnMempool) FlushAsync(ctx context.Context) (*abciclient.ReqRes, error) { - defer addTimeSample(app.metrics.MethodTiming.With("method", "flush", "type", "sync"))() + defer addTimeSample(app.metrics.MethodTiming.With("method", "flush", "type", "async"))() return app.appConn.FlushAsync(ctx) } From 3c4e138b890a13a0520c314425bd9e4d5cf35801 Mon Sep 17 00:00:00 2001 From: William Banfield <4561443+williambanfield@users.noreply.github.com> Date: Wed, 13 Oct 2021 12:15:48 -0400 Subject: [PATCH 2/4] Update internal/proxy/app_conn.go Co-authored-by: M. J. Fromberger --- internal/proxy/app_conn.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/proxy/app_conn.go b/internal/proxy/app_conn.go index 7753a44b2..3e342adab 100644 --- a/internal/proxy/app_conn.go +++ b/internal/proxy/app_conn.go @@ -97,7 +97,7 @@ func (app *appConnConsensus) DeliverTxAsync( ctx context.Context, req types.RequestDeliverTx, ) (*abciclient.ReqRes, error) { - defer addTimeSample(app.metrics.MethodTiming.With("method", "deliver_tx", "type", "aync"))() + defer addTimeSample(app.metrics.MethodTiming.With("method", "deliver_tx", "type", "async"))() return app.appConn.DeliverTxAsync(ctx, req) } From e049236c68cd58ccc91fc0eedd83d2f59821e472 Mon Sep 17 00:00:00 2001 From: William Banfield <4561443+williambanfield@users.noreply.github.com> Date: Wed, 13 Oct 2021 12:16:01 -0400 Subject: [PATCH 3/4] Update internal/proxy/app_conn.go Co-authored-by: M. J. Fromberger --- internal/proxy/app_conn.go | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/internal/proxy/app_conn.go b/internal/proxy/app_conn.go index 3e342adab..0720d282b 100644 --- a/internal/proxy/app_conn.go +++ b/internal/proxy/app_conn.go @@ -148,9 +148,7 @@ func (app *appConnMempool) FlushSync(ctx context.Context) error { } func (app *appConnMempool) CheckTxAsync(ctx context.Context, req types.RequestCheckTx) (*abciclient.ReqRes, error) { - start := time.Now() - defer app.metrics.MethodTiming.With("method", "check_tx", - "type", "sync").Observe(time.Since(start).Seconds()) + defer addTimeSample(app.metrics.MethodTiming.With("method", "check_tx", "type", "async"))() return app.appConn.CheckTxAsync(ctx, req) } From c5a72c44cc69893c1ac066d4eaa65640df4f1378 Mon Sep 17 00:00:00 2001 From: William Banfield <4561443+williambanfield@users.noreply.github.com> Date: Wed, 13 Oct 2021 12:21:35 -0400 Subject: [PATCH 4/4] Update internal/proxy/app_conn.go Co-authored-by: M. J. Fromberger --- internal/proxy/app_conn.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/internal/proxy/app_conn.go b/internal/proxy/app_conn.go index 0720d282b..5aae531a6 100644 --- a/internal/proxy/app_conn.go +++ b/internal/proxy/app_conn.go @@ -240,6 +240,9 @@ func (app *appConnSnapshot) ApplySnapshotChunkSync( return app.appConn.ApplySnapshotChunkSync(ctx, req) } +// addTimeSample returns a function that, when called, adds a sample to m for +// the time elapsed since the original call to addTimeSample. This function should +// be deferred near the start of a function to be sampled. func addTimeSample(m metrics.Histogram) func() { start := time.Now() return func() { m.Observe(time.Since(start).Seconds()) }