View a markdown version of this page

使用 CloudWatch 監控 Amazon Kinesis Video Streams 指標 - Amazon Kinesis Video Streams

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 CloudWatch 監控 Amazon Kinesis Video Streams 指標

您可以使用 Amazon CloudWatch 監控 Kinesis 影片串流,該串流會收集來自 Amazon Kinesis Video Streams 的原始資料,並將其處理為可讀且幾近即時的指標。這些統計資料會記錄 15 個月,讓您可以存取歷史資訊,並更清楚 Web 應用程式或服務的效能。

在 Amazon Kinesis Video Streams 主控台中,您可以透過兩種方式檢視 Amazon Kinesis 影片串流的 CloudWatch 指標:

  • 在儀表板頁面中,選擇目前區域帳戶層級指標區段中的影片串流索引標籤。

  • 在影片串流詳細資訊頁面中,選擇 Monitoring (監控) 索引標籤。

Amazon Kinesis Video Streams 提供下列指標:

指標 說明
ArchivedFragmentsConsumed.Media 所有 APIs 消耗的片段媒體配額點數量。如需配額點概念的說明,請參閱 片段中繼資料和片段媒體配額。

單位:Count

ArchivedFragmentsConsumed.Metadata 所有 APIs 消耗的片段中繼資料配額點數量。如需配額點概念的說明,請參閱 片段中繼資料和片段媒體配額。

單位:Count

PutMedia.Requests

指定串流的 PutMedia API 請求數量。

單位:Count

PutMedia.IncomingBytes

作為 串流一部分接收PutMedia的位元組數。

單位:位元組

PutMedia.IncomingFragments

作為PutMedia串流 的一部分接收的完整片段數量。

單位:Count

PutMedia.IncomingFrames

作為 PutMedia 串流一部分接收的完整影格數量。

單位:Count

PutMedia.ActiveConnections

服務主機的連線總數。

單位:Count

PutMedia.ConnectionErrors

建立串流PutMedia連線時發生錯誤。

單位:Count

PutMedia.FragmentIngestionLatency

Amazon Kinesis Video Streams 收到片段的第一個位元組和最後一個位元組之間的時間差異。

單位:毫秒

PutMedia.FragmentPersistLatency

接收和封存完整片段資料所花費的時間。

單位:Count

PutMedia.Latency

建立連線時,請求與來自 InletService 的 HTTP 回應之間的時間差異。

單位:Count

PutMedia.BufferingAckLatency

Amazon Kinesis Video Streams 收到新片段的第一個位元組與為片段傳送緩衝 ACK 之間的時間差異。

單位:毫秒

PutMedia.ReceivedAckLatency

Amazon Kinesis Video Streams 收到新片段的最後位元組與傳送片段的已接收 ACK 之間的時間差異。

單位:毫秒

PutMedia.PersistedAckLatency

Amazon Kinesis Video Streams 收到新片段的最後位元組與為片段傳送持久性 ACK 之間的時間差異。

單位:毫秒

PutMedia.ErrorAckCount

PutMedia 為串流執行 時傳送的錯誤 ACKs 數目。

單位:Count

PutMedia.Success

1 代表成功寫入的每個片段;0 代表每個失敗的片段。此指標的平均值表示已傳送多少完整的有效片段。

單位:Count

GetMedia.Requests

指定串流的 GetMedia API 請求數量。

單位:Count

GetMedia.OutgoingBytes

做為指定串流 GetMedia API 的一部分,從服務傳出的位元組總數。

單位:位元組

GetMedia.OutgoingFragments

GetMedia 為串流執行 時傳送的片段數量。

單位:Count

GetMedia.OutgoingFrames

在指定串流GetMedia上於 期間傳送的影格數。

單位:Count

GetMedia.MillisBehindNow

目前伺服器時間戳記與傳送之最後一個片段的伺服器時間戳記之間的時間差異。

單位:毫秒

GetMedia.ConnectionErrors

未成功建立的連線數。

單位:Count

GetMedia.Success

1 代表成功傳送的每個片段;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetMediaForFragmentList.OutgoingBytes

做為指定串流 GetMediaForFragmentList API 的一部分,從服務傳出的位元組總數。

單位:位元組

GetMediaForFragmentList.OutgoingFragments

做為指定串流 GetMediaForFragmentList API 的一部分,從服務送出的片段總數。

單位:Count

GetMediaForFragmentList.OutgoingFrames

做為指定串流 GetMediaForFragmentList API 的一部分,從服務送出的影格總數。

單位:Count

GetMediaForFragmentList.Requests

指定串流的 GetMediaForFragmentList API 請求數量。

單位:Count

GetMediaForFragmentList.Success

1 代表成功傳送的每個片段;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

ListFragments.Latency

ListFragments API 呼叫指定串流名稱的延遲。

單位:毫秒

ListFragments.Requests

指定串流的 ListFragments API 請求數量。

單位:Count

ListFragments.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetHLSStreamingSessionURL.Latency

GetHLSStreamingSessionURL API 呼叫給定串流名稱的延遲。

單位:毫秒

GetHLSStreamingSessionURL.Requests

指定串流的 GetHLSStreamingSessionURL API 請求數量。

單位:Count

GetHLSStreamingSessionURL.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetHLSMasterPlaylist.Latency

GetHLSMasterPlaylist API 呼叫指定串流名稱的延遲。

單位:毫秒

GetHLSMasterPlaylist.Requests

指定串流的 GetHLSMasterPlaylist API 請求數目。

單位:Count

GetHLSMasterPlaylist.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetHLSMediaPlaylist.Latency

GetHLSMediaPlaylist API 呼叫給定串流名稱的延遲。

單位:毫秒

GetHLSMediaPlaylist.Requests

指定串流的 GetHLSMediaPlaylist API 請求數量。

單位:Count

GetHLSMediaPlaylist.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetMP4InitFragment.Latency

GetMP4InitFragment API 呼叫給定串流名稱的延遲。

單位:毫秒

GetMP4InitFragment.Requests

指定串流的 GetMP4InitFragment API 請求數量。

單位:Count

GetMP4InitFragment.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetMP4MediaFragment.Latency

GetMP4MediaFragment API 呼叫給定串流名稱的延遲。

單位:毫秒

GetMP4MediaFragment.Requests

指定串流的 GetMP4MediaFragment API 請求數量。

單位:Count

GetMP4MediaFragment.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetMP4MediaFragment.OutgoingBytes

做為指定串流 GetMP4MediaFragment API 的一部分,從服務傳出的位元組總數。

單位:位元組

GetTSFragment.Latency

GetTSFragment API 呼叫指定串流名稱的延遲。

單位:毫秒

GetTSFragment.Requests

指定串流的 GetTSFragment API 請求數量。

單位:Count

GetTSFragment.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetTSFragment.OutgoingBytes

做為指定串流 GetTSFragment API 的一部分,從服務傳出的位元組總數。

單位:位元組

GetDASHStreamingSessionURL.Latency

GetDASHStreamingSessionURL API 呼叫指定串流名稱的延遲。

單位:毫秒

GetDASHStreamingSessionURL.Requests

指定串流的 GetDASHStreamingSessionURL API 請求數量。

單位:Count

GetDASHStreamingSessionURL.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetDASHManifest.Latency

GetDASHManifest API 呼叫指定串流名稱的延遲。

單位:毫秒

GetDASHManifest.Requests

指定串流的 GetDASHManifest API 請求數量。

單位:Count

GetDASHManifest.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetClip.Latency

指定視訊串流名稱的 GetClip API 呼叫延遲。

單位:毫秒

GetClip.Requests

指定影片串流的 GetClip API 請求數量。

單位:Count

GetClip.Success

1 代表每個成功的請求;0 代表每個失敗。平均值表示成功率。

注意

失敗包括 400 個 (使用者) 錯誤和 500 個 (系統) 錯誤。如需啟用請求和回應摘要的詳細資訊,包括 AWS 請求 IDs,請參閱請求/回應摘要記錄。

單位:Count

GetClip.OutgoingBytes

做為指定影片串流 GetClip API 的一部分,從服務傳出的位元組總數。

單位:位元組

CloudWatch 指標指引

CloudWatch 指標有助於尋找下列問題的答案:

資料是否到達 Amazon Kinesis Video Streams 服務?

相關指標:

  • PutMedia.IncomingBytes

  • PutMedia.IncomingFragments

  • PutMedia.IncomingFrames

動作項目:

  • 如果這些指標下降,請檢查您的應用程式是否仍在將資料傳送至服務。

  • 檢查網路頻寬。如果您的網路頻寬不足,可能會降低服務接收資料的速率。

為什麼 Amazon Kinesis Video Streams 服務未成功擷取資料?

相關指標:

  • PutMedia.Requests

  • PutMedia.ConnectionErrors

  • PutMedia.Success

  • PutMedia.ErrorAckCount

動作項目:

  • 如果 增加PutMedia.ConnectionErrors,請查看生產者用戶端收到的 HTTP 回應和錯誤代碼,以查看建立連線時發生哪些錯誤。

  • 如果 下降PutMedia.Success或增加PutMedia.ErrorAckCount,請查看服務傳送的 ack 回應中的 ack 錯誤碼,以了解資料擷取失敗的原因。如需詳細資訊,請參閱 AckErrorCode.Values。

為什麼無法以從生產者傳送的相同速率從 Amazon Kinesis Video Streams 服務讀取資料?

相關指標:

  • PutMedia.FragmentIngestionLatency

  • PutMedia.IncomingBytes

動作項目:

  • 如果這些指標下降,請檢查連線的網路頻寬。低頻寬連線可能導致資料以較低的速率傳送至服務。

為什麼主控台沒有影片,或為何影片播放會發生延遲?

相關指標:

  • PutMedia.FragmentIngestionLatency

  • PutMedia.FragmentPersistLatency

  • PutMedia.Success

  • ListFragments.Latency

  • PutMedia.IncomingFragments

動作項目:

  • 如果 增加PutMedia.FragmentIngestionLatency或減少PutMedia.IncomingFragments,請檢查網路頻寬以及資料是否仍在傳送中。

  • 如果 中有下降PutMedia.Success,請檢查 ack 錯誤代碼。如需詳細資訊,請參閱 AckErrorCode.Values。

  • 如果 PutMedia.FragmentPersistLatency或 增加ListFragments.Latency,您很可能遇到服務問題。如果條件持續很長一段時間,請洽詢您的客戶服務聯絡人,了解您的服務是否有問題。

讀取即時資料時延遲的原因為何,以及為何用戶端落後於串流前頭之後?

相關指標:

  • GetMedia.MillisBehindNow

  • GetMedia.ConnectionErrors

  • GetMedia.Success

動作項目:

  • 如果 增加GetMedia.ConnectionErrors,消費者可能會落後於讀取串流,因為經常嘗試重新連線至串流。查看 GetMedia 請求傳回的 HTTP 回應/錯誤代碼。

  • 如果 下降GetMedia.Success,這可能是因為服務無法將資料傳送給消費者,這會導致連線中斷,並從消費者重新連線,這會導致消費者落後於串流前端。

  • 如果 增加GetMedia.MillisBehindNow,請查看您的頻寬限制,查看您是否因為頻寬較低而以較慢的速度接收資料。

用戶端是否從 Kinesis 影片串流讀取資料,並以什麼速率讀取資料?

相關指標:

  • GetMedia.OutgoingBytes

  • GetMedia.OutgoingFragments

  • GetMedia.OutgoingFrames

  • GetMediaForFragmentList.OutgoingBytes

  • GetMediaForFragmentList.OutgoingFragments

  • GetMediaForFragmentList.OutgoingFrames

動作項目:

  • 這些指標指出即時和封存資料的讀取速率。

為什麼用戶端無法從 Kinesis 影片串流讀取資料?

相關指標:

  • GetMedia.ConnectionErrors

  • GetMedia.Success

  • GetMediaForFragmentList.Success

  • PutMedia.IncomingBytes

動作項目:

  • 如果 增加GetMedia.ConnectionErrors,請查看GetMedia請求傳回的 HTTP 回應和錯誤代碼。如需詳細資訊,請參閱 AckErrorCode.Values。

  • 如果您嘗試讀取最新或即時資料,請檢查串流PutMedia.IncomingBytes中是否有資料可供服務傳送給消費者。

  • 如果 GetMedia.Success或 下降GetMediaForFragmentList.Success,可能是因為服務無法將資料傳送給消費者。如果條件持續很長一段時間,請洽詢您的客戶服務聯絡人,了解您的服務是否有問題。