From 62dca70e4c409553540b615547890a4acf276e32 Mon Sep 17 00:00:00 2001 From: Avinash Date: Wed, 4 Dec 2024 20:02:52 +0530 Subject: [PATCH] feat: Add Golden and Summary metrics for Media Streaming (#1803) Co-authored-by: nr-cmorenoin --- .../media_streaming-video/golden_metrics.yml | 61 +++++++++++++++++++ .../media_streaming-video/summary_metrics.yml | 40 ++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 entity-types/media_streaming-video/golden_metrics.yml create mode 100644 entity-types/media_streaming-video/summary_metrics.yml diff --git a/entity-types/media_streaming-video/golden_metrics.yml b/entity-types/media_streaming-video/golden_metrics.yml new file mode 100644 index 000000000..d10fce48f --- /dev/null +++ b/entity-types/media_streaming-video/golden_metrics.yml @@ -0,0 +1,61 @@ +rebufferingRatio: + title: Video Rebuffering Ratio (%) + unit: PERCENTAGE + query: + select : sum(timeSinceBufferBegin) / sum(timeSinceLastHeartbeat) - filter(sum(timeSincePaused), where actionName = 'CONTENT_RESUME' - filter(sum(timeSinceSeekBegin), where actionName = 'CONTENT_SEEK_END')) * 100 + from: VideoAction +adRebufferingRatio: + title: Ad Rebuffering Ratio (%) + unit: PERCENTAGE + query: + select: sum(timeSinceAdBufferBegin) / sum(timeSinceLastAdHeartbeat) - filter(sum(timeSinceAdPaused), where actionName = 'AD_RESUME' - filter(sum(timeSinceAdSeekBegin), where actionName = 'AD_SEEK_END')) * 100 + from: VideoAdAction +averageBitrate: + title: Average Bitrate + unit: BITS_PER_SECOND + query: + select: average(contentBitrate) + from: VideoAction +adAverageBitrate: + title: Ad Average Bitrate + unit: BITS_PER_SECOND + query: + select: average(adBitrate) + from: VideoAdAction +averageStartTimeS: + title: Average Start Time (s) + unit: SECONDS + query: + select: average(timeSinceRequested) + from: VideoAction + where: actionName = 'CONTENT_START' +adAverageStartTimeS: + title: Ad Average Start Time (s) + unit: SECONDS + query: + select: average(timeSinceAdRequested) + from: VideoAdAction +videoStartFailures: + title: Video Start Failures + unit: PERCENTAGE + query: + select: count(*) WHERE actionName = 'CONENT_ERROR' and contentPlayhead = 0 / (FROM VideoAction SELECT count(*) WHERE actionName = 'CONENT_START' and contentPlayhead=0) * 100 + from: VideoErrorAction +adStartFailures: + title: Ad Start Failures + unit: PERCENTAGE + query: + select: count(*) WHERE actionName = 'AD_ERROR' and adPlayhead = 0 / (FROM VideoAdAction SELECT count(*) WHERE actionName = 'AD_START' and adPlayhead = 0) * 100 + from: VideoErrorAction +videoPlaybackFailures: + title: Video Playback Failures + unit: PERCENTAGE + query: + select: count(*) WHERE actionName = 'CONTENT_ERROR' and contentPlayhead > 0 / (FROM VideoAction SELECT count(*) WHERE actionName = 'CONENT_REQUEST') * 100 + from: VideoErrorAction +adPlaybackFailures: + title: Ad Playback Failures + unit: PERCENTAGE + query: + select: count(*) WHERE actionName = 'AD_ERROR' and adPlayhead > 0 / (FROM VideoAdAction SELECT count(*) WHERE actionName = 'AD_REQUEST') * 100 + from: VideoErrorAction \ No newline at end of file diff --git a/entity-types/media_streaming-video/summary_metrics.yml b/entity-types/media_streaming-video/summary_metrics.yml new file mode 100644 index 000000000..281b09cfd --- /dev/null +++ b/entity-types/media_streaming-video/summary_metrics.yml @@ -0,0 +1,40 @@ +rebufferingRatio: + goldenMetric: rebufferingRatio + unit: PERCENTAGE + title: Video Rebuffering Ratio (%) +adRebufferingRation: + goldenMetric: adRebufferingRatio + unit: PERCENTAGE + title: Ad Rebuffering Ratio (%) +averageBitrateMbps: + goldenMetric: averageBitrateMbps + unit: BITS_PER_SECOND + title: Average Bitrate (Mbps) +adAverageBitrateMbps: + goldenMetric: adAverageBitrateMbps + unit: BITS_PER_SECOND + title: Ad Average Bitrate (Mbps) +averageStartTimeS: + goldenMetric: averageStartTimeS + unit: SECONDS + title: Average Start Time (s) +adAverageStartTimeS: + goldenMetric: adAverageStartTimeS + unit: SECONDS + title: Ad Average Start Time (s) +videoStartFailures: + goldenMetric: videoStartFailures + unit: PERCENTAGE + title: Video Start Failures +adStartFailures: + goldenMetric: adStartFailures + unit: PERCENTAGE + title: Ad Start Failures +videoPlaybackFailures: + goldenMetric: videoPlaybackFailures + unit: PERCENTAGE + title: Video Playback Failures +adPlaybackFailures: + goldenMetric: adPlaybackFailures + unit: PERCENTAGE + title: Ad Playback Failures \ No newline at end of file