Add probe logging to RtcEventLog.

In this CL:
 - Add message BweProbeCluster and BweProbeResult to rtc_event_log.proto.
 - Add corresponding log functions to RtcEventLog.
 - Add optional field |probe_cluster_id| to RtpPacket message and added
   an overload function to log with this information.
 - Propagate the probe_cluster_id to where RTP packets are logged.

BUG=webrtc:6984

Review-Url: https://codereview.webrtc.org/2666533002
Cr-Commit-Position: refs/heads/master@{#16857}
This commit is contained in:
philipel
2017-02-27 02:18:46 -08:00
committed by Commit bot
parent f284b7ff5f
commit 32d0010d86
14 changed files with 490 additions and 15 deletions

View File

@ -38,6 +38,8 @@ message Event {
AUDIO_RECEIVER_CONFIG_EVENT = 10;
AUDIO_SENDER_CONFIG_EVENT = 11;
AUDIO_NETWORK_ADAPTATION_EVENT = 16;
BWE_PROBE_CLUSTER_CREATED_EVENT = 17;
BWE_PROBE_RESULT_EVENT = 18;
}
// required - Indicates the type of this event
@ -72,6 +74,12 @@ message Event {
// optional - but required if type == AUDIO_NETWORK_ADAPTATION_EVENT
optional AudioNetworkAdaptation audio_network_adaptation = 16;
// optional - but required if type == BWE_PROBE_CLUSTER_CREATED_EVENT
optional BweProbeCluster probe_cluster = 17;
// optional - but required if type == BWE_PROBE_RESULT_EVENT
optional BweProbeResult probe_result = 18;
}
message RtpPacket {
@ -87,6 +95,9 @@ message RtpPacket {
// required - The RTP header only.
optional bytes header = 4;
// optional - The probe cluster id.
optional uint32 probe_cluster_id = 5;
// Do not add code to log user payload data without a privacy review!
}
@ -271,3 +282,35 @@ message AudioNetworkAdaptation {
// Number of audio channels that each encoded packet consists of.
optional uint32 num_channels = 6;
}
message BweProbeCluster {
// required - The id of this probe cluster.
optional uint32 id = 1;
// required - The bitrate in bps that this probe cluster is meant to probe.
optional uint64 bitrate_bps = 2;
// required - The minimum number of packets used to probe the given bitrate.
optional uint32 min_packets = 3;
// required - The minimum number of bytes used to probe the given bitrate.
optional uint32 min_bytes = 4;
}
message BweProbeResult {
// required - The id of this probe cluster.
optional uint32 id = 1;
enum ResultType {
SUCCESS = 0;
INVALID_SEND_RECEIVE_INTERVAL = 1;
INVALID_SEND_RECEIVE_RATIO = 2;
TIMEOUT = 3;
}
// required - The result of this probing attempt.
optional ResultType result = 2;
// optional - but required if result == SUCCESS. The resulting bitrate in bps.
optional uint64 bitrate_bps = 3;
}