转载:https://cwiki.apache.org/confluence/display/CLOUDSTACK/Debugging+SystemVm+agents
Debugging SystemVm agents
Skip to end of metadata
Created by Prasanna Santhanam, last modified by Ryan Lei - Taiwan on Jul 29, 2013 Go to start of metadata
You can use Eclipse or any Java IDE to debug the cloudstack systemVM services as described below:
Debug a live agent
login into ssvm, either console proxy or ssh(port 3922)
kill all the processes named as(run.sh/_run.sh, and java)
cd /usr/local/cloud/systemvm
add parameters “-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787” after “java ” in the last line of _run.sh
./run.sh, the java agent will start, with debug port 8787 is listened on.
allow port 8787 in ssvm, “iptables -I INPUT -i eth1 -p tcp -m state –state NEW -m tcp –dport 8787 -j ACCEPT”, either eth1 or eth2 is ok.
Then you can connect to agent in ssvm, based on the ip address based on on eth1 or eth2, and port 8787
Debug a mock agent
Or if the above steps sound too complicated, you can debug the systemvm resource locally using the cloudstack codebase:
For example, There is unit test code, called, LocalNfsSecondaryStorageResourceTest, you can mock the commands send to resource, then test it locally, but the requirement is that your local machine needs to be able to mount nfs(Both Linux/Mac works, Windows can’t). I’d prefer unit test, as it’s easier to test/debug/fix.
Debugging SystemVm agents
最新推荐文章于 2021-10-09 09:37:14 发布