...
1
16
17 package rest
18
19 import (
20 "sync"
21
22 "k8s.io/component-base/metrics"
23 "k8s.io/component-base/metrics/legacyregistry"
24 )
25
26 const (
27 namespace = "kube_apiserver"
28 subsystem = "pod_logs"
29
30 usageEnforce = "enforce_tls"
31 usageSkipAllowed = "skip_tls_allowed"
32 )
33
34 var (
35
36 podLogsUsage = metrics.NewCounterVec(
37 &metrics.CounterOpts{
38 Namespace: namespace,
39 Subsystem: subsystem,
40 Name: "insecure_backend_total",
41 Help: "Total number of requests for pods/logs sliced by usage type: enforce_tls, skip_tls_allowed, skip_tls_denied",
42 StabilityLevel: metrics.ALPHA,
43 },
44 []string{"usage"},
45 )
46
47
48 deprecatedPodLogsUsage = metrics.NewCounterVec(
49 &metrics.CounterOpts{
50 Namespace: namespace,
51 Subsystem: subsystem,
52 Name: "pods_logs_insecure_backend_total",
53 Help: "Total number of requests for pods/logs sliced by usage type: enforce_tls, skip_tls_allowed, skip_tls_denied",
54 StabilityLevel: metrics.ALPHA,
55 DeprecatedVersion: "1.27.0",
56 },
57 []string{"usage"},
58 )
59
60
61 podLogsTLSFailure = metrics.NewCounter(
62 &metrics.CounterOpts{
63 Namespace: namespace,
64 Subsystem: subsystem,
65 Name: "backend_tls_failure_total",
66 Help: "Total number of requests for pods/logs that failed due to kubelet server TLS verification",
67 StabilityLevel: metrics.ALPHA,
68 },
69 )
70
71
72 deprecatedPodLogsTLSFailure = metrics.NewCounter(
73 &metrics.CounterOpts{
74 Namespace: namespace,
75 Subsystem: subsystem,
76 Name: "pods_logs_backend_tls_failure_total",
77 Help: "Total number of requests for pods/logs that failed due to kubelet server TLS verification",
78 StabilityLevel: metrics.ALPHA,
79 DeprecatedVersion: "1.27.0",
80 },
81 )
82 )
83
84 var registerMetricsOnce sync.Once
85
86 func registerMetrics() {
87 registerMetricsOnce.Do(func() {
88 legacyregistry.MustRegister(podLogsUsage)
89 legacyregistry.MustRegister(podLogsTLSFailure)
90 legacyregistry.MustRegister(deprecatedPodLogsUsage)
91 legacyregistry.MustRegister(deprecatedPodLogsTLSFailure)
92 })
93 }
94
View as plain text