本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
此表格針對使用 Amazon Kinesis Agent 時遇到的常見問題,提供疑難排解資訊和解決方案。
問題 | 解決方案 |
---|---|
為什麼 Kinesis Agent 無法在 Windows 上運作? |
適用於 Windows 的 Kinesis 代理程式是不同於適用於 Linux 平台的 Kinesis 代理程式的軟體。 |
為什麼 Kinesis 代理程式會減速和/或 RecordSendErrors 增加? |
這通常是由於來自 Kinesis 的限流。檢查 Kinesis Data Streams 的 排除限流之後,請查看 Kinesis 代理程式是否設定為追蹤大量小型檔案。Kinesis 代理程式追蹤新檔案時會有延遲,因此 Kinesis 代理程式應追蹤少量較大的檔案。嘗試將日誌檔案合併至較大的檔案中。 |
如何解決java.lang.OutOfMemoryError 例外狀況? |
當 Kinesis Agent 沒有足夠的記憶體來處理其目前的工作負載時,就會發生這種情況。嘗試增加 /usr/bin/start-aws-kinesis-agent 中的 JAVA_START_HEAP 和 JAVA_MAX_HEAP 並重新啟動代理程式。 |
如何解決IllegalStateException : connection pool shut down 例外狀況? |
Kinesis 代理程式沒有足夠的連線可以處理其目前的工作負載。嘗試在位於 /etc/aws-kinesis/agent.json 的一般代理程式組態設定中增加 maxConnections 和 maxSendingThreads 。這些欄位的預設值是可用執行期處理器的 12 倍。如需進階代理程式組態設定的詳細資訊,請參閱 AgentConfiguration.java |
如何使用 Kinesis 代理程式對另一個問題進行偵錯? | 可以在 /etc/aws-kinesis/log4j.xml 中啟用 DEBUG 層級日誌。 |
我應該如何對 Kinesis Agent 進行設定? | maxBufferSizeBytes 越小,Kinesis 代理程式傳送資料的頻率就越高。這可能很好,因為這樣會減少記錄的交付時間,但也增加了 Kinesis 的每秒請求。 |
為什麼 Kinesis 代理程式傳送重複的日誌? | 發生這種情況是由於檔案追蹤組態錯誤。請確保每個 fileFlow’s filePattern 僅與一個檔案相符。如果正在 copytruncate 模式中使用 logrotate 模式下,也可能發生這種情況。嘗試將模式變更為預設模式,或建立模式以避免重複。如需有關處理重複記錄的詳細資訊,請參閱處理重複記錄。 |