Merge pull request #116053 from aramase/aramase/c/rm_dek_interarrival_kmsv2

[KMSv2] remove setting `dek_cache_inter_arrival_time_seconds` for KMSv2 only
This commit is contained in:
Kubernetes Prow Robot 2023-02-24 19:00:13 -08:00 committed by GitHub
commit c48a7971e3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 10 deletions

View File

@ -96,8 +96,6 @@ func newEnvelopeTransformerWithClock(envelopeService kmsservice.Service, provide
// TransformFromStorage decrypts data encrypted by this transformer using envelope encryption. // TransformFromStorage decrypts data encrypted by this transformer using envelope encryption.
func (t *envelopeTransformer) TransformFromStorage(ctx context.Context, data []byte, dataCtx value.Context) ([]byte, bool, error) { func (t *envelopeTransformer) TransformFromStorage(ctx context.Context, data []byte, dataCtx value.Context) ([]byte, bool, error) {
metrics.RecordArrival(metrics.FromStorageLabel, time.Now())
// Deserialize the EncryptedObject from the data. // Deserialize the EncryptedObject from the data.
encryptedObject, err := t.doDecode(data) encryptedObject, err := t.doDecode(data)
if err != nil { if err != nil {
@ -148,7 +146,6 @@ func (t *envelopeTransformer) TransformFromStorage(ctx context.Context, data []b
// TransformToStorage encrypts data to be written to disk using envelope encryption. // TransformToStorage encrypts data to be written to disk using envelope encryption.
func (t *envelopeTransformer) TransformToStorage(ctx context.Context, data []byte, dataCtx value.Context) ([]byte, error) { func (t *envelopeTransformer) TransformToStorage(ctx context.Context, data []byte, dataCtx value.Context) ([]byte, error) {
metrics.RecordArrival(metrics.ToStorageLabel, time.Now())
newKey, err := generateKey(32) newKey, err := generateKey(32)
if err != nil { if err != nil {
return nil, err return nil, err

View File

@ -638,13 +638,11 @@ func TestEnvelopeMetrics(t *testing.T) {
}, },
} }
metrics.DekCacheInterArrivals.Reset()
metrics.KeyIDHashTotal.Reset() metrics.KeyIDHashTotal.Reset()
metrics.InvalidKeyIDFromStatusTotal.Reset() metrics.InvalidKeyIDFromStatusTotal.Reset()
for _, tt := range testCases { for _, tt := range testCases {
t.Run(tt.desc, func(t *testing.T) { t.Run(tt.desc, func(t *testing.T) {
defer metrics.DekCacheInterArrivals.Reset()
defer metrics.KeyIDHashTotal.Reset() defer metrics.KeyIDHashTotal.Reset()
defer metrics.InvalidKeyIDFromStatusTotal.Reset() defer metrics.InvalidKeyIDFromStatusTotal.Reset()
ctx := testContext(t) ctx := testContext(t)

View File

@ -66,6 +66,7 @@ var (
keyIDHashStatusLastTimestampSecondsMetricLabels *lru.Cache keyIDHashStatusLastTimestampSecondsMetricLabels *lru.Cache
cacheSize int = 10 cacheSize int = 10
// This metric is only used for KMS v1 API.
dekCacheFillPercent = metrics.NewGauge( dekCacheFillPercent = metrics.NewGauge(
&metrics.GaugeOpts{ &metrics.GaugeOpts{
Namespace: namespace, Namespace: namespace,
@ -75,8 +76,9 @@ var (
StabilityLevel: metrics.ALPHA, StabilityLevel: metrics.ALPHA,
}, },
) )
// These metrics are made public to be used by unit tests.
DekCacheInterArrivals = metrics.NewHistogramVec( // This metric is only used for KMS v1 API.
dekCacheInterArrivals = metrics.NewHistogramVec(
&metrics.HistogramOpts{ &metrics.HistogramOpts{
Namespace: namespace, Namespace: namespace,
Subsystem: subsystem, Subsystem: subsystem,
@ -88,6 +90,7 @@ var (
[]string{"transformation_type"}, []string{"transformation_type"},
) )
// These metrics are made public to be used by unit tests.
KMSOperationsLatencyMetric = metrics.NewHistogramVec( KMSOperationsLatencyMetric = metrics.NewHistogramVec(
&metrics.HistogramOpts{ &metrics.HistogramOpts{
Namespace: namespace, Namespace: namespace,
@ -193,7 +196,7 @@ func RegisterMetrics() {
}, },
} }
legacyregistry.MustRegister(dekCacheFillPercent) legacyregistry.MustRegister(dekCacheFillPercent)
legacyregistry.MustRegister(DekCacheInterArrivals) legacyregistry.MustRegister(dekCacheInterArrivals)
legacyregistry.MustRegister(KeyIDHashTotal) legacyregistry.MustRegister(KeyIDHashTotal)
legacyregistry.MustRegister(KeyIDHashLastTimestampSeconds) legacyregistry.MustRegister(KeyIDHashLastTimestampSeconds)
legacyregistry.MustRegister(KeyIDHashStatusLastTimestampSeconds) legacyregistry.MustRegister(KeyIDHashStatusLastTimestampSeconds)
@ -234,7 +237,7 @@ func RecordArrival(transformationType string, start time.Time) {
if lastFromStorage.IsZero() { if lastFromStorage.IsZero() {
lastFromStorage = start lastFromStorage = start
} }
DekCacheInterArrivals.WithLabelValues(transformationType).Observe(start.Sub(lastFromStorage).Seconds()) dekCacheInterArrivals.WithLabelValues(transformationType).Observe(start.Sub(lastFromStorage).Seconds())
lastFromStorage = start lastFromStorage = start
case ToStorageLabel: case ToStorageLabel:
lockLastToStorage.Lock() lockLastToStorage.Lock()
@ -243,7 +246,7 @@ func RecordArrival(transformationType string, start time.Time) {
if lastToStorage.IsZero() { if lastToStorage.IsZero() {
lastToStorage = start lastToStorage = start
} }
DekCacheInterArrivals.WithLabelValues(transformationType).Observe(start.Sub(lastToStorage).Seconds()) dekCacheInterArrivals.WithLabelValues(transformationType).Observe(start.Sub(lastToStorage).Seconds())
lastToStorage = start lastToStorage = start
} }
} }