From 151d6cd8e12267e6e305d6b9e0fa60ef95e5bbf0 Mon Sep 17 00:00:00 2001 From: golangisfun123 Date: Tue, 15 Oct 2024 14:43:59 -0500 Subject: [PATCH] fix tracing --- services/omnirpc/http/capture_client_test.go | 2 +- services/omnirpc/http/client_test.go | 2 +- services/omnirpc/http/resty.go | 8 +++---- services/omnirpc/http/suite_test.go | 22 ++++++++++++++++++++ 4 files changed, 28 insertions(+), 6 deletions(-) diff --git a/services/omnirpc/http/capture_client_test.go b/services/omnirpc/http/capture_client_test.go index ed1ecde653..e5a20b9879 100644 --- a/services/omnirpc/http/capture_client_test.go +++ b/services/omnirpc/http/capture_client_test.go @@ -35,8 +35,8 @@ func TestCaptureClient(t *testing.T) { testURL := gofakeit.URL() testReq := client.NewRequest() - testReq.SetBody(testBody) testReq.SetContext(testCtx) + testReq.SetBody(testBody) testReq.SetHeaderBytes(byteHeaderK, byteHeaderV) testReq.SetHeader(strHeaderK, strHeaderV) testReq.SetRequestURI(testURL) diff --git a/services/omnirpc/http/client_test.go b/services/omnirpc/http/client_test.go index cef1b0d6ca..b3cf2e6001 100644 --- a/services/omnirpc/http/client_test.go +++ b/services/omnirpc/http/client_test.go @@ -43,9 +43,9 @@ func (c *HTTPSuite) TestClient() { })) req := client.NewRequest() + req.SetContext(c.GetTestContext()) req.SetRequestURI(svr.URL) req.SetBody(mockBody) - req.SetContext(c.GetTestContext()) for key, val := range headers { if gofakeit.Bool() { req.SetHeader(key, val) diff --git a/services/omnirpc/http/resty.go b/services/omnirpc/http/resty.go index 802120c62a..55287d81ce 100644 --- a/services/omnirpc/http/resty.go +++ b/services/omnirpc/http/resty.go @@ -14,13 +14,13 @@ import ( // RestyClient is a resty client for making requests to the http client. type RestyClient struct { client *resty.Client - metrics metrics.Handler + handler metrics.Handler } // NewRestyClient creates a resty client. // while much slower than fasthttp, this client requests context cancellation. -func NewRestyClient(metrics metrics.Handler) Client { - return &RestyClient{client: resty.New(), metrics: metrics} +func NewRestyClient(handler metrics.Handler) Client { + return &RestyClient{client: resty.New(), handler: handler} } type restyRequest struct { @@ -33,7 +33,7 @@ type restyRequest struct { func (r RestyClient) NewRequest() Request { return &restyRequest{ Request: r.client.R(), - handler: r.metrics, + handler: r.handler, } } diff --git a/services/omnirpc/http/suite_test.go b/services/omnirpc/http/suite_test.go index 89b65cb516..5f376b7175 100644 --- a/services/omnirpc/http/suite_test.go +++ b/services/omnirpc/http/suite_test.go @@ -5,15 +5,21 @@ import ( "github.com/brianvoe/gofakeit/v6" "github.com/stretchr/testify/suite" + "github.com/synapsecns/sanguine/core" + "github.com/synapsecns/sanguine/core/config" "github.com/synapsecns/sanguine/core/metrics" + "github.com/synapsecns/sanguine/core/metrics/localmetrics" "github.com/synapsecns/sanguine/core/testsuite" "github.com/synapsecns/sanguine/services/omnirpc/http" ) +var buildInfo = config.NewBuildInfo(config.DefaultVersion, config.DefaultCommit, "omnirpc", config.DefaultDate) + // clientSuite defines the basic test suite. type HTTPSuite struct { *testsuite.TestSuite clients []http.Client + metrics metrics.Handler } // NewTestSuite creates a new test suite and performs some basic checks afterward. @@ -33,6 +39,22 @@ func (c *HTTPSuite) SetupTest() { } } +func (c *HTTPSuite) SetupSuite() { + c.TestSuite.SetupSuite() + // don't use metrics on ci for integration tests + isCI := core.GetEnvBool("CI", false) + useMetrics := !isCI + metricsHandler := metrics.Null + + if useMetrics { + localmetrics.SetupTestJaeger(c.GetSuiteContext(), c.T()) + metricsHandler = metrics.Jaeger + } + var err error + c.metrics, err = metrics.NewByType(c.GetSuiteContext(), buildInfo, metricsHandler) + c.Require().NoError(err) +} + func TestCommonSuite(t *testing.T) { suite.Run(t, NewClientSuite(t)) }