diff --git a/filter/filter_impl/active_filter_test.go b/filter/filter_impl/active_filter_test.go index 54afa98e1d796d81327783504a30f82f3893f13c..acc4f9121641bfbbc484a711c0ea04dffeab55e3 100644 --- a/filter/filter_impl/active_filter_test.go +++ b/filter/filter_impl/active_filter_test.go @@ -50,7 +50,7 @@ func TestActiveFilter_OnResponse(t *testing.T) { } filter.OnResponse(result, invoker, invoc) methodStatus := protocol.GetMethodStatus(url, "test") - urlStatus := protocol.GetUrlStatus(url) + urlStatus := protocol.GetURLStatus(url) assert.Equal(t, int32(1), methodStatus.GetTotal()) assert.Equal(t, int32(1), urlStatus.GetTotal()) diff --git a/protocol/rpc_status.go b/protocol/rpc_status.go index cbc81f116126aa4fcdeab0239d2daad4412bcfb1..67f05e98020298b04096d2ba05874143324a7c7e 100644 --- a/protocol/rpc_status.go +++ b/protocol/rpc_status.go @@ -28,11 +28,11 @@ import ( ) var ( - methodStatistics sync.Map // url -> { methodName : RpcStatus} - serviceStatistic sync.Map // url -> RpcStatus + methodStatistics sync.Map // url -> { methodName : RPCStatus} + serviceStatistic sync.Map // url -> RPCStatus ) -type RpcStatus struct { +type RPCStatus struct { active int32 failed int32 total int32 @@ -45,52 +45,52 @@ type RpcStatus struct { lastRequestFailedTimestamp int64 } -func (rpc *RpcStatus) GetActive() int32 { +func (rpc *RPCStatus) GetActive() int32 { return atomic.LoadInt32(&rpc.active) } -func (rpc *RpcStatus) GetFailed() int32 { +func (rpc *RPCStatus) GetFailed() int32 { return atomic.LoadInt32(&rpc.failed) } -func (rpc *RpcStatus) GetTotal() int32 { +func (rpc *RPCStatus) GetTotal() int32 { return atomic.LoadInt32(&rpc.total) } -func (rpc *RpcStatus) GetTotalElapsed() int64 { +func (rpc *RPCStatus) GetTotalElapsed() int64 { return atomic.LoadInt64(&rpc.totalElapsed) } -func (rpc *RpcStatus) GetFailedElapsed() int64 { +func (rpc *RPCStatus) GetFailedElapsed() int64 { return atomic.LoadInt64(&rpc.failedElapsed) } -func (rpc *RpcStatus) GetMaxElapsed() int64 { +func (rpc *RPCStatus) GetMaxElapsed() int64 { return atomic.LoadInt64(&rpc.maxElapsed) } -func (rpc *RpcStatus) GetFailedMaxElapsed() int64 { +func (rpc *RPCStatus) GetFailedMaxElapsed() int64 { return atomic.LoadInt64(&rpc.failedMaxElapsed) } -func (rpc *RpcStatus) GetSucceededMaxElapsed() int64 { +func (rpc *RPCStatus) GetSucceededMaxElapsed() int64 { return atomic.LoadInt64(&rpc.succeededMaxElapsed) } -func (rpc *RpcStatus) GetLastRequestFailedTimestamp() int64 { +func (rpc *RPCStatus) GetLastRequestFailedTimestamp() int64 { return atomic.LoadInt64(&rpc.lastRequestFailedTimestamp) } -func (rpc *RpcStatus) GetSuccessiveRequestFailureCount() int32 { +func (rpc *RPCStatus) GetSuccessiveRequestFailureCount() int32 { return atomic.LoadInt32(&rpc.successiveRequestFailureCount) } -func GetUrlStatus(url common.URL) *RpcStatus { - rpcStatus, _ := serviceStatistic.LoadOrStore(url.Key(), &RpcStatus{}) - return rpcStatus.(*RpcStatus) +func GetURLStatus(url common.URL) *RPCStatus { + rpcStatus, _ := serviceStatistic.LoadOrStore(url.Key(), &RPCStatus{}) + return rpcStatus.(*RPCStatus) } -func GetMethodStatus(url common.URL, methodName string) *RpcStatus { +func GetMethodStatus(url common.URL, methodName string) *RPCStatus { identifier := url.Key() methodMap, found := methodStatistics.Load(identifier) if !found { @@ -101,30 +101,30 @@ func GetMethodStatus(url common.URL, methodName string) *RpcStatus { methodActive := methodMap.(*sync.Map) rpcStatus, found := methodActive.Load(methodName) if !found { - rpcStatus = &RpcStatus{} + rpcStatus = &RPCStatus{} methodActive.Store(methodName, rpcStatus) } - status := rpcStatus.(*RpcStatus) + status := rpcStatus.(*RPCStatus) return status } func BeginCount(url common.URL, methodName string) { - beginCount0(GetUrlStatus(url)) + beginCount0(GetURLStatus(url)) beginCount0(GetMethodStatus(url, methodName)) } func EndCount(url common.URL, methodName string, elapsed int64, succeeded bool) { - endCount0(GetUrlStatus(url), elapsed, succeeded) + endCount0(GetURLStatus(url), elapsed, succeeded) endCount0(GetMethodStatus(url, methodName), elapsed, succeeded) } // private methods -func beginCount0(rpcStatus *RpcStatus) { +func beginCount0(rpcStatus *RPCStatus) { atomic.AddInt32(&rpcStatus.active, 1) } -func endCount0(rpcStatus *RpcStatus, elapsed int64, succeeded bool) { +func endCount0(rpcStatus *RPCStatus, elapsed int64, succeeded bool) { atomic.AddInt32(&rpcStatus.active, -1) atomic.AddInt32(&rpcStatus.total, 1) atomic.AddInt64(&rpcStatus.totalElapsed, elapsed) diff --git a/protocol/rpc_status_test.go b/protocol/rpc_status_test.go index cf4fa2118c41afdb36f9f79fd4ac79e3876ca529..ce2b4dc0d0fae2b271dbaeb3fdafab8858a7aa0c 100644 --- a/protocol/rpc_status_test.go +++ b/protocol/rpc_status_test.go @@ -19,7 +19,7 @@ func TestBeginCount(t *testing.T) { url, _ := common.NewURL(context.TODO(), "dubbo://192.168.10.10:20000/com.ikurento.user.UserProvider") BeginCount(url, "test") - urlStatus := GetUrlStatus(url) + urlStatus := GetURLStatus(url) methodStatus := GetMethodStatus(url, "test") methodStatus1 := GetMethodStatus(url, "test1") assert.Equal(t, int32(1), methodStatus.active) @@ -33,7 +33,7 @@ func TestEndCount(t *testing.T) { url, _ := common.NewURL(context.TODO(), "dubbo://192.168.10.10:20000/com.ikurento.user.UserProvider") EndCount(url, "test", 100, true) - urlStatus := GetUrlStatus(url) + urlStatus := GetURLStatus(url) methodStatus := GetMethodStatus(url, "test") assert.Equal(t, int32(-1), methodStatus.active) assert.Equal(t, int32(-1), urlStatus.active) @@ -54,7 +54,7 @@ func TestGetUrlStatus(t *testing.T) { defer destroy() url, _ := common.NewURL(context.TODO(), "dubbo://192.168.10.10:20000/com.ikurento.user.UserProvider") - status := GetUrlStatus(url) + status := GetURLStatus(url) assert.NotNil(t, status) assert.Equal(t, int32(0), status.total) } @@ -63,7 +63,7 @@ func Test_beginCount0(t *testing.T) { defer destroy() url, _ := common.NewURL(context.TODO(), "dubbo://192.168.10.10:20000/com.ikurento.user.UserProvider") - status := GetUrlStatus(url) + status := GetURLStatus(url) beginCount0(status) assert.Equal(t, int32(1), status.active) } @@ -73,7 +73,7 @@ func Test_All(t *testing.T) { url, _ := common.NewURL(context.TODO(), "dubbo://192.168.10.10:20000/com.ikurento.user.UserProvider") request(url, "test", 100, false, true) - urlStatus := GetUrlStatus(url) + urlStatus := GetURLStatus(url) methodStatus := GetMethodStatus(url, "test") assert.Equal(t, int32(1), methodStatus.total) assert.Equal(t, int32(1), urlStatus.total)