Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
ca30f386
Commit
ca30f386
authored
Feb 04, 2016
by
k8s-merge-robot
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #20632 from wojtek-t/fix_metrics
Auto commit by PR queue bot
parents
51b63a20
f23034d5
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
26 additions
and
25 deletions
+26
-25
apiserver.go
pkg/apiserver/apiserver.go
+1
-4
apiserver_test.go
pkg/apiserver/apiserver_test.go
+1
-1
metrics.go
pkg/apiserver/metrics/metrics.go
+1
-4
master.go
pkg/master/master.go
+13
-1
metrics.go
pkg/storage/etcd/metrics/metrics.go
+9
-0
metrics_util.go
test/e2e/metrics_util.go
+1
-15
No files found.
pkg/apiserver/apiserver.go
View file @
ca30f386
...
...
@@ -168,13 +168,10 @@ func (g *APIGroupVersion) newInstaller() *APIInstaller {
// TODO: document all handlers
// InstallSupport registers the APIServer support functions
func
InstallSupport
(
mux
Mux
,
ws
*
restful
.
WebService
,
enableResettingMetrics
bool
,
checks
...
healthz
.
HealthzChecker
)
{
func
InstallSupport
(
mux
Mux
,
ws
*
restful
.
WebService
,
checks
...
healthz
.
HealthzChecker
)
{
// TODO: convert healthz and metrics to restful and remove container arg
healthz
.
InstallHandler
(
mux
,
checks
...
)
mux
.
Handle
(
"/metrics"
,
prometheus
.
Handler
())
if
enableResettingMetrics
{
mux
.
HandleFunc
(
"/resetMetrics"
,
metrics
.
Reset
)
}
// Set up a service to return the git code version.
ws
.
Path
(
"/version"
)
...
...
pkg/apiserver/apiserver_test.go
View file @
ca30f386
...
...
@@ -297,7 +297,7 @@ func handleInternal(storage map[string]rest.Storage, admissionControl admission.
}
ws
:=
new
(
restful
.
WebService
)
InstallSupport
(
mux
,
ws
,
false
)
InstallSupport
(
mux
,
ws
)
container
.
Add
(
ws
)
return
&
defaultAPIServer
{
mux
,
container
}
}
...
...
pkg/apiserver/metrics/metrics.go
View file @
ca30f386
...
...
@@ -17,8 +17,6 @@ limitations under the License.
package
metrics
import
(
"io"
"net/http"
"strconv"
"time"
...
...
@@ -68,9 +66,8 @@ func Monitor(verb, resource *string, client string, httpCode *int, reqStart time
requestLatenciesSummary
.
WithLabelValues
(
*
verb
,
*
resource
)
.
Observe
(
float64
((
time
.
Since
(
reqStart
))
/
time
.
Microsecond
))
}
func
Reset
(
w
http
.
ResponseWriter
,
req
*
http
.
Request
)
{
func
Reset
()
{
requestCounter
.
Reset
()
requestLatencies
.
Reset
()
requestLatenciesSummary
.
Reset
()
io
.
WriteString
(
w
,
"metrics reset
\n
"
)
}
pkg/master/master.go
View file @
ca30f386
...
...
@@ -18,6 +18,7 @@ package master
import
(
"fmt"
"io"
"net"
"net/http"
"net/url"
...
...
@@ -32,6 +33,7 @@ import (
"k8s.io/kubernetes/pkg/apimachinery/registered"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/apiserver"
apiservermetrics
"k8s.io/kubernetes/pkg/apiserver/metrics"
"k8s.io/kubernetes/pkg/genericapiserver"
"k8s.io/kubernetes/pkg/healthz"
kubeletclient
"k8s.io/kubernetes/pkg/kubelet/client"
...
...
@@ -68,6 +70,7 @@ import (
thirdpartyresourcedataetcd
"k8s.io/kubernetes/pkg/registry/thirdpartyresourcedata/etcd"
"k8s.io/kubernetes/pkg/runtime"
"k8s.io/kubernetes/pkg/storage"
etcdmetrics
"k8s.io/kubernetes/pkg/storage/etcd/metrics"
etcdutil
"k8s.io/kubernetes/pkg/storage/etcd/util"
"k8s.io/kubernetes/pkg/util"
"k8s.io/kubernetes/pkg/util/sets"
...
...
@@ -158,6 +161,12 @@ func New(c *Config) *Master {
return
m
}
func
resetMetrics
(
w
http
.
ResponseWriter
,
req
*
http
.
Request
)
{
apiservermetrics
.
Reset
()
etcdmetrics
.
Reset
()
io
.
WriteString
(
w
,
"metrics reset
\n
"
)
}
func
(
m
*
Master
)
InstallAPIs
(
c
*
Config
)
{
apiGroupsInfo
:=
[]
genericapiserver
.
APIGroupInfo
{}
...
...
@@ -190,7 +199,10 @@ func (m *Master) InstallAPIs(c *Config) {
}
// TODO(nikhiljindal): Refactor generic parts of support services (like /versions) to genericapiserver.
apiserver
.
InstallSupport
(
m
.
MuxHelper
,
m
.
RootWebService
,
c
.
EnableProfiling
,
healthzChecks
...
)
apiserver
.
InstallSupport
(
m
.
MuxHelper
,
m
.
RootWebService
,
healthzChecks
...
)
if
c
.
EnableProfiling
{
m
.
MuxHelper
.
HandleFunc
(
"/resetMetrics"
,
resetMetrics
)
}
// Install root web services
m
.
HandlerContainer
.
Add
(
m
.
RootWebService
)
...
...
pkg/storage/etcd/metrics/metrics.go
View file @
ca30f386
...
...
@@ -102,3 +102,12 @@ func ObserveCacheMiss() {
func
ObserveNewEntry
()
{
cacheEntryCounter
.
Inc
()
}
func
Reset
()
{
cacheHitCounter
.
Set
(
0
)
cacheMissCounter
.
Set
(
0
)
cacheEntryCounter
.
Set
(
0
)
// TODO: Reset cacheAddLatency.
// TODO: Reset cacheGetLatency.
etcdRequestLatenciesSummary
.
Reset
()
}
test/e2e/metrics_util.go
View file @
ca30f386
...
...
@@ -92,25 +92,16 @@ func (m *MetricsForE2E) PrintJSON() string {
var
InterestingApiServerMetrics
=
[]
string
{
"apiserver_request_count"
,
"apiserver_request_latencies_
bucket
"
,
"apiserver_request_latencies_
summary
"
,
"etcd_helper_cache_entry_count"
,
"etcd_helper_cache_hit_count"
,
"etcd_helper_cache_miss_count"
,
"etcd_request_cache_add_latencies_summary"
,
"etcd_request_cache_get_latencies_summary"
,
"etcd_request_latencies_summary"
,
"go_gc_duration_seconds"
,
"go_goroutines"
,
"process_cpu_seconds_total"
,
"process_open_fds"
,
"process_resident_memory_bytes"
,
"process_start_time_seconds"
,
"process_virtual_memory_bytes"
,
}
var
InterestingKubeletMetrics
=
[]
string
{
"go_gc_duration_seconds"
,
"go_goroutines"
,
"kubelet_container_manager_latency_microseconds"
,
"kubelet_docker_errors"
,
"kubelet_docker_operations_latency_microseconds"
,
...
...
@@ -119,11 +110,6 @@ var InterestingKubeletMetrics = []string{
"kubelet_pod_worker_latency_microseconds"
,
"kubelet_pod_worker_start_latency_microseconds"
,
"kubelet_sync_pods_latency_microseconds"
,
"process_cpu_seconds_total"
,
"process_open_fds"
,
"process_resident_memory_bytes"
,
"process_start_time_seconds"
,
"process_virtual_memory_bytes"
,
}
// Dashboard metrics
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment