mirror of
https://github.com/kyverno/kyverno.git
synced 2025-03-10 18:06:55 +00:00
25 lines
739 B
Go
25 lines
739 B
Go
|
package utils
|
||
|
|
||
|
import "github.com/kyverno/kyverno/pkg/metrics"
|
||
|
|
||
|
type ClientQueryMetric interface {
|
||
|
Record(clientQueryOperation metrics.ClientQueryOperation, clientType metrics.ClientType, resourceKind string, resourceNamespace string)
|
||
|
}
|
||
|
|
||
|
type metricsConfig struct {
|
||
|
metricsConfig *metrics.MetricsConfig
|
||
|
}
|
||
|
|
||
|
func NewClientQueryMetric(m *metrics.MetricsConfig) ClientQueryMetric {
|
||
|
return &metricsConfig{
|
||
|
metricsConfig: m,
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func (c *metricsConfig) Record(clientQueryOperation metrics.ClientQueryOperation, clientType metrics.ClientType, resourceKind string, resourceNamespace string) {
|
||
|
if c.metricsConfig == nil {
|
||
|
return
|
||
|
}
|
||
|
c.metricsConfig.RecordClientQueries(clientQueryOperation, clientType, resourceKind, resourceNamespace)
|
||
|
}
|