Skip to content

Commit e5dc970

Browse files
Address context review
Signed-off-by: Rendre Greyling <rendre.greyling@nokia.com>
1 parent 9cbb669 commit e5dc970

3 files changed

Lines changed: 11 additions & 17 deletions

File tree

internal/telemetry/metrics.go

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ import (
2121
"github.com/kptdev/porch/api/porch/v1alpha1"
2222
"github.com/kptdev/porch/api/porch/v1alpha2"
2323
"github.com/kptdev/porch/pkg/repository"
24+
porchcontext "github.com/kptdev/porch/pkg/util/context"
2425
"go.opentelemetry.io/otel"
2526
"go.opentelemetry.io/otel/attribute"
2627
"go.opentelemetry.io/otel/metric"
27-
"k8s.io/apiserver/pkg/endpoints/request"
2828
"k8s.io/klog/v2"
2929
)
3030

@@ -121,7 +121,7 @@ func RecordRequestCount(ctx context.Context, resource, op, apiVersion string) {
121121
klog.Warning("requestsTotal is nil - was InitMetrics() called?")
122122
return
123123
}
124-
recordRequestCount(resource, op, apiVersion, getK8sUserName(ctx))
124+
recordRequestCount(resource, op, apiVersion, porchcontext.GetK8sUserName(ctx))
125125
}
126126

127127
func RecordControllerRequestCount(resource, op, apiVersion string) {
@@ -177,7 +177,7 @@ func RecordExternalRepoRequestCount(ctx context.Context, op string) {
177177
metric.WithAttributes(
178178
attribute.String("resource", ResourceExternalRepo),
179179
attribute.String("op", op),
180-
attribute.String("user", getK8sUserName(ctx)),
180+
attribute.String("user", porchcontext.GetK8sUserName(ctx)),
181181
),
182182
)
183183
}
@@ -233,10 +233,3 @@ func packageSizeBucketBoundaries() []float64 {
233233
copy(buckets[1:], doubled)
234234
return buckets
235235
}
236-
237-
func getK8sUserName(ctx context.Context) string {
238-
if user, ok := request.UserFrom(ctx); ok {
239-
return user.GetName()
240-
}
241-
return "<UNKNOWN>"
242-
}

internal/telemetry/metrics_test.go

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -320,10 +320,3 @@ func TestRecordPackageRevisionResourcesSize_VerboseLogging(t *testing.T) {
320320
rm := collectMetricData(t, reader)
321321
assert.True(t, hasMetric(rm, "porch_package_size_bytes"))
322322
}
323-
324-
func TestGetK8sUserName(t *testing.T) {
325-
assert.Equal(t, "<UNKNOWN>", getK8sUserName(context.Background()))
326-
327-
ctx := request.WithUser(context.Background(), &user.DefaultInfo{Name: "alice"})
328-
assert.Equal(t, "alice", getK8sUserName(ctx))
329-
}

pkg/util/context/context.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import (
1919
"context"
2020

2121
"github.com/google/uuid"
22+
"k8s.io/apiserver/pkg/endpoints/request"
2223
)
2324

2425
type porchContextKey string
@@ -90,3 +91,10 @@ func LogMetadataFromWithExtras(ctx context.Context, extras ...any) []any {
9091

9192
return append(LogMetadataFrom(ctx), extras...)
9293
}
94+
95+
func GetK8sUserName(ctx context.Context) string {
96+
if user, ok := request.UserFrom(ctx); ok {
97+
return user.GetName()
98+
}
99+
return "<UNKNOWN>"
100+
}

0 commit comments

Comments
 (0)