APM RuntimeSetting: record bool histogram when enqueuing a setting fails
Adding a stat to keep track of how frequently APM runtime settings cannot be successfully enqueued. Defined in https://chromium-review.googlesource.com/c/chromium/src/+/2495180. Bug: webrtc:9138 Change-Id: I33a9105e6fe513a9d0cbb8917a5d576fe47eaa94 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/190144 Reviewed-by: Per Åhgren <peah@webrtc.org> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org> Cr-Commit-Position: refs/heads/master@{#32546}
This commit is contained in:
committed by
Commit Bot
parent
f598e49c2f
commit
0b10f4605e
@ -708,15 +708,18 @@ AudioProcessingImpl::RuntimeSettingEnqueuer::~RuntimeSettingEnqueuer() =
|
||||
|
||||
void AudioProcessingImpl::RuntimeSettingEnqueuer::Enqueue(
|
||||
RuntimeSetting setting) {
|
||||
size_t remaining_attempts = 10;
|
||||
int remaining_attempts = 10;
|
||||
while (!runtime_settings_.Insert(&setting) && remaining_attempts-- > 0) {
|
||||
RuntimeSetting setting_to_discard;
|
||||
if (runtime_settings_.Remove(&setting_to_discard))
|
||||
if (runtime_settings_.Remove(&setting_to_discard)) {
|
||||
RTC_LOG(LS_ERROR)
|
||||
<< "The runtime settings queue is full. Oldest setting discarded.";
|
||||
}
|
||||
}
|
||||
if (remaining_attempts == 0)
|
||||
if (remaining_attempts == 0) {
|
||||
RTC_HISTOGRAM_BOOLEAN("WebRTC.Audio.ApmRuntimeSettingCannotEnqueue", 1);
|
||||
RTC_LOG(LS_ERROR) << "Cannot enqueue a new runtime setting.";
|
||||
}
|
||||
}
|
||||
|
||||
int AudioProcessingImpl::MaybeInitializeCapture(
|
||||
|
||||
Reference in New Issue
Block a user