[jira] [Updated] (KNOX-2954) Gateway service metric name contain hbase rowkey led to frequently full gc

2023-09-04 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Status: Patch Available  (was: Open)

fix at https://github.com/apache/knox/pull/791

> Gateway service metric name contain hbase rowkey led to frequently full gc
> --
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks occurs in class 
> org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 
> This is the analysis result generated by MAT
> !mat_heap_leak_suspects_result.png!
>  
> This is detail of problem Suspect 3
> !image-2023-09-01-16-40-35-876.png!
>  
> I found that many metrics which starting with service contain hbase rowkey by 
> using visualVM tool. These metrics were generted when I used get api to query 
> data from hbase. I think that name of service metric should not contain 
> rowkey.
>  
> This is an example of metric name, the query command is 
> {code:java}
> curl -ik -u xx:xx   \
>  -H "Accept: text/xml"  \
>  -X GET \
>  'https://localhost:8443/gateway/sandbox/hbase/demo/row[1-9]' {code}
> !image-2023-09-01-16-55-30-378.png!
>  
> The reason for this problem is that client and service metric both call the 
> InstrUtils.getServiceResourcePath function to get resource path , but the 
> parameters they use are different when build metric name. Suppose the request 
> url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
> |https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
>  building a client metric name, the parameter of the calling 
> InstrUtils.getServiceResourcePath function is 
> httpServletRequest.getPathInfo(), httpServletRequest.getPathInfo() value is 
> /hbase/demo/row9. When building a service metric name, the parameter of the 
> calling InstrUtils.getServiceResourcePath function is RequestLine.getUri(), 
> RequestLine.getUri() value is /demo/row9. The purpose of 
> InstrUtils.getServiceResourcePath is to obtain the first two elements of 
> path. So service metric name contains rowkey.
> I think that we should only obtain the first elements of path, when building 
> service metric name.
> The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]
> !image-2023-09-01-17-37-51-597.png!
>  
>  
>  
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2954) Gateway service metric name contain hbase rowkey led to frequently full gc

2023-09-01 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Description: 
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name, the query command is 
{code:java}
curl -ik -u xx:xx   \
 -H "Accept: text/xml"  \
 -X GET \
 'https://localhost:8443/gateway/sandbox/hbase/demo/row[1-9]' {code}
!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
httpServletRequest.getPathInfo() value is /hbase/demo/row9. When building a 
service metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is RequestLine.getUri(), 
RequestLine.getUri() value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 

  was:
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
httpServletRequest.getPathInfo() value is /hbase/demo/row9. When building a 
service metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is RequestLine.getUri(), 
RequestLine.getUri() value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 


> Gateway service metric name contain hbase rowkey led to frequently full gc
> --
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks occurs in class 
> 

[jira] [Updated] (KNOX-2954) Gateway service metric name contain hbase rowkey led to frequently full gc

2023-09-01 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Description: 
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
httpServletRequest.getPathInfo() value is /hbase/demo/row9. When building a 
service metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is RequestLine.getUri(), 
RequestLine.getUri() value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 

  was:
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
its value is /hbase/demo/row9. When building a service metric name, the 
parameter of the calling InstrUtils.getServiceResourcePath function is 
RequestLine.getUri(), its value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 


> Gateway service metric name contain hbase rowkey led to frequently full gc
> --
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks occurs in class 
> org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 
> This is the analysis result generated by MAT
> !mat_heap_leak_suspects_result.png!
>  
> This is detail of problem Suspect 3
> !image-2023-09-01-16-40-35-876.png!
>  
> I found that many 

[jira] [Updated] (KNOX-2954) Gateway name of service metric contain hbase rowkey led to frequently full gc

2023-09-01 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Summary: Gateway name of service metric contain hbase rowkey led to 
frequently full gc  (was: Gateway metric name of service contain hbase rowkey 
led to frequently full gc)

> Gateway name of service metric contain hbase rowkey led to frequently full gc
> -
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks occurs in class 
> org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 
> This is the analysis result generated by MAT
> !mat_heap_leak_suspects_result.png!
>  
> This is detail of problem Suspect 3
> !image-2023-09-01-16-40-35-876.png!
>  
> I found that many metrics which starting with service contain hbase rowkey by 
> using visualVM tool. These metrics were generted when I used get api to query 
> data from hbase. I think that name of service metric should not contain 
> rowkey.
>  
> This is an example of metric name
> !image-2023-09-01-16-55-30-378.png!
>  
> The reason for this problem is that client and service metric both call the 
> InstrUtils.getServiceResourcePath function to get resource path , but the 
> parameters they use are different when build metric name. Suppose the request 
> url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
> |https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
>  building a client metric name, the parameter of the calling 
> InstrUtils.getServiceResourcePath function is 
> httpServletRequest.getPathInfo(), its value is /hbase/demo/row9. When 
> building a service metric name, the parameter of the calling 
> InstrUtils.getServiceResourcePath function is RequestLine.getUri(), its value 
> is /demo/row9. The purpose of InstrUtils.getServiceResourcePath is to obtain 
> the first two elements of path. So service metric name contains rowkey.
> I think that we should only obtain the first elements of path, when building 
> service metric name.
> The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]
> !image-2023-09-01-17-37-51-597.png!
>  
>  
>  
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2954) Gateway metric name of service contain hbase rowkey led to frequently full gc

2023-09-01 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Summary: Gateway metric name of service contain hbase rowkey led to 
frequently full gc  (was: Gateway metric name of service contain hbase rowkey 
led to full gc)

> Gateway metric name of service contain hbase rowkey led to frequently full gc
> -
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks occurs in class 
> org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 
> This is the analysis result generated by MAT
> !mat_heap_leak_suspects_result.png!
>  
> This is detail of problem Suspect 3
> !image-2023-09-01-16-40-35-876.png!
>  
> I found that many metrics which starting with service contain hbase rowkey by 
> using visualVM tool. These metrics were generted when I used get api to query 
> data from hbase. I think that name of service metric should not contain 
> rowkey.
>  
> This is an example of metric name
> !image-2023-09-01-16-55-30-378.png!
>  
> The reason for this problem is that client and service metric both call the 
> InstrUtils.getServiceResourcePath function to get resource path , but the 
> parameters they use are different when build metric name. Suppose the request 
> url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
> |https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
>  building a client metric name, the parameter of the calling 
> InstrUtils.getServiceResourcePath function is 
> httpServletRequest.getPathInfo(), its value is /hbase/demo/row9. When 
> building a service metric name, the parameter of the calling 
> InstrUtils.getServiceResourcePath function is RequestLine.getUri(), its value 
> is /demo/row9. The purpose of InstrUtils.getServiceResourcePath is to obtain 
> the first two elements of path. So service metric name contains rowkey.
> I think that we should only obtain the first elements of path, when building 
> service metric name.
> The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]
> !image-2023-09-01-17-37-51-597.png!
>  
>  
>  
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2954) Gateway service metric name contain hbase rowkey led to frequently full gc

2023-09-01 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Summary: Gateway service metric name contain hbase rowkey led to frequently 
full gc  (was: Gateway name of service metric contain hbase rowkey led to 
frequently full gc)

> Gateway service metric name contain hbase rowkey led to frequently full gc
> --
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks occurs in class 
> org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 
> This is the analysis result generated by MAT
> !mat_heap_leak_suspects_result.png!
>  
> This is detail of problem Suspect 3
> !image-2023-09-01-16-40-35-876.png!
>  
> I found that many metrics which starting with service contain hbase rowkey by 
> using visualVM tool. These metrics were generted when I used get api to query 
> data from hbase. I think that name of service metric should not contain 
> rowkey.
>  
> This is an example of metric name
> !image-2023-09-01-16-55-30-378.png!
>  
> The reason for this problem is that client and service metric both call the 
> InstrUtils.getServiceResourcePath function to get resource path , but the 
> parameters they use are different when build metric name. Suppose the request 
> url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
> |https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
>  building a client metric name, the parameter of the calling 
> InstrUtils.getServiceResourcePath function is 
> httpServletRequest.getPathInfo(), its value is /hbase/demo/row9. When 
> building a service metric name, the parameter of the calling 
> InstrUtils.getServiceResourcePath function is RequestLine.getUri(), its value 
> is /demo/row9. The purpose of InstrUtils.getServiceResourcePath is to obtain 
> the first two elements of path. So service metric name contains rowkey.
> I think that we should only obtain the first elements of path, when building 
> service metric name.
> The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]
> !image-2023-09-01-17-37-51-597.png!
>  
>  
>  
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2954) Gateway metric name of service contain hbase rowkey led to full gc

2023-09-01 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Description: 
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
its value is /hbase/demo/row9. When building a service metric name, the 
parameter of the calling InstrUtils.getServiceResourcePath function is 
RequestLine.getUri(), its value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [pr791|https://github.com/apache/knox/pull/791]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 

  was:
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
its value is /hbase/demo/row9. When building a service metric name, the 
parameter of the calling InstrUtils.getServiceResourcePath function is 
RequestLine.getUri(), its value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [PR790|https://github.com/apache/knox/pull/790]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 


> Gateway metric name of service contain hbase rowkey led to full gc
> --
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks occurs in class 
> org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 
> This is the analysis result generated by MAT
> !mat_heap_leak_suspects_result.png!
>  
> This is detail of problem Suspect 3
> !image-2023-09-01-16-40-35-876.png!
>  
> I found that many metrics which starting with service contain hbase rowkey by 
> 

[jira] [Updated] (KNOX-2954) Gateway metric name of service contain hbase rowkey led to full gc

2023-09-01 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Description: 
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
its value is /hbase/demo/row9. When building a service metric name, the 
parameter of the calling InstrUtils.getServiceResourcePath function is 
RequestLine.getUri(), its value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [PR790|https://github.com/apache/knox/pull/790]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 

  was:
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks The leak occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
its value is /hbase/demo/row9. When building a service metric name, the 
parameter of the calling InstrUtils.getServiceResourcePath function is 
RequestLine.getUri(), its value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [PR790|https://github.com/apache/knox/pull/790]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 


> Gateway metric name of service contain hbase rowkey led to full gc
> --
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks occurs in class 
> org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 
> This is the analysis result generated by MAT
> !mat_heap_leak_suspects_result.png!
>  
> This is detail of problem Suspect 3
> !image-2023-09-01-16-40-35-876.png!
>  
> I found that many metrics which starting with service contain hbase 

[jira] [Updated] (KNOX-2954) Gateway metric name of service contain hbase rowkey led to full gc

2023-09-01 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2954:
-
Description: 
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks The leak occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
its value is /hbase/demo/row9. When building a service metric name, the 
parameter of the calling InstrUtils.getServiceResourcePath function is 
RequestLine.getUri(), its value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  [PR790|https://github.com/apache/knox/pull/790]

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 

  was:
Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks The leak occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
its value is /hbase/demo/row9. When building a service metric name, the 
parameter of the calling InstrUtils.getServiceResourcePath function is 
RequestLine.getUri(), its value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  ,

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 


> Gateway metric name of service contain hbase rowkey led to full gc
> --
>
> Key: KNOX-2954
> URL: https://issues.apache.org/jira/browse/KNOX-2954
> Project: Apache Knox
>  Issue Type: Bug
>  Components: Metrics, Server
>Reporter: liang.feng
>Priority: Critical
> Attachments: image-2023-09-01-16-40-35-876.png, 
> image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
> image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png
>
>
> Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
> analyzed dump file with mat tool. I found some leak suspects about jmx 
> metric, These leaks The leak occurs in class 
> org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 
> This is the analysis result generated by MAT
> !mat_heap_leak_suspects_result.png!
>  
> This is detail of problem Suspect 3
> !image-2023-09-01-16-40-35-876.png!
>  
> I found that many metrics which starting with service contain hbase rowkey by 
> using visualVM tool. 

[jira] [Created] (KNOX-2954) Gateway metric name of service contain hbase rowkey led to full gc

2023-09-01 Thread liang.feng (Jira)
liang.feng created KNOX-2954:


 Summary: Gateway metric name of service contain hbase rowkey led 
to full gc
 Key: KNOX-2954
 URL: https://issues.apache.org/jira/browse/KNOX-2954
 Project: Apache Knox
  Issue Type: Bug
  Components: Metrics, Server
Reporter: liang.feng
 Attachments: image-2023-09-01-16-40-35-876.png, 
image-2023-09-01-16-49-57-346.png, image-2023-09-01-16-55-30-378.png, 
image-2023-09-01-17-37-51-597.png, mat_heap_leak_suspects_result.png

Our Gateway Server frequently full gc in a few days. I dumped jvm heap and 
analyzed dump file with mat tool. I found some leak suspects about jmx metric, 
These leaks The leak occurs in class 
org.apache.knox.gateway.services.metrics.impl.DefaultMetricsService. 

This is the analysis result generated by MAT

!mat_heap_leak_suspects_result.png!

 

This is detail of problem Suspect 3

!image-2023-09-01-16-40-35-876.png!

 

I found that many metrics which starting with service contain hbase rowkey by 
using visualVM tool. These metrics were generted when I used get api to query 
data from hbase. I think that name of service metric should not contain rowkey.

 

This is an example of metric name

!image-2023-09-01-16-55-30-378.png!

 

The reason for this problem is that client and service metric both call the 
InstrUtils.getServiceResourcePath function to get resource path , but the 
parameters they use are different when build metric name. Suppose the request 
url is [https://localhost:8443/gateway/sandbox/hbase/demo/row9. 
|https://bd-hbase-dev02.zeus.lianjia.com:8443/gateway/sandbox/hbase/demo/row9]When
 building a client metric name, the parameter of the calling 
InstrUtils.getServiceResourcePath function is httpServletRequest.getPathInfo(), 
its value is /hbase/demo/row9. When building a service metric name, the 
parameter of the calling InstrUtils.getServiceResourcePath function is 
RequestLine.getUri(), its value is /demo/row9. The purpose of 
InstrUtils.getServiceResourcePath is to obtain the first two elements of path. 
So service metric name contains rowkey.

I think that we should only obtain the first elements of path, when building 
service metric name.

The effect after applying the  ,

!image-2023-09-01-17-37-51-597.png!

 

 

 

 

 

 

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


[ https://issues.apache.org/jira/browse/KNOX-2953 ]


liang.feng deleted comment on KNOX-2953:
--

was (Author: a516072575):
[PR789|https://github.com/apache/knox/pull/789]

> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png, 
> gateway-metric-client-after-fix.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> [https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
> !gateway-client-metric.png!  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified.
>  
> The effect after applying the [PR789|https://github.com/apache/knox/pull/789]
> !gateway-metric-client-after-fix.png!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2953:
-
Description: 
The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at [#
[https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name

!gateway-client-metric.png!  
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified.

 

The effect after applying the [PR789|https://github.com/apache/knox/pull/789]

!gateway-metric-client-after-fix.png!

  was:
The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at [#
[https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name

!gateway-client-metric.png!  
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified


> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png, 
> gateway-metric-client-after-fix.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> [https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
> !gateway-client-metric.png!  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified.
>  
> The effect after applying the [PR789|https://github.com/apache/knox/pull/789]
> !gateway-metric-client-after-fix.png!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2953:
-
Attachment: gateway-metric-client-after-fix.png

> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png, 
> gateway-metric-client-after-fix.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> [https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
> !gateway-client-metric.png!  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2953:
-
Description: 
The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at [#
[https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name

!gateway-client-metric.png!  
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified

  was:
The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at [#
[https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name

 
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified


> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> [https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
> !gateway-client-metric.png!  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2953:
-
Attachment: gateway-client-metric.png

> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
> !gateway-client-metric.png!
>  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2953:
-
Description: 
The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at [#
[https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name

 
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified

  was:
The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at [#
https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name
!gateway-client-metric.png!
 
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified


> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> [https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
>  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2953:
-
Attachment: (was: gateway-client-metric.png)

> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
> !gateway-client-metric.png!
>  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2953:
-
Status: Patch Available  (was: Open)

[PR789|https://github.com/apache/knox/pull/789]

> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
> !gateway-client-metric.png!
>  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)


 [ 
https://issues.apache.org/jira/browse/KNOX-2953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

liang.feng updated KNOX-2953:
-
Description: 
The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at [#
https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name
!gateway-client-metric.png!
 
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified

  was:
The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at 
[InstrHttpClientBuilderProvider.methodNameString|https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68
]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name
!gateway-client-metric.png!
 
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified


> Uniform name of http method of client metric to lowerCase
> -
>
> Key: KNOX-2953
> URL: https://issues.apache.org/jira/browse/KNOX-2953
> Project: Apache Knox
>  Issue Type: Improvement
>  Components: Metrics
>Reporter: liang.feng
>Priority: Minor
> Attachments: gateway-client-metric.png
>
>
> The metric name starting with client should set httpMethod to lowercase, when 
> build metric name, just like the service metric name at [#
> https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68]
>  
> There are many similar metric names now,due to name of httpMethod is 
> non-uniform. 
> For example:
> When I query from HBase with curl command , The command curl -X Get 和 curl -X 
> GET will generate two similar metric name
> !gateway-client-metric.png!
>  
> We should uniformly change the method name to lowercase  so that the metric 
> names of service and client are unified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (KNOX-2953) Uniform name of http method of client metric to lowerCase

2023-08-29 Thread liang.feng (Jira)
liang.feng created KNOX-2953:


 Summary: Uniform name of http method of client metric to lowerCase
 Key: KNOX-2953
 URL: https://issues.apache.org/jira/browse/KNOX-2953
 Project: Apache Knox
  Issue Type: Improvement
  Components: Metrics
Reporter: liang.feng
 Attachments: gateway-client-metric.png

The metric name starting with client should set httpMethod to lowercase, when 
build metric name, just like the service metric name at 
[InstrHttpClientBuilderProvider.methodNameString|https://github.com/apache/knox/blob/master/gateway-server/src/main/java/org/apache/knox/gateway/services/metrics/impl/instr/InstrHttpClientBuilderProvider.java#L68
]
 
There are many similar metric names now,due to name of httpMethod is 
non-uniform. 
For example:
When I query from HBase with curl command , The command curl -X Get 和 curl -X 
GET will generate two similar metric name
!gateway-client-metric.png!
 
We should uniformly change the method name to lowercase  so that the metric 
names of service and client are unified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)