Metrics
Genvid services publish metrics in the Datadog’s extended StatsD format.
By default, metrics are published over UDP to address 127.0.0.1 port 8125. You can use our metric demonstration tool TICK Stack Metrics to visualize some of them.
To forward to an external monitoring server,
specify the address in the GENVID_STATSD_URL
. For example:
<scheme>://<host>:<port> *udp://109.155.209.164:8125*
host and port are mandatory.
Scheme udp is optional.
You can deactivate metrics by setting the GENVID_STATSD_DISABLED
variable to true.
In addition to the following metrics, you can use Nomad, Consul and Vault telemetry.
Metrics Development Statuses
Each metric has a status indicating its development maturity level:
Supported: Metric is officially supported and will not change.
Beta: Metric might be changed or removed without notice in a future release.
Deprecated: Metric is deprecated and will be removed 10 versions after the deprecation announcement.
Native SDK API Calls Metrics
The Native SDK API Calls Metrics relate to the Native Genvid MILE SDK running in your rendering engine.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
initialize1_count
initialize1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
terminate1_count
terminate1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
getcurrenttimecode1_count
getcurrenttimecode1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
getprevioustimecode1_count
getprevioustimecode1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
createstream1_count
createstream1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
destroystream1_count
destroystream1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
setparameterint1_count
setparameterint1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
setparameterfloat1_count
setparameterfloat1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
setparameterpointer1_count
setparameterpointer1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
getparameterint1_count
getparameterint1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
getparameterfloat1_count
getparameterfloat1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
getparameterpointer1_count
getparameterpointer1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
getparameterutf81_count
getparameterutf81_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
submitaudiodata1_count
submitaaudiodata1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
submitvideodata1_count
submitvideodata1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
submitgamedata1_count
submitgamedata1_us
|
counter
timing
|
stream |
The count of API requests to |
µs
|
Beta |
submitannotation1_count
submitannotation1_us
|
counter
timing
|
stream |
The count of API requests to |
µs
|
Beta |
submitnotification1_count
submitnotification1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
subscribeevent1_count
subscribeevent1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
unsubscribeevent1_count
unsubscribeevent1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
checkforevents1_count
checkforevents1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
checkforcommands1_count
checkforcommands1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
subscribecommand1_count
subscribecommand1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
unsubscribecommand1_count
unsubscribecommand1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
videocapturetime_count
videocapturetime_us
|
counter
timing
|
The time for a video capture to happen (when automatic video capture is used). |
us
|
Beta |
|
videocapturepending
|
gauge
|
The number of pending video captures. |
Beta |
||
checkforrequest1_count
checkforrequest1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
subscriberequest1_count
subscriberequest1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
unsubscriberequest1_count
unsubscriberequest1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
|
submitrequestreply1_count
submitrequestreply1_us
|
counter
timing
|
The count of API requests to |
µs
|
Beta |
Native SDK Input Metrics
Native SDK Input Metrics relate to the Native Genvid MILE SDK running in your rendering engine.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.sdk. |
|||||
framesubmitted |
counter |
stream, streamtype |
The count of data frames (audio/video/game) submitted by the rendering engine and successfully transmitted by the Native SDK. |
Number |
Beta |
framesizesubmitted |
gauge |
stream, streamtype |
The size of a frame submitted to the SDK. Sent when the client submits data (audio/video/game) and the SDK operation is successful. |
bytes |
Beta |
framesubmitteddropped |
counter |
stream, streamtype |
The count of frames submitted to the SDK that were dropped. Sent when the client submits data (audio/video/game) and the SDK operation is not successful. |
Beta |
|
framesizesubmittedropped |
counter |
stream, streamtype |
The cumulative size of all the frames submitted to the SDK that were dropped. Sent when the client submits data (audio/video/game) and the SDK operation is not successful. |
bytes |
Beta |
frameaccepted |
counter |
stream, streamtype |
The count of frames accepted by the the SDK. Sent when the SDK operation of submitting annotations or data (audio/video/game) to the stream is successful. |
Beta |
|
framesizeaccepted |
gauge |
stream, streamtype |
The cumulative size of all frames accepted by the the SDK. Sent when the operation of submitting annotations or data (audio/video/game) to the stream is successful. |
bytes |
Beta |
framedropped |
counter |
stream, streamtype |
The count of frames dropped by the the SDK. Sent when the SDK operation of submitting annotations or data (audio/video/game) to the stream is not successful. |
Beta |
|
framesizedropped |
counter |
stream, streamtype |
The cumulative size of all frames dropped by the the SDK. Sent when the operation of submitting annotations or data (audio/video/game) to the stream is not successful. |
bytes |
Beta |
submitdelta |
gauge |
stream, streamtype |
The time delta between time codes of frames submitted to the SDK. Sent when the client submits data (audio/video/game data or annotations). |
ms |
Beta |
submittime_us |
timing |
stream, streamtype |
The time spent in the SDK submit functions. Sent when the client submits data (audio/video/game data or annotations). |
µs |
Beta |
inbandwidth |
gauge |
The number of bytes per second sent to the SDK when submitting streams. Sent every second by the Compose Session. |
Bps |
Beta |
|
notificationdropped |
counter |
notificationid |
The number of notifications dropped by the SDK. Sent when the client calls SubmitNotification() and the publishing fails. |
Beta |
|
notificationsizedropped |
gauge |
notificationid |
The size of a notification dropped by the SDK. Sent when the client calls SubmitNotification() and the publish fails. |
bytes |
Beta |
requestdropped |
counter |
topic |
The number of replies to request dropped by the SDK. Sent when the client calls SubmitRequestReply() and the publishing fails. |
Beta |
|
requestsizedropped |
gauge |
topic |
The size of a reply dropped by the SDK. Sent when the client calls SubmitRequestReply() and the publish fails. |
bytes |
Beta |
submittedstreams |
gauge |
none |
The total number of frames submitted to the different streams (audio/video/game data) that were just sent to the RTMSP Session. Sent by the Compose Session every millisecond. |
Beta |
|
submittedstreams_audio |
gauge |
none |
The number of frames submitted to the different audio streams that were just sent to the RTMSP Session. Sent by the Compose Session every millisecond. |
Beta |
|
submittedstreams_video |
gauge |
none |
The number of frames submitted to the different video streams that were just sent to the RTMSP Session. Sent by the Compose Session every millisecond. |
Beta |
|
submittedstreams_data |
gauge |
none |
The number of frames submitted to the different data streams that were just sent to the RTMSP Session. Sent by the Compose Session every millisecond. |
Beta |
|
gcl.received |
Statistics on frames received by the SDK. (See the GCL Metrics table for more information.) The Compose Session invokes the GCL Stats Callback when it sends messages through the RTMSP Session. The RTMSP Session sends the metric based on the submission rate. |
Beta |
Native SDK Output Metrics
Native SDK Output Metrics relate to the Native Genvid MILE SDK running in your rendering engine.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.sdk. |
|||||
framesent |
counter |
stream, streamtype |
The number of frames sent by the SDK. Sent when annotations or data (audio/video/game data) are sent over the RTMSP connection by Compose Session. |
Beta |
|
framesizesent |
gauge |
stream, streamtype |
The size of a frame sent by the SDK. Sent when annotations or data (audio/video/game data) are sent over the RTMSP connection by Compose Session. |
bytes |
Beta |
frameadded |
counter |
stream, streamtype |
The number of extra frames sent to keep the expected rate up. Sent by the Compose Session when repeating the last frame and sending it to the RTMSP Connection. |
Beta |
|
framemissed |
counter |
stream, streamtype |
The number of frames that were sent tagged as missing due to lack of available data. Sent by the Compose Session when tagging the frame as missing (because the last frame is not available) and sending it to the RTMSP Connection. |
Beta |
|
framedelta |
gauge |
stream, streamtype |
The time delta between the time codes of consecutive sent frames. Sent by the Compose Session when sending frames to the RTMSP Connection. |
ms |
Beta |
outbandwidth |
gauge |
The number of bytes per second sent by the SDK when sending frames or annotations. Sent every second by the Compose Session. |
Bps |
Beta |
|
streambandwidth |
gauge |
stream, streamtype |
The number of bytes per second sent by the SDK, per stream. Sent every second by the Compose Session. |
Bps |
Beta |
notificationsent |
counter |
notificationid |
The number of notifications successfully sent by the the SDK. Sent when the client successfully calls SubmitNotification(). |
Beta |
|
notificationsizepublished |
gauge |
notificationid |
The size of a notification successfully sent by the the SDK. Sent when the client successfully calls SubmitNotification(). |
bytes |
Beta |
requestsent |
counter |
topic |
The number of reply to a request successfully sent by the the SDK. Sent when the client successfully calls SubmitRequestReply(). |
Beta |
|
requestsizepublished |
gauge |
topic |
The size of a reply to a request successfully sent by the the SDK. Sent when the client successfully calls SubmitRequestReply(). |
bytes |
Beta |
numaudioframes |
gauge |
stream, streamtype |
The number of audio frames sent by the SDK. Sent by the Compose Session every time an audio frame is sent to the RTMSP Session. |
Beta |
|
numvideoframes |
gauge |
stream, streamtype |
The number of video frames sent by the SDK. Sent by the Compose Session every time a video frame is sent to the RTMSP Session. |
Beta |
|
duplicatedaudioframes |
gauge |
stream, streamtype |
The number of duplicate audio frames sent by the SDK. Sent by the Compose Session every time an audio frame is sent. The counter is incremented only when a repeated frame is created. |
Beta |
|
duplicatedvideoframes |
gauge |
stream, streamtype |
The number of duplicate video frames sent by the SDK. Sent by the Compose Session every time a video frame is sent. The counter is incremented only when a repeated frame is created. |
Beta |
|
missedaudioframes |
gauge |
stream, streamtype |
The number of missed audio frames sent by the SDK. Sent by the Compose Session every time an audio frame is sent. The counter is incremented only when a missing frame is detected. |
Beta |
|
missedvideoframes |
gauge |
stream, streamtype |
The number of missed video frames sent by the SDK. Sent by the Compose Session every time a video frame is sent. The counter is incremented only when a missing frame is detected. |
Beta |
|
audiofps |
gauge |
stream, streamtype |
The effective audio FPS, as seen by the SDK, taking into account the number of duplicate and missing frames. (Duplicate or missing frames cause a lower FPS number than the one set at stream creation.) Sent by the Compose Session every time an audio frame is sent to the RTMSP Session. |
fps |
Beta |
videofps |
gauge |
stream, streamtype |
The effective video FPS, as seen by the SDK, taking into account the number of duplicate and missing frames. (Duplicate or missing frames cause a lower FPS number than the one set at stream creation.) Sent by the Compose Session every time a video frame is sent to the RTMSP Session. |
fps |
Beta |
gcl.sent |
Statistics on frames sent by the SDK. (See the GCL Metrics table for more information.) The Compose Session invokes the GCL Stats Callback when it sends messages through the RTMSP Session. The RTMSP Session sends the metric based on the submission rate. |
Beta |
Composition Metrics
Composition Metrics relate to the Genvid MILE SDK ComposeD service running in your cluster and in charge of receiving the RTMSP stream to distribute the audiovisual and data parts for further processing.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.compose-backend. |
|||||
framesent |
counter |
stream, streamtype, messagetype, reason, session, source |
The number of packets sent to GVEncode. Sent when sending an RTMSP message (buffer or format type) to GVEncode. |
Beta |
|
framesizesent |
gauge |
stream, streamtype, messagetype, reason, session, source |
The size of a packet sent to GVEncode. Sent when sending an RTMSP message (buffer or format type) to GVEncode. |
bytes |
Beta |
framediscarded |
counter |
stream, streamtype, messagetype, reason, session, source |
The number of packets discarded. Sent when the RTMSP message is discarded instead of being sent to GVEncode. Possible reasons: RTMSP session not running, undefined session ID, or format is missing. |
Beta |
|
framesizediscarded |
gauge |
stream, streamtype, messagetype, reason, session, source |
The payload size of a discarded RTMSP message. Sent when the RTMSP message is discarded instead of being sent to GVEncode. Possible reasons: RTMSP session not running, undefined session ID, or format is missing. |
bytes |
Beta |
message.discarded |
counter |
stream, streamtype, messagetype, session, source |
The number of RTMSP messages discarded. Sent when the message would normally be pushed in the queue, but the message queue is full. |
Beta |
|
streambus.audiovideo.weight |
gauge |
stream, streamtype, messagetype, session, source |
The weight of the audio/video messages currently in the stream bus. Sent when the RTMSP message queue is full. |
bytes |
Beta |
streambus.data.weight |
gauge |
stream, streamtype, messagetype, session, source |
The weight of the data/annotation/sync messages currently in the stream bus. Sent when the RTMSP message queue is full. |
bytes |
Beta |
gcl.sent |
Statistics on frames sent to GVEncode. (See the GCL Metrics table for more information.) The Backend invokes the GCL Stats Callback when it sends messages through the RTMSP Session. The RTMSP Session sends the metric based on the submission rate. |
Beta |
|||
gcl.received |
Statistics on frames received by the Backend. (See the GCL Metrics table for more information.) The Receive Message Callback of the RTMSP Session invokes the GCL Stats Callback. The RTMSP Session sends the metric based on the submission rate. |
Beta |
|||
Prefix: genvid.compose-frontend. |
Beta |
||||
framemissed |
counter |
stream, streamtype, sessionname |
The number of frames created by compose. This metric is no longer sent. |
Deprecated |
|
framereceived |
counter |
stream, streamtype, sessionname |
The number of frames received. Sent when a frame is extracted from the RTMSP message and pushed to the stream bus. |
Beta |
|
framesizereceived |
counter |
stream, streamtype, sessionname |
The cumulative size of all frames received. Sent when a frame is extracted from the RTMSP message and pushed to the stream bus. |
bytes |
Beta |
framedelayreceived_us |
gauge |
stream, streamtype, sessionname |
The delay of the frame compared to its expected time. Sent when a frame is extracted from the RTMSP message and pushed to the stream bus. |
µs |
Beta |
message.discarded |
counter |
stream, streamtype, messagetype, session, source |
The number of RTMSP messages discarded. Sent when a message would normally be pushed in the RTMSP message queue, but the queue is full. |
Beta |
|
streambus.audiovideo.weight |
gauge |
stream, streamtype, messagetype, session, source |
The weight of the audio/video messages currently in the stream bus. Sent when the RTMSP message queue is full. |
bytes |
Beta |
streambus.data.weight |
gauge |
stream, streamtype, messagetype, session, source |
The weight of the data/annotation/sync messages currently in the stream bus. Sent when the RTMSP message queue is full. |
bytes |
Beta |
gcl.sent |
Statistics on frames sent by the Frontend Session. (See the GCL Metrics table for more information.) The Frontend Session invokes the GCL Stats Callback when it sends messages through the RTMSP Session. The RTMSP Session sends the metric based on the submission rate. |
Beta |
|||
gcl.received |
Statistics on frames received by the Frontend Session. (See the GCL Metrics table for more information.) The Receive Message Callback of the RTMSP Session invokes the GCL Stats Callback. The RTMSP Session sends the metric based on the submission rate. |
Beta |
|||
Prefix: genvid.compose-gameframes. |
Beta |
||||
framesent |
counter |
stream, streamtype |
The number of buffers sent to replication nodes (Bulb). Sent when a Protobuf is created when the annotations are extracted from the RTMSP packet. |
Beta |
|
framesize |
counter |
stream, streamtype |
The size of a buffer sent to replication nodes (Bulb). Sent when a Protobuf is created when the annotations are extracted from the RTMSP packet. |
bytes |
Beta |
framedropped |
counter |
stream, streamtype |
The number of frames rejected. Sent when extracting data from streams containing anything but game data or sync information. |
Beta |
|
compositionframesent |
counter |
stream, streamtype |
The number of frames sent by the data and synchronization streams. Sent when creating a Protobuf with the data extracted from a data or a synchronization stream. |
Beta |
|
compositionframesizesent |
counter |
stream, streamtype |
The cumulative size of all frames sent by the data and synchronization streams. Sent when creating a Protobuf with the data extracted from a data or a synchronization stream. |
bytes |
Beta |
gcl.sent |
Statistics on frames sent to replication nodes. (See the GCL Metrics table for more information.) The Compose Data Frame invokes the GCL Stats Callback when it sends messages through the Bulb Session. The Bulb Session sends the metric based on the submission rate. |
Beta |
Encoding Metrics
Encoding Metrics relate to the Genvid MILE SDK GVEncode service running in your cluster and in charge of generating the RTMP output stream.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.gvencode-compose. |
|||||
blendingtime |
timing |
filtername |
The time to blend one video frame. Sent by various video layers upon composition of each frame. When compositing the final layout, the Video Cover Layer sends |
ms |
Beta |
bytesent |
counter |
filtername, session |
The number of bytes sent during a broadcast session. Sent by a FFMPEG callback invoked when a packet is broadcast by the Server/Sync Filter and written to the output media file. |
bytes |
Beta |
compositionmonitortime |
timing |
filtername |
The time to compose one frame of the Monitor stream. Sent by the Video Mixer Filter upon composition (if enabled). |
ms |
Beta |
compositionpreviewtime |
timing |
filtername |
The time to compose one frame of the Preview stream. Sent by the Video Mixer Filter upon composition (if enabled). |
ms |
Beta |
compositionprogramtime |
timing |
filtername |
The time to compose one frame of the Program (broadcast) stream. Sent by the Video Mixer Filter upon composition (if enabled). |
ms |
Beta |
compositionsent |
counter |
filtername, filterid |
The number of frames sent by the composition and synchronization streams from GVEncode to ComposeD. This metric is no longer sent. |
Deprecated |
|
compositionsizesent |
gauge |
filtername, streamid |
The size of frames sent by the composition and synchronization streams from GVEncode to ComposeD. This metric is no longer sent. |
bytes |
Deprecated |
receive-frame-time |
timing |
filtername |
The time to decode one packet and push the decoded frame to the output queue. Sent by the Source Filter when an RTMSP message is decoded. |
ms |
Beta |
rtmspMessageQueue |
counter |
filtername, rtmspMessageQueue, sessionid |
The number of RTMSP messages received. Sent by the Source Filter when an RTMSP message is dequeued, just before decoding it. |
Beta |
|
rtmspMessageQueueCount |
gauge |
filtername, rtmspMessageQueue, sessionid |
The number of RTMSP messages pushed in the input queue. Sent by the Source Filter when an RTMSP message is dequeued, just before decoding it. |
Beta |
|
compositiontotaltime |
timing |
filtername |
The time to compose the Program/Preview/Monitor streams. Sent by the Video Mixer Filter upon composition (if enabled). |
ms |
Beta |
chromakeyingtime |
timing |
filtername |
The time to apply chroma-key blending on the overlay source. Sent by the Video Chroma Key Layer every time a frame of the overlay source is composed. |
ms |
Beta |
decodingtime |
timing |
filtername |
The time to decode one video packet. Sent by the Source Filter when a video frame is retrieved from the decoder and pushed to the output video queue. |
ms |
Beta |
delayedframe |
counter |
filtername, streamtype |
The number of frames delayed. Sent by the Digital Delay Filter when a delayed frame is processed. It increments when a frame moves from the input frame queue to the delayed frame queue. It decrements when a frame moves from the delayed frame queue to the output frame queue. These changes imply that frames are added or removed and may point to other issues. |
Beta |
|
delayedframesize |
counter |
filtername, streamtype |
The cumulative size of all delayed frames. Sent by the Digital Delay Filter when a delayed frame is processed. |
bytes |
Beta |
encodingtime |
timing |
filtername |
The time to encode one video frame. Sent by the Server/Sync Filter when a video packet is retrieved from the encoder and pushed to the FIFO or the Output Buffer for broadcasting. |
ms |
Beta |
fifoBufferNumFrames |
gauge |
filtername, streamtype |
The number of packets pushed in the FIFO. Sent by the Stream Server Filter when a packet is broadcast. |
Beta |
|
framereceivedfps |
gauge |
filtername, streamtype, sessionid |
The FPS at which the source filter is receiving frames. |
Beta |
|
framesentfps |
gauge |
filtername, streamtype, sessionid |
The FPS at which the source filter is sending frames. |
Beta |
|
framedropped |
counter |
filtername, streamtype |
The number of frames dropped to preserve the frame rate. Sent by the Video Reframer Filter when more frames are sent than the allowed deviation from the target. |
Beta |
|
frameduplicated |
counter |
filtername, streamtype |
The number of frames duplicated to preserve the frame rate. Sent by the Video Reframer Filter when fewer frames are sent than the allowed deviation from the target. |
Beta |
|
frameerror_fr |
counter |
filtername |
The cumulative number of packets with an incorrect frame number. Sent by the Sync Filter when the frame is written to the output media file or moved to the storage queue. It increments when the frame number doesn’t match the target, which should never happen (this value should remain at 0). |
Beta |
|
framereceived |
counter |
filtername, streamtype, sessionid |
The number of frames received from compose. Sent by the Source Filter when a video frame is pushed to the output queue. |
Beta |
|
framesent |
counter |
filtername, streamtype |
The number of packets sent to the broadcaster. Sent by the Server/Sync Filter when a packet is retrieved from the encoder and pushed to the FIFO or the Output Buffer to be broadcast. |
Beta |
|
framesSentFromSinkHz |
gauge |
filtername, streamtype |
The number of packets sent to the broadcaster. The internal value increments when an audio or video packet is dequeued from the FIFO and sent to the broadcaster. The metric is sent by the Stream Server Filter only when video packets are broadcast at a rate of 1Hz. |
Beta |
|
framesizesent |
gauge |
filtername, streamtype |
The size of an encoded packet. Sent by the Server/Sync Filter when a packet is retrieved from the encoder and pushed to the FIFO or the Output Buffer for broadcasting. |
bytes |
Beta |
framesizereceived |
gauge |
filtername, streamtype, sessionid |
The size of a frame received from compose. Sent by the Source Filter when a video frame is decoded and pushed to the output queue. |
bytes |
Beta |
framesDropped |
counter |
filtername, rtmspMessageQueue, sessionid |
The number of frames dropped in order to preserve the A/V sync. Sent by the RTMSPSourceFilter when the dropped frame is too old. |
Beta |
|
lowoutputbufferlevel |
counter |
filtername |
The number of times an attempt to get a packet from the output buffer failed (low output-buffer level detection). Sent by the Sync Filter when failing to broadcast or store a packet because the output buffer is empty. |
Beta |
|
missingframecreatingtime |
timing |
filtername |
The time to allocate, prepare, and fill a missing frame. The source can be the last video frame, the keep-alive still image, a plain color, or silence for the audio. Sent by the Source Filter when a missing frame is created and pushed to the output queue. This can point to issues like frame starvation, but can also mean that a keep alive request was made. |
ms |
Beta |
outputbufferlimit_us |
gauge |
filtername |
The cumulative presentation-time of all the packets pushed in the output buffer. Sent by the Sync Filter when the frame is written to the output media file or moved to the storage queue. |
µs |
Beta |
runningtime |
timing |
filtername |
The time to draw the content of one frame with the Canvas Filter. Sent upon execution of each frame. |
ms |
Beta |
scalingtime |
timing |
filtername |
The time to scale a video frame. Sent by the Video Blitter Filter when a frame is processed. If there is no scaling it reports a time of 0 ms. |
ms |
Beta |
session |
counter |
filtername, session |
The number of active sessions. It increments when a streamer is created. It decrements when a streamer is destroyed. |
Beta |
|
audiopinnumframes |
gauge |
filtername, pin name, pin type |
The number of audio frames in the queue of a given pin. Sent by various filters every time a frame is processed. |
Beta |
|
videopinnumframes |
gauge |
filtername, pin name, pin type |
The number of video frames in the queue of a given pin. Sent by various filters every time a frame is processed. |
Beta |
|
writeframe |
counter |
filtername, outputtype, error |
The number of packets written to the output media file. Sent by the File Sync Filter when sending a packet for broadcast or storage. |
||
canvasfilterpinnumframes |
gauge |
filtername, pin name, pin type |
The number of frames in a given pin. Sent by the Canvas Filter every time a frame is processed. |
||
covering |
timing |
filtername |
The time to blend one video frame. Sent by the Video Cover Layer upon composition of each frame of the final layout. |
ms |
|
digitaldelaylinefilterpinnumframes |
gauge |
filtername, pin name, pin type |
The number of delayed frames in a given pin. Sent by the Digital Delay Filter when a delayed frame is processed. |
||
videoreframerfilterpinnumframes |
gauge |
filtername, pin name, pin type |
The number of frames in a given pin. Sent by the Reframer Filter every time a frame is processed. |
||
wiping |
timing |
filtername |
The time to wipe one video frame. Sent by the Video Push Layer and the Video Wipe Layer upon composition of each frame of the final layout. |
ms |
|
gcl.received |
Statistics on frames received by GVEncode. (See the GCL Metrics table for more information.) The Receive Message Callback of the RTMSP Session invokes the GCL Stats Callback . The RTMSP Session sends the metric based on the submission rate. |
||||
gcl.sent |
Statistics on frames sent by GVEncode. (See the GCL Metrics table for more information.) GVEncode invokes the GCL Stats Callback when it sends messages through the RTMSP Session. The RTMSP Session sends the metric based on the submission rate. |
Studio Metrics
Studio Metrics relate to the Genvid MILE SDK StudioD service running in your cluster.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.studiod. |
|||||
messagebytereceived |
counter |
websocket |
The size of messages received from a client with a WebSocket. |
|
Beta |
messagebytesent |
counter |
websocket |
The size of messages sent to client with a WebSocket. |
|
Beta |
messageReceived |
counter |
websocket |
The number of messages received from a client with a WebSocket |
Beta |
|
messageSent |
counter |
websocket |
The number of messages sent to client with a WebSocket. |
Beta |
|
websocketopened |
gauge |
websocket |
The number of WebSockets opened by Studio. |
Beta |
|
Prefix: genvid.studio.web |
Beta |
||||
monitor.video.element.seekable.size.seconds |
gauge |
The size of the video element’s seekable buffer. |
|
Beta |
|
monitor.source.buffer.size.seconds |
gauge |
The source buffer’s size. |
|
Beta |
|
monitor.playback.rate |
gauge |
The video element’s playback rate. |
Beta |
||
monitor.play.rate |
gauge |
The time played. A value of 1 represents a constant play speed. |
|
Beta |
|
monitor.segments.pushed.hz |
gauge |
The number of segments pushed to the source buffer. |
|
Beta |
|
monitor.segment.size.kilobytes |
gauge |
The average size of a segment. |
|
Beta |
|
monitor.latency.seconds |
gauge |
The time delta between the current playback time and the most recent seekable frame. |
|
Beta |
Leaf Metrics
Leaf Metrics relate to the Genvid MILE SDK LeafD service running in your cluster.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.leafd.reduce. |
|||||
collect |
timing |
reduceId |
The duration of a |
ms |
Beta |
processkeyvalue |
timing |
reduceId |
The duration of a |
ms |
Beta |
reduce |
timing |
reduceId |
The duration of a |
ms |
Beta |
sent |
counter |
reduceId |
The number of messages sent to NATS on topic |
Beta |
|
size |
counter |
reduceId |
The size of messages sent to NATS on topic |
bytes |
Beta |
Prefix: genvid.leafd.map. |
Beta |
||||
accepted |
counter |
mapId, success |
The number of key values processed by a map. |
Beta |
|
processkeyvalues |
timing |
mapId, success |
The duration of a |
ms |
Beta |
refused |
counter |
The number of key values not processed by a map. |
Beta |
||
Prefix: genvid.leafd.connection. |
Beta |
||||
current |
gauge |
The number of clients currently connected to a leaf. |
Beta |
||
disconnected |
counter |
The number of client disconnections from a leaf. |
Beta |
||
elapsed |
timing |
The duration of a client session. |
ms |
Beta |
|
initialsendtime |
timing |
The amount of time spent sending the initial payload from the leaf to the web app. |
ms |
Beta |
|
sentdatacachesize |
gauge |
The size of data cache sent to the client. |
bytes |
Beta |
|
sentpackets |
counter |
The number of packets sent. |
Beta |
||
sentpacketssize |
counter |
The size of packets sent. |
bytes |
Beta |
|
total |
counter |
The number of client connections to a leaf. |
Beta |
||
Prefix: genvid.leafd.root. |
Beta |
||||
receivedpackets |
counter |
type |
The number of packets received from RootD. |
Beta |
|
receivedpacketssize |
counter |
type |
The size of packets received from RootD. |
bytes |
Beta |
Prefix: genvid.leafd.event. |
Beta |
||||
count |
counter |
The number of events sent by clients. |
Beta |
||
size |
counter |
The size of events sent by clients. |
bytes |
Beta |
RootD Metrics
RootD Metrics relate to the Genvid MILE SDK RootD service running in your cluster.
Name |
Type |
Possible tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.rootd.bulb.compose. |
|||||
receivedpackets |
counter |
type |
The number of packets received from ComposeD. |
Beta |
|
receivedpacketssize |
counter |
type |
The size of the packets received from ComposeD. |
|
Beta |
receptionInterval |
gauge |
type |
The time between two consecutive frames received. |
|
Beta |
Prefix: genvid.rootd.root.leaf. |
|||||
sentpackets |
counter |
type |
The number of packets sent to a leaf. |
Beta |
|
sentpacketssize |
counter |
type |
The size of the packets sent to a leaf. |
|
Beta |
senttotalpacketssize |
counter |
type |
The total size of the packets sent to all leaves. |
|
Beta |
Prefix: genvid.rootd.connection. |
Beta |
||||
current |
gauge |
The current number of leaves connected to a root. |
Beta |
||
sentdatacachesize |
gauge |
The size of the data cache being sent to a leaf. |
|
Beta |
Webgateway Metrics
Webgateway Metrics relate to the Genvid MILE SDK webgateway service (formerly known as CommandD) running in your cluster.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.webgateway. |
|||||
gameOK.received |
counter |
status |
The number of game commands received. |
Beta |
|
notificationOK.received |
counter |
status |
The number of notifications received. |
Beta |
|
eventsOK.received |
counter |
status |
The number of events received. |
Beta |
|
eventsOK.processed |
counter |
status |
The number of events processed. |
Beta |
|
batchevents.reduce.collect |
timing |
reduceId |
The duration of a |
|
Beta |
reduce.sent |
counter |
reduceId |
The number of messages sent to NATS on topic |
Beta |
|
reduce.size |
counter |
reduceId |
The size of messages sent to NATS on topic |
|
Beta |
gameParseFail.received |
counter |
status |
The number of errors received. |
Beta |
|
gamePublishFail.received |
counter |
status |
The number of errors received. |
Beta |
|
notificationParseFail.received |
counter |
status |
The number of errors received. |
Beta |
|
notificationPublishFail.received |
counter |
status |
The number of errors received. |
Beta |
|
eventsParseFail.received |
counter |
status |
The number of errors received. |
Beta |
|
eventsTooMany.received |
counter |
status |
The number of times the maximum number of events was exceeded. |
Beta |
|
eventsTooBig.received |
counter |
status |
The number of errors received. |
Beta |
|
requestOK.received |
counter |
status |
The number of notifications received. |
Beta |
|
requestParseFail.received |
counter |
status |
The number of errors received. |
Beta |
|
requestPublishFail.received |
counter |
status |
The number of errors received. |
Beta |
Web SDK Metrics
Web SDK Metrics relate to the Web Genvid MILE SDK.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
Prefix: genvid.viewer. |
|||||
cached.bytes |
gauge |
stream |
The client cache size. |
|
Beta |
cached.seconds |
gauge |
stream |
The client cache size in content time. |
|
Beta |
deviation.from.latest.frame |
gauge |
The deviation between the current media player time and the most recent data in the source buffer. |
|
Beta |
|
events.sent.Hz |
gauge |
The number of events sent per second. |
|
Beta |
|
frame.decode.duration |
timing |
The time it takes to decode newly received frames. |
|
Beta |
|
frame.decode.errors |
gauge |
The number of frame decoding errors. |
Beta |
||
latency |
timing |
The stream latency. |
|
Beta |
|
notification.decode.errors |
gauge |
The number of notification decoding errors. |
Beta |
||
notification.decode.duration |
timing |
The amount of time it took to decode the received notifications. |
|
Beta |
|
onDraw.duration.max |
timing |
The longest amount of time it took to process the onDraw call. |
|
Beta |
|
onDraw.duration.mean |
timing |
The average amount of time it took the onDraw callback to execute. |
|
Beta |
|
onDraw.duration.min |
timing |
The shortest amount of time it took to process the onDraw call. |
|
Beta |
|
onDraw.interval.max |
timing |
The longest amount of time between onDraw executions. |
|
Beta |
|
onDraw.interval.mean |
timing |
The average amount of time between onDraw executions. |
|
Beta |
|
onDraw.interval.min |
timing |
The shortest amount of time between onDraw executions. |
|
Beta |
|
playback.rate |
gauge |
The video player’s playback rate. |
Beta |
||
received.annotation.bytes.Hz |
gauge |
stream |
The number of annotation bytes received per second. |
|
Beta |
received.annotation.frames.Hz |
gauge |
stream |
The number of annotation frames received per second. |
|
Beta |
received.data.bytes.Hz |
gauge |
stream |
The number of data bytes received per second. |
|
Beta |
received.data.frames.Hz |
gauge |
stream |
The number of frames received per second. |
|
Beta |
streams.interval |
timing |
The amount of time it took to receive new streams. |
|
Beta |
|
streams.received.Hz |
gauge |
The number of streams received per second. |
|
Beta |
|
sync.error.max |
gauge |
The highest number of sync errors. |
|
Beta |
|
sync.error.mean |
gauge |
The average number of sync errors. |
|
Beta |
|
sync.error.min |
gauge |
The minimum number of sync errors. |
|
Beta |
|
videoTime |
gauge |
The video time. |
|
Beta |
GCL Metrics
GCL Metrics relate to the connection library used in several Genvid MILE SDK services. Each metric in this table is emitted for each service that uses the GCL, with a different prefix:
SDK:
genvid.sdk.gcl.*
ComposeD:
genvid.compose-backend.gcl.*
genvid.compose-frontend.gcl.*
genvid.compose-gameframes.gcl.*
GVEncode:
genvid.gvencode-compose.gcl.*
For example, genvid.sdk.gcl.received
refers to
gcl.received.frame.count
, gcl.received.frame.missing
, etc.
Name |
Type |
Tags |
Description |
Unit |
Status |
---|---|---|---|---|---|
gcl.received.frame.count |
gauge |
stream, streamtype |
The number of frames received since the last metric submission. |
Beta |
|
gcl.received.frame.missing |
gauge |
stream, streamtype |
The number of frames flagged as missing that were received since the last metric submission. |
Beta |
|
gcl.received.frame.rate |
gauge |
stream, streamtype |
The number of frames received each second. |
fps |
Beta |
gcl.received.frame.size |
gauge |
stream, streamtype |
The size of frames received each second. |
Bps |
Beta |
gcl.received.frame.total |
gauge |
stream, streamtype |
The total number of frames received over the lifetime of the session. |
Beta |
|
gcl.sent.frame.count |
gauge |
stream, streamtype |
The number of frames sent since the last metric submission. |
Beta |
|
gcl.sent.frame.missing |
gauge |
stream, streamtype |
The number of frames flagged as missing that were sent since the last metric submission. |
Beta |
|
gcl.sent.frame.rate |
gauge |
stream, streamtype |
The number of frames sent each second. |
fps |
Beta |
gcl.sent.frame.size |
gauge |
stream, streamtype |
The size of frames sent each second. |
Bps |
Beta |
gcl.sent.frame.total |
gauge |
stream, streamtype |
The total number of frames sent over the lifetime of the session. |
Beta |
|
gcl.buffersize |
gauge |
socketname |
The average size of a packet read or written through a socket over one second. Sent once per second. Triggered when a socket reads or writes a packet. |
bytes |
Beta |
gcl.packet.count |
gauge |
socketname |
The number of packets read or written through a socket over one second. Sent once per second. Triggered when a socket reads or writes a packet. |
fps |
Beta |
gcl.packet.latency |
gauge |
socketname |
The average latency between 2 packets read or written through a socket over one second. Sent once per second. Triggered when a socket reads or writes a packet. |
ms |
Beta |
gcl.packet.remaining |
gauge |
socketname |
The number of packets in transit per second. Sent once per second. Triggered when a socket reads or writes a packet. |
Beta |
|
gcl.packet.size |
gauge |
socketname |
The size of all packets read or written through a socket over one second. Sent once per second. Triggered when a socket reads or writes a packet. |
Bps |
Beta |
gcl.packet.total |
gauge |
socketname |
The total cumulative number of packets read or written through a socket over the lifetime of the current session. Sent once per second. Triggered when a socket reads or writes a packet. |
Beta |