本文檔介紹了您在使用應用採集器過程中遇到的常見問題。
連接埠9996被佔用報錯如何處理?
- 分別修改collector/collector.config和javaagent/javaagent.config配置項。
collector.listen.port=9996 profiler.collector.port=9996
- 分別修改collector/collector.config和javaagent/javaagent.config配置項。
找不到JAVA_HOME報錯如何處理?
- 如果是Linux系統在collector/run.sh和javaagent/attach.sh中手動添加JAVA_HOME,如果是Windows系統在啟動命令中配置路徑。
com.sun.tools.attach.AttachNotSupportedException: Unable to open socket file: target process not responding or HotSpot VM not loaded
報錯如何處理?- 確保對解壓的檔案已增加許可權(參考採集部署)如agent為獨立部署,確保agent啟動的賬戶和應用啟動的賬戶一致。
Windows如何啟動?
- 方式一: cmd進入collector的目錄,執行如下命令:
start /b java -jar javaagent-collector.jar
- 方式二:cmd進入javaagent目錄,執行命令:
`java -cp "%JAVA_HOME%\lib\tools.jar;%cd%\javaagent-bootstrap.jar" com.alibaba.adam.javaagent.bootstrap.AgentAttacher -p %1`
- 方式一: cmd進入collector的目錄,執行如下命令:
collector重啟會將已收集的資料和緩衝清空,使用者在重啟應用/agent前需要做備份嗎?
- 不用,agent重啟,新資料會和原資料去重合并。
應用採集器支援websphere嗎?
- 支援使用sun/oracle JDK 1.6+版本部署的websphere,不支援IBM內建的JDK。
多個應用可以部署多個agent嗎?
- 一個JVM可部署一個agent用於監控,多個應用無論是在多台機器還是部署在一台機器上,只要是用多個服務容器獨立部署,即可各自部署agent。 但如果多個應用部署在同一個服務容器中,由於已經在一個JVM內,一個agent會監控所有,無須部署多個agent,否則會報錯,提示重複。
一個應用部署有多台伺服器,是否需要全部採集監控?
- 不需要,如負載平衡,抽樣部署2台即可。
如果客戶應用未使用jdk而使用jre,是否可以?
- 可以,需要客戶將jdk裡的tools.jar拷貝至${JAVA_HOME}/lib/目錄下即可使用。
啟動後,在container的標準輸出中,報
agent already loaded
如何處理?- 由於JVM不能重複載入agent,需要重啟應用後,再進行attach操作。
啟動失敗,報
Connection refused
如何處理?- 驗證PID是否正確。