-
Notifications
You must be signed in to change notification settings - Fork 701
Open
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.lifecycle/needs-triageIndicates that an issue needs to be triaged by a project contributor.Indicates that an issue needs to be triaged by a project contributor.
Description
Contour only allows us to configure overallSampling rate: contourconfig.go#L817.
It will be more useful if we can configure client_sampling and random_sampling as well. Details below:
According to envoy's document, there are three sampling rate controls tracing:
- Client_sampling: sample rate when x-client-trace-id header is set, default to 100%. This can be used to force generate trace for a specific request
- Random_sampling: this is the random sample rate for all requests, default to 100%.
- Overall_sampling: this sample rate is applied to all requests on top of the client_sampling or random_sampling. This means if we have random_sampling = 1/100, and overall_sampling = 1/100, the final randomly SR will be 1/10000. When overall_sampling is less than 100%, x-client-trace-id header does not guarantee to sample the trace.
I think for most people, it makes more sense to have client_sampling=100%, random_sampling={intended random sampling rate}, overall_sampling=100%
Metadata
Metadata
Assignees
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.lifecycle/needs-triageIndicates that an issue needs to be triaged by a project contributor.Indicates that an issue needs to be triaged by a project contributor.