View stream health metrics with the Wowza Video REST API
Learn how to use the REST API to get health metrics for transcoders in the Wowza Video™ service. Health metrics include details about the source connection to the transcoder and transcoder processing data that can help you understand how a stream was received and processed.
View current stream health metrics for an active transcoder
Current metrics for an active transcoder include details about the connection between the source encoder and the transcoder as well as data about how the transcoder is processing the stream.
View current stream health metrics for an active transcoder by sending a
GET
request to the
/transcoders/[transcoder_id]/uptimes/[uptime_id]/metrics/current
endpoint.
You can use the following sample request, making sure to:
-
Set
transcoder_id
to the id for the transcoder. -
Set the
uptime_id
to the id for the uptime record for the transcoder. You can fetch all uptimes for a transcoder by sending aGET
request to the/transcoders/[transcoder_id]/uptimes
endpoint. - Add any query parameters to narrow down the parameters returned in the response, using the API reference documentation as a resource. See the Endpoint Reference button below.
Sample request
curl -X GET \
-H "Authorization: Bearer ${WV_JWT}" \
"${WV_HOST}/api/${WV_VERSION}/transcoders/[transcoder_id]/uptimes/[uptime_id]/metrics/current"
Sample response
The response includes:
-
Metrics and data for the active session (
uptime_id
) of the transcoder (transcoder_id
).
{
"current": {
"unique_views": {
"value": 37,
"status": "normal",
"text": "",
"units": ""
},
"connected": {
"value": "Yes",
"status": "normal",
"text": "",
"units": ""
},
"bytes_in_rate": {
"value": 1142.7,
"status": "normal",
"text": "",
"units": "Kbps"
},
"bytes_out_rate": {
"value": 5707.8,
"status": "normal",
"text": "",
"units": "Kbps"
},
"configured_bytes_out_rate": {
"value": 6696000,
"status": "normal",
"text": "",
"units": "bps"
},
"width": {
"value": 720,
"status": "warning",
"text": "Configured width is different from what Wowza Video is receiving from the source: 720.",
"units": "px"
},
"height": {
"value": 480,
"status": "warning",
"text": "Configured height is different from what Wowza Video is receiving from the source: 480.",
"units": "px"
},
"frame_size": {
"value": "720x480",
"status": "warning",
"text": "Configured frame size is different from what Wowza Video is receiving from the source: 720x480.",
"units": ""
},
"frame_rate": {
"value": 30.2,
"status": "normal",
"text": "",
"units": "FPS"
},
"keyframe_interval": {
"value": 30,
"status": "normal",
"text": "",
"units": "GOP"
},
"video_codec": {
"value": "avc1",
"status": "normal",
"text": "",
"units": ""
},
"audio_codec": {
"value": "AAC",
"status": "normal",
"text": "",
"units": ""
},
"bits_in_rate": {
"value": 1142.7,
"status": "normal",
"text": "",
"units": "Kbps"
},
"bits_out_rate": {
"value": 5707.8,
"status": "normal",
"text": "",
"units": "Kbps"
},
"stream_target_status_3ypvxt00_d1j8jfzs": {
"value": "Active",
"status": "normal",
"text": "",
"units": ""
},
"stream_target_status_fsfp9bqb_d1j8jfzs": {
"value": "Active",
"status": "normal",
"text": "",
"units": ""
},
"stream_target_status_ydbvnxkk_d1j8jfzs": {
"value": "Active",
"status": "normal",
"text": "",
"units": ""
}
},
"limits": {
"fields": [
"unique_views",
"connected",
"bytes_in_rate",
"bytes_out_rate",
"configured_bytes_out_rate",
"width",
"height",
"frame_size",
"frame_rate",
"keyframe_interval",
"video_codec",
"audio_codec",
"bits_in_rate",
"bits_out_rate",
"stream_target_status_3ypvxt00_d1j8jfzs",
"stream_target_status_fsfp9bqb_d1j8jfzs",
"stream_target_status_ydbvnxkk_d1j8jfzs"
]
}
}
View historic stream health metrics for a transcoder
Historic health metrics include the audio and video codec used, the rate of bits into and out of the transcoder, the frame rate and keyframe interval of the stream, and the width and height of the frame.
Historic metrics are recorded every 20 seconds. As a result, brief irregularities might not register or be tracked and visualized. If the uptime session was longer than two days, the request returns data for only the most recent 48 hours of the uptime session.
View historic stream health metrics for an active transcoder by sending
a GET
request to the
/transcoders/[transcoder_id]/uptimes/[uptime_id]/metrics/historic
endpoint.
You can use the following sample request, making sure to:
-
Set
transcoder_id
to the id for the transcoder. -
Set the
uptime_id
to the id for the uptime record for the transcoder. You can fetch all uptimes for a transcoder by sending aGET
request to the/transcoders/[transcoder_id]/uptimes
endpoint. - Add any query parameters to narrow down the parameters returned in the response, using the API reference documentation as a resource. See the Endpoint Reference button below.
Sample request
curl -X GET \
-H "Authorization: Bearer ${WV_JWT}" \
"${WV_HOST}/api/${WV_VERSION}/transcoders/[transcoder_id]/uptimes/[uptime_id]/metrics/historic
Sample response
The response includes:
-
Metrics and data for the active session (
uptime_id
) of the transcoder (transcoder_id
).
{
"history": [
{
"bits_in_rate": {
"value": 1653232,
"status": "ok",
"text": "",
"units": ""
},
"bits_out_rate": {
"value": 6051976,
"status": "ok",
"text": "",
"units": ""
},
"frame_rate": {
"value": 30,
"status": "ok",
"text": "",
"units": ""
},
"width": {
"value": 1920,
"status": "ok",
"text": "",
"units": ""
},
"height": {
"value": 1080,
"status": "ok",
"text": "",
"units": ""
},
"keyframe_interval": {
"value": 30,
"status": "ok",
"text": "",
"units": ""
},
"video_codec": {
"value": avc1,
"status": "ok",
"text": "",
"units": ""
},
"audio_codec": {
"value": AAC,
"status": "ok",
"text": "",
"units": ""
},
"created_at": "2017-04-19T00:18:22.161Z"
},
{
"bits_in_rate": {
"value": 1651880,
"status": "ok",
"text": "",
"units": ""
},
"bits_out_rate": {
"value": 6669056,
"status": "ok",
"text": "",
"units": ""
},
"frame_rate": {
"value": 29.885829415715246,
"status": "ok",
"text": "",
"units": ""
},
"width": {
"value": 1920,
"status": "ok",
"text": "",
"units": ""
},
"height": {
"value": 1080,
"status": "ok",
"text": "",
"units": ""
},
"keyframe_interval": {
"value": 30,
"status": "ok",
"text": "",
"units": ""
},
"video_codec": {
"value": avc1,
"status": "ok",
"text": "",
"units": ""
},
"audio_codec": {
"value": AAC,
"status": "ok",
"text": "",
"units": ""
},
"created_at": "2017-04-19T00:18:42.161Z"
},
...
{
"bits_in_rate": {
"value": 724880,
"status": "ok",
"text": "",
"units": ""
},
"bits_out_rate": {
"value": 3865840,
"status": "ok",
"text": "",
"units": ""
},
"frame_rate": {
"value": 30.060120240480963,
"status": "ok",
"text": "",
"units": ""
},
"width": {
"value": 1920,
"status": "ok",
"text": "",
"units": ""
},
"height": {
"value": 1080,
"status": "ok",
"text": "",
"units": ""
},
"keyframe_interval": {
"value": 30,
"status": "ok",
"text": "",
"units": ""
},
"video_codec": {
"value": avc1,
"status": "ok",
"text": "",
"units": ""
},
"audio_codec": {
"value": aac,
"status": "ok",
"text": "",
"units": ""
},
"created_at": "2017-04-19T00:23:22.161Z"
}
],
"limits": {
"from": "2017-04-19T00:16:41.000Z",
"to": "2017-04-19T02:32:50.000Z",
"fields": [
"bits_in_rate",
"bits_out_rate",
"frame_rate",
"width",
"height",
"keyframe_interval",
"video_codec",
"audio_codec"
]
}
}
Related API requests
GET
/transcoders/ID/state — View an active transcoder’s uptime_id
.
GET /transcoders/ID/uptimes — Get a list of uptime records for a transcoder.
GET /transcoders/ID/uptimes/ID — Get the details of a specific uptime for a transcoder.