Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feature: redo routesrv metrics #2710

Merged
merged 1 commit into from
Nov 1, 2023
Merged

Conversation

szuecs
Copy link
Member

@szuecs szuecs commented Oct 31, 2023

closed #2631 in order to have the open PR with base cw2023freeze instead of master

run routesrv example in case you have kubectl proxy running:

% bin/routesrv -kubernetes -enable-swarm -kubernetes-redis-service-name skipper-ingress-redis -kubernetes-redis-service-namespace kube-system -enable-profile
% curl http://127.0.0.1:9911/metrics
# HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles.
# TYPE go_gc_duration_seconds summary
go_gc_duration_seconds{quantile="0"} 3.8953e-05
go_gc_duration_seconds{quantile="0.25"} 7.7036e-05
go_gc_duration_seconds{quantile="0.5"} 7.9229e-05
go_gc_duration_seconds{quantile="0.75"} 8.8677e-05
go_gc_duration_seconds{quantile="1"} 0.000158278
go_gc_duration_seconds_sum 0.000829073
go_gc_duration_seconds_count 10
...
# HELP go_memstats_sys_bytes Number of bytes obtained from system.
# TYPE go_memstats_sys_bytes gauge
go_memstats_sys_bytes 2.5531656e+07
# HELP go_threads Number of OS threads created.
# TYPE go_threads gauge
go_threads 21
# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds.
# TYPE process_cpu_seconds_total counter
process_cpu_seconds_total 0.32
# HELP process_max_fds Maximum number of open file descriptors.
# TYPE process_max_fds gauge
process_max_fds 60000
# HELP process_open_fds Number of open file descriptors.
# TYPE process_open_fds gauge
process_open_fds 10
# HELP process_resident_memory_bytes Resident memory size in bytes.
# TYPE process_resident_memory_bytes gauge
process_resident_memory_bytes 4.3958272e+07
# HELP process_start_time_seconds Start time of the process since unix epoch in seconds.
# TYPE process_start_time_seconds gauge
process_start_time_seconds 1.69876608374e+09
# HELP process_virtual_memory_bytes Virtual memory size in bytes.
# TYPE process_virtual_memory_bytes gauge
process_virtual_memory_bytes 2.747961344e+09
# HELP process_virtual_memory_max_bytes Maximum amount of virtual memory available in bytes.
# TYPE process_virtual_memory_max_bytes gauge
process_virtual_memory_max_bytes 1.8446744073709552e+19
# HELP routesrv_backend_combined_duration_seconds Duration in seconds of a proxy backend combined.
# TYPE routesrv_backend_combined_duration_seconds histogram
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="0.005"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="0.01"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="0.025"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="0.05"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="0.1"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="0.25"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="0.5"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="1"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="2.5"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="5"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="10"} 5
routesrv_backend_combined_duration_seconds_bucket{version="v0.18.38-8-g7922c154",le="+Inf"} 5
routesrv_backend_combined_duration_seconds_sum{version="v0.18.38-8-g7922c154"} 0.001349441
routesrv_backend_combined_duration_seconds_count{version="v0.18.38-8-g7922c154"} 5
# HELP routesrv_backend_duration_seconds Duration in seconds of a proxy backend.
# TYPE routesrv_backend_duration_seconds histogram
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="0.005"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="0.01"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="0.025"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="0.05"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="0.1"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="0.25"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="0.5"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="1"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="2.5"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="5"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="10"} 5
routesrv_backend_duration_seconds_bucket{host="",route="routersv",version="v0.18.38-8-g7922c154",le="+Inf"} 5
routesrv_backend_duration_seconds_sum{host="",route="routersv",version="v0.18.38-8-g7922c154"} 0.001349441
routesrv_backend_duration_seconds_count{host="",route="routersv",version="v0.18.38-8-g7922c154"} 5
# HELP routesrv_custom_gauges Gauges number of custom metrics.
# TYPE routesrv_custom_gauges gauge
routesrv_custom_gauges{key="polling_started_timestamp",version="v0.18.38-8-g7922c154"} 1.69876646881321e+09
routesrv_custom_gauges{key="redis_endpoints",version="v0.18.38-8-g7922c154"} 1
routesrv_custom_gauges{key="routes.byte",version="v0.18.38-8-g7922c154"} 91378
routesrv_custom_gauges{key="routes.initialized_timestamp",version="v0.18.38-8-g7922c154"} 1.6987664689696188e+09
routesrv_custom_gauges{key="routes.total",version="v0.18.38-8-g7922c154"} 258
routesrv_custom_gauges{key="routes.updated_timestamp",version="v0.18.38-8-g7922c154"} 1.698766468969631e+09
# HELP routesrv_custom_total Total number of custom metrics.
# TYPE routesrv_custom_total counter
routesrv_custom_total{key="200",version="v0.18.38-8-g7922c154"} 5

profiling:

% curl http://127.0.0.1:9911/debug/pprof/
<html>
<head>
<title>/debug/pprof/</title>
<style>
.profile-name{
        display:inline-block;
        width:6rem;
}
</style>
</head>
<body>
/debug/pprof/
...

@szuecs szuecs force-pushed the feature/routesrv-metrics branch 2 times, most recently from 241fafb to 7922c15 Compare October 31, 2023 15:36
@MustafaSaber
Copy link
Member

👍

feature: routesrv enable profiling
feature: routesrv split supportListener for metrics and profiling from the main listener
feature: routesrv shutdown supportServer gracefully
test: routesrv shutdown main listener and supportListener
test: add more routesrv coverage to reach close to 80%
doc: add routesrv metrics and profiling docs

Signed-off-by: Sandor Szücs <[email protected]>
@szuecs szuecs force-pushed the feature/routesrv-metrics branch from 7922c15 to e042cda Compare October 31, 2023 17:57
@szuecs
Copy link
Member Author

szuecs commented Oct 31, 2023

👍

1 similar comment
@MustafaSaber
Copy link
Member

👍

@szuecs szuecs merged commit d8e4f5f into cw2023freeze Nov 1, 2023
4 checks passed
@szuecs szuecs deleted the feature/routesrv-metrics branch November 1, 2023 09:44
szuecs added a commit that referenced this pull request Nov 7, 2023
feature: routesrv enable profiling
feature: routesrv split supportListener for metrics and profiling from the main listener
feature: routesrv shutdown supportServer gracefully
test: routesrv shutdown main listener and supportListener
test: add more routesrv coverage to reach close to 80%
doc: add routesrv metrics and profiling docs

Signed-off-by: Sandor Szücs <[email protected]>
RomanZavodskikh pushed a commit that referenced this pull request Nov 27, 2023
feature: routesrv enable profiling
feature: routesrv split supportListener for metrics and profiling from the main listener
feature: routesrv shutdown supportServer gracefully
test: routesrv shutdown main listener and supportListener
test: add more routesrv coverage to reach close to 80%
doc: add routesrv metrics and profiling docs

Signed-off-by: Sandor Szücs <[email protected]>
RomanZavodskikh pushed a commit that referenced this pull request Nov 27, 2023
feature: routesrv enable profiling
feature: routesrv split supportListener for metrics and profiling from the main listener
feature: routesrv shutdown supportServer gracefully
test: routesrv shutdown main listener and supportListener
test: add more routesrv coverage to reach close to 80%
doc: add routesrv metrics and profiling docs

Signed-off-by: Sandor Szücs <[email protected]>
AlexanderYastrebov pushed a commit that referenced this pull request Nov 27, 2023
feature: routesrv enable profiling
feature: routesrv split supportListener for metrics and profiling from the main listener
feature: routesrv shutdown supportServer gracefully
test: routesrv shutdown main listener and supportListener
test: add more routesrv coverage to reach close to 80%
doc: add routesrv metrics and profiling docs

Signed-off-by: Sandor Szücs <[email protected]>
AlexanderYastrebov pushed a commit that referenced this pull request Nov 27, 2023
feature: routesrv enable profiling
feature: routesrv split supportListener for metrics and profiling from the main listener
feature: routesrv shutdown supportServer gracefully
test: routesrv shutdown main listener and supportListener
test: add more routesrv coverage to reach close to 80%
doc: add routesrv metrics and profiling docs

Signed-off-by: Sandor Szücs <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants