您可以通过以下两种方式安装配置Java插件(查看兼容性):
在云端页面中安装配置Java插件,相关说明请参考“在云端页面安装管理插件”。
在主机端通过命令安装配置Java插件,下面主要介绍这种方式的安装配置方法。
此外,您还可以在Docker容器中部署Java插件,详细说明请参考“在Docker容器中部署Java插件”。
安装Java插件
要监控Java应用,您需要安装Java插件。首先请切换至Smart Agent安装目录的bin目录,然后执行./plugin.sh -install Java -P [Port] -appType [Web Container] -appHome [Web Container_Home]命令安装插件,例如:
./plugin.sh -install Java -P 1001 –appType tomcat –appHome /usr/lib/tomcat/apache-tomcat-7.0.63
其中:
-P参数用于指定端口,对于本来没有端口的插件,指定端口可以标识插件的唯一性。同一插件可以通过指定不同的端口安装多个,当然您也可以不指定端口,安装时直接执行./plugin.sh -install Java命令即可。
-appType和-appHome分别用于设置Java插件需要绑定的Web容器的名称和路径,不同容器需要提供的路径(即appHome)是不一样的,详细说明见下表。
容器 | appHome说明 |
Tomcat | 需要配置Tomcat安装路径:-appHome <Tomcat_home> |
JBoss | 需要配置JBoss安装路径:-appHome <JBoss_home> |
Weblogic | 需要配置Weblogic启动文件(startWebLogic.sh)的路径: -appHome <WebLogic_home>/user_projects/domains/<mydomain>/bin |
Jetty | 需要配置Jetty安装路径:-appHome <Jetty_home> |
WebSphere | 需要配置WebSphere应用程序服务器中待监控服务器的server.xml文件的路径: -appHome <WebSphere_home>/profiles/<appsrv-name>/config/cells/<cell-name>/nodes/<node-name>/servers/<server-name> |
Resin | 需要配置Resin安装路径:-appHome <Resin_home> |
Karaf | 需要配置Karaf安装路径:-appHome <Karaf_home> |
绑定Web容器后,安装插件时会自动配置Web容器,可有效防止手动配置时出现错误。您也可以不绑定Web容器,即不指定-appType和-appHome两个参数。
如果安装时不绑定Web容器,您需要手动配置Web容器,详细说明见“配置Web容器”。
配置Java插件
安装Java插件后,您可以通过以下两种方式配置插件:
逐个配置
执行./plugin.sh -config Java -P [Port]命令,通过配置引导逐步配置插件配置插件,例如:
./plugin.sh -config Java -P 1001
安装插件时未指定端口时,直接执行./plugin.sh -config Java命令即可。
按照配置引导的提示,确认配置项后输入对应的序号,查看当前配置项的值并输入新的值。配置完成后,输入对应序号保存配置并退出配置引导。
批量配置
您还可以在执行./plugin.sh -config Java -P [Port]命令时,通过指定参数名称和参数值直接配置插件的多个配置项,例如:
./plugin.sh -config Java -P 1001 -a ERP_Purchase -cp com.neu.* -ot true
安装插件时未指定端口时,直接执行./plugin.sh -config Java命令并配置参数即可。
其中:
“-a”用于配置:appname
“-dt”用于配置:dumpThread
“-cp”用于配置:count_pack
“-jp”用于配置:jvm_period
“-rt”用于配置:reloadTime
“-btetl”用于配置:backendTaskExecTimeLimit
“-f”用于配置:frequency
“-param”用于配置:param
“-hte”用于配置:http.trace.exclude
“-pi”用于配置:packg.include
“-sp”用于配置:sqlParam
“-p”用于配置:protocol
“-uh”用于配置:udpHost
“-up”用于配置:udpPort
配置项说明
安装Java插件后,您可以在Java插件conf目录中的app.conf文件中查看用于深入监控JVM、后台任务、数据库等数据采集的配置项,主要配置项及相关说明见下表:
配置项 | 说明 |
appname | 用于指定需要监控的应用系统显示在云端的名称,默认值为defaultJVM。监控JVM或后台任务时需要配置该项。 比如,现需要监控这台主机的一个ERP采购系统,为了能够清楚地知道Java插件应该配置到哪个Web应用容器,需将appname的值改为类似"ERP_Purchase"这种有意义的进程名字。 如果这台主机上有多个需要监控的应用系统,请将已下载的Java插件复制多份,依次将每个Java插件的appname改为你认为有意义的进程名,便于区分不同JVM进程的数据。如果不改,多个应用系统的JVM数据都会发送至这台主机中名为defaultJVM的JVM进程下,导致数据混乱。 修改appname后不需要重启进程,修改完成后,数据会自动发送至该进程下。 |
count_pack | 用于指定需要监控的包空间下的对象,默认值为空,即不监控任何对象的实例个数和大小,只有配置了才会监控。其中,包空间是用户业务代码的空间范围。比如,需要监控com.neu下的所有对象,则将count_pack的值设置为com.neu.*;如果只想监控com.baidu.bean下的对象,则将count_pack的值设置为com.baidu.bean。有多个包时需要以分号分割,如"count_pack":"com.neu*;com.baidu.bean"。 修改count_pack后不需要重启进程,修改完成后,会自动监控已配置的包空间下的对象。但是,如果在进程启动一个小时后配置了包(如com.renren.bean),则一个小时之前com.renren.bean下的对象是统计不到的,只能统计到配置之后的对象。 |
dumpThread | 用于设置是否开启线程监控功能,默认值为false。如果要开启线程监控功能,可以将dumpThread的值改为true。 修改dumpThread后不需要重启进程。 |
jvm_period | 用于设置JVM数据的发送频率,默认值为60(单位为秒),即每60秒发送一次JVM的堆、非堆、GC、对象个数大小、线程等数据。如果要改变JVM数据的发送频率,直接修改jvm_period的值。 修改jvm_period后不需要重启进程。 |
reloadTime | reloadTime 用于设置修改配置后,多长时间能够生效,默认值为300(单位为秒),即完成修改300秒后,修改的配置才能生效。 修改reloadTime后不需要重启进程。 需说明的是,该配置项需要与cloudwise_env结合使用,cloudwise_env用于配置数据发送的环境,默认为空,即线上,可以设置beta、qa、local等作为测试使用。 |
sqlParam | 用于配置是否获取SQL中参数信息,默认值为false即不获取,改为true后可获取SQL中参数信息。 请注意,修改后需要重启Web容器才能生效,且该配置仅适用于MySQL数据库。 |
backendTaskExecTimeLimit | 用于配置定时任务采样的频率,默认值1000,单位是毫秒,即每1000ms采集一次定时任务的数据。 |
param | 用于配置是否获取请求参数,一般可以获取get方式的请求参数。 |
http.trace.exclude | 用于配置不获取哪些url数据,例如设置为“~.*js;~.*css;~.*jpg”,则排除所有以js、css、jpg结尾的url,即不获取以js、css、jpg结尾的url的数据。 |
packg.include | 用于配置获取哪些详细的代码信息,需要设置Java程序的包名,例如设置为 "com.aa.service.*;com.bb.action",则会获取service 包下面所有的类信息以及action 包下面第一层的类信息。 |
protocol | 用于配置Java插件采集的数据发送到 SendProxy 的方式,可以是 http、udp方式。但是该配置对JVM数据无效。 |
udpHost | protocol中配置的数据发送方式为udp方式时,用于配置SendProxy 主机的IP。 |
udpPort | protocol中配置的数据发送方式为udp方式时,用于配置SendProxy的端口(port)。 |
extensionPath | 用于配置extension.xml文件的路径,默认extension.xml文件与app.conf文件位于同一目录(conf)下,因此参数值默认为extension.xml。 extension.xml用于:
|
funLimitTime | 用于配置方法栈阈值,默认为2ms,即不超过2ms的方法栈会自动忽略且不发送至透视宝云端。 |
要深入监控JVM时会用到以下配置项:
appname、count_pack、dumpThread、jvm_period、reloadTime
配置Web容器
除配置Java插件,您还需要配置Web容器。如果安装Java插件时绑定了Web容器请忽略本步;如果未绑定Web容器,安装配置Java插件后,根据Java应用运行的Web容器,您还需要在监控主机中配置对应Web容器的JVM运行参数,配置完成后需重启容器。
手动配置Tomcat
如果Java应用运行在Tomcat容器中,需要在Tomcat中配置JVM运行参数。
在Linux下配置Tomcat
在Tomcat 的catalina.sh文件中搜索到“Execute The Requested Command”,该文件一般位于Tomcat安装目录的bin目录下。
然后将如下命令添加到该行的上方,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
if [ "$1" = "start" -o "$1" = "run" ]; then export JAVA_OPTS="$JAVA_OPTS -Xbootclasspath/p:${smartagent_home}/plugins/${javaagent文件夹名称}/conf/ -javaagent:${smartagent_home}/plugins/${javaagent文件夹名称}/lib/CAgent-1.0.0.jar=${smartagent_home}/plugins/${javaagent文件夹名称}/" fi
添加界面如下图所示:
配置完成后,重新启动Tomcat。
在Windows下配置Tomcat
在Tomcat的catalina.bat文件中搜索到“rem Execute Java”,该文件一般位于Tomcat安装目录的bin目录下。
然后将如下命令添加到该行的上方,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
if "%1"=="stop" goto end_javaagent set "JAVA_OPTS=%JAVA_OPTS% -Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\" :end_javaagent
添加界面如下图所示:
配置完成后,需要重新启动Tomcat。
手动配置JBoss
如果Java应用运行在Jboss容器中,需要在Jboss中配置JVM运行参数。
在Linux下配置JBoss
1、配置standalone.sh文件
在standalone.sh文件中搜索到“# Display our environment”,该文件一般位于Jboss安装目录的bin目录下。
然后将如下命令添加到该行的上方。请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
export JAVA_OPTS="$JAVA_OPTS -javaagent:${smartagent_home}/plugins/${javaagent文件夹名称}/lib/CAgent-1.0.0.jar=${smartagent_home}/plugins/${javaagent文件夹名称}/ -Djava.util.logging.manager=org.jboss.logmanager.LogManager" export JAVA_OPTS="$JAVA_OPTS -Xbootclasspath/p:$JBOSS_HOME/modules/org/apache/log4j/main/log4j-1.2.16.jar -Xbootclasspath/p:$JBOSS_HOME/modules/org/jboss/logmanager/log4j/main/jboss-logmanager-log4j-1.0.0.GA.jar -Xbootclasspath/p:$JBOSS_HOME/modules/org/jboss/logmanager/main/jboss-logmanager-1.2.2.GA.jar -Xbootclasspath/p:${smartagent_home}/plugins/${javaagent文件夹名称}/conf"
添加界面如下图所示:
2、配置standalone.conf文件
在standalone.conf文件内搜索“if [ "x$JBOSS_MODULES_SYSTEM_PKGS" = "x" ]; then”,该文件一般位于Jboss安装目录的bin目录下。
如果没有,添加如下命令至文件内。
if [ "x$JBOSS_MODULES_SYSTEM_PKGS" = "x" ]; then JBOSS_MODULES_SYSTEM_PKGS="org.jboss.byteman,com.cloudwise.agent.core.intercept,org.jboss.logmanager" fi
添加界面如下图所示:
如果有,只需将“com.cloudwise.agent.core.intercept”赋值给JBOSS_MODULES_SYSTEM_PKGS即可。
3、配置完成后,重新启动Jboss。
在Windows下配置JBoss
1、配置standalone.bat文件
在standalone.bat文件中搜索到“JBoss Bootstrap Environment”,该文件一般位于Jboss安装目录的bin目录下。
然后将如下命令添加到该内容的上方,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
set "JAVA_OPTS=%JAVA_OPTS% -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\ -Djava.util.logging.manager=org.jboss.logmanager.LogManager" set "JAVA_OPTS=%JAVA_OPTS% -Xbootclasspath/p:%JBOSS_HOME%\modules\org\apache\log4j\main\log4j-1.2.16.jar -Xbootclasspath/p:%JBOSS_HOME%\modules\org\jboss\logmanager\log4j\main\jboss-logmanager-log4j-1.0.0.GA.jar -Xbootclasspath/p:%JBOSS_HOME%\modules\org\jboss\logmanager\main\jboss-logmanager-1.2.2.GA.jar -Xbootclasspath/p: ${smartagent_home}\plugins\${javaagent文件夹名称}\conf"
添加界面如下图所示:
2、配置standalone.conf.bat文件
在standalone.conf.bat文件中搜索“-Djboss.modules.system.pkgs=”,该文件一般位于Jboss安装目录的bin目录下。
将 “com.cloudwise.agent.core.intercept”赋值给-Djboss.modules.system.pkgs即可。
添加界面如下图所示:
3、配置完成后,重新启动Jboss。
手动配置Weblogic
如果Java应用运行在Weblogic容器中,需要在Weblogic中配置JVM运行参数。
在Linux下配置Weblogic
1、配置weblogic.policy文件
在weblogic.policy文件中搜索到“Web App default permissions”,该文件在Weblogic安装目录的wlserver/server/lib目录下。
然后将如下命令添加至该行的上方,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
grant codeBase "file:/${smartagent_home}/plugins/${javaagent文件夹名称}/-" { permission java.security.AllPermission; };
添加界面如下图所示:
2、配置startWebLogic.sh文件
在startWebLogic.sh文件中搜索到“if [ "${WLS_REDIRECT_LOG}" = "" ] ; then”,该文件在Weblogic安装目录的user_projects/domains/{domain_name}/bin目录下。其中,{domain_name}代表某个域。
然后将如下命令添加至该行的上方,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
export JAVA_OPTIONS="$JAVA_OPTIONS -Xbootclasspath/p:${smartagent_home}/plugins/${javaagent文件夹名称}/conf -javaagent:${smartagent_home}/plugins/${javaagent文件夹名称}/lib/CAgent-1.0.0.jar=${smartagent_home}/plugins/${javaagent文件夹名称}/"
添加界面如下图所示:
3、配置完成后,重启weblogic。
在Windows下配置Weblogic
1、配置weblogic.policy文件
在weblogic.policy文件中搜索到“Web App default permissions”,该文件在Weblogic安装目录的wlserver/server/lib目录下。
然后将如下命令添加至该行的上方,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
grant codeBase "file:/${smartagent_home}/plugins/${javaagent文件夹名称}/-" { permission java.security.AllPermission; };
添加界面如下图所示:
2、配置startWebLogic.cmd文件
在startWebLogic. cmd文件中搜索到“if "%WLS_REDIRECT_LOG%"==""”,该文件在Weblogic安装目录的user_projects\domains\{domain_name}\bin目录下。其中,{domain_name}代表某个域。
然后将如下命令添加至该行的上方,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
set "JAVA_OPTIONS=%JAVA_OPTIONS% -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\ -Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf"
添加界面如下图所示:
3、配置完成后,重启weblogic。
手动配置Jetty
如果Java应用运行在Jetty容器中,需要在Jetty中配置JVM运行参数。
在Linux下配置Jetty
在jetty.sh文件中搜索到“Add jetty properties to Java VM options”,该文件一般位于Jetty安装目录的bin目录下。
然后将如下命令添加至该注释下方的JAVA_OPTIONS的下方,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
JAVA_OPTIONS="$JAVA_OPTIONS -Xbootclasspath/p:${smartagent_home}/plugins/${javaagent文件夹名称}/conf -javaagent:${smartagent_home}/plugins/${javaagent文件夹名称}/lib/CAgent-1.0.0.jar=${smartagent_home}/plugins/${javaagent文件夹名称}/"
不同Jetty版本的具体添加位置稍有不同:
配置完成后,重新启动Jetty。
在Windows下配置Jetty
在Windows下可以采用以下两种方式来配置Jetty:
通过新建脚本配置
在Jetty根目录下新建 jettyStart.bat脚本文件,如下图所示。
如果配置了JAVA_HOME环境变量,在脚本中添加如下命令,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
set JAVA=%JAVA_HOME%\bin\java set JAVA_OPTS=-Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称 }\ "%JAVA%" %JAVA_OPTS% -jar start.jar
如果没有配置JAVA_HOME环境变量,在脚本中添加如下命令,请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
set JAVA_HOME=D:\app\Java8_64\jdk1.8.0_60 set JAVA=%JAVA_HOME%\bin\java set JAVA_OPTS=-Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称 }\ "%JAVA%" %JAVA_OPTS% -jar start.jar
配置完成,使用 jettyStart.bat 脚本重新启动Jetty即可。
通过start.ini文件配置
如果Jetty的版本为Jetty7/8/9且作为Windows启动服务时,可配置start.ini文件,该文件一般位于Jetty的根目录下。
在start.ini文件中搜索到“-XX:CMSInitiatingOccupancyFraction=80”,然后将如下命令添加到该行下方。请将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
-Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\
添加界面如下图所示:
配置完成后,重新启动Jetty。
手动配置WebSphere
如果Java应用运行在WebSphere容器中,需要在WebSphere中配置JVM运行参数。
您可以在控制台中配置WebSphere,也可以通过修改配置文件server.xml来配置。
通过控制台配置WebSphere
启动服务后,以管理员身份登录到 WebSphere的控制台,在左侧导航栏中选择“服务器→服务器类型→WebSphere Application Server”,在右侧的应用程序服务器列表中选择待监控server,如下图所示。
在应用程序服务器的配置页面,选择“Java和进程管理→进程定义”,如下图所示。
在进程定义的配置页面,选择其他属性中的“Java虚拟机”,如下图所示。
在Java虚拟机的配置页面,找到“通用JVM参数”配置项,在对应的编辑框中输入以下命令(请根据操作系统选择),并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
Linux系统中输入以下命令:
-Xbootclasspath/p:${smartAgent_home}/plugins/${javaAgent文件夹名称}/conf/ -javaagent:${smartAgent_home}/plugins/${javaAgent文件夹名称}/lib/CAgent-1.0.0.jar=${smartAgent_home}/plugins/${javaAgent文件夹名称}/
Windows系统中输入以下命令:
-Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\
添加界面如下图所示:
配置完成后,需重新启动WebSphere。
通过配置文件配置WebSphere
在Linux下配置WebSphere
参考以下目录找到WebSphere待监控服务对应的server.xml配置文件,请将${WebSphere_home}替换为WebSphere的安装目录,将<*-name> 替换为相应的服务器、节点或服务名称:
${WebSphere_home}\profiles\<appsrv-name>\config\cells\<cell-name>\nodes\<node-name>\servers\<server-name>\server.xml
在server.xml文件中搜索到jvmentries配置项,在“genericJvmArguments“中添加以下命令,并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
-Xbootclasspath/p:${smartAgent_home}/plugins/${javaAgent文件夹名称}/conf/ -javaagent:${smartAgent_home}/plugins/${javaAgent文件夹名称}/lib/CAgent-1.0.0.jar=${smartAgent_home}/plugins/${javaAgent文件夹名称}/
添加界面如下图所示:
配置完成后,需重新启动WebSphere。
在Windows下配置WebSphere
参考以下目录找到WebSphere待监控服务对应的server.xml配置文件,请将${WebSphere_home}替换为WebSphere的安装目录,将<*-name> 替换为相应的服务器、节点或服务名称:
${WebSphere_home}\profiles\<appsrv-name>\config\cells\<cell-name>\nodes\<node-name>\servers\<server-name>\server.xml
在server.xml文件中搜索到jvmentries配置项,在“genericJvmArguments“中添加以下命令,并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
-Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\
添加界面如下图所示:
配置完成后,需重新启动WebSphere。
手动配置Resin
如果Java应用运行在Resin容器中,需要在Resin中配置JVM运行参数。
在Linux下配置Resin
您可以通过以下两种方式来配置Resin,不同版本的Resin配置方式也有所不同。
配置cluster-default.xml或resin.xml文件
Resin版本为4.x时,需修改cluster-default.xml 文件;Resin版本为3.x时,需修改resin.xml文件。文件一般位于Resin安装目录的conf目录下。
在文件中搜索到“<server-default>”配置项,在该配置项的开头添加以下命令,并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
<jvm-arg>-Xbootclasspath/p:${smartagent_home}/plugins/${javaagent文件夹名称}/conf</jvm-arg> <jvm-arg>-javaagent:${smartagent_home}/plugins/${javaagent文件夹名称}/lib/CAgent-1.0.0.jar=${smartagent_home}/plugins/${javaagent文件夹名称}/</jvm-arg>
添加界面如下图所示:
配置完成后,需重新启动Resin。
修改resin.properties文件
Resin版本为4.x时,还可以修改resin.properties文件,该文件一般位于Resin安装目录的conf目录下。
在文件中搜索到“jvm_args”,如果该行已被注释掉,请首先删除该行前面的注释符。然后,在该行的最后添加空格及以下命令,并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
-Xbootclasspath/p:${smartagent_home}/plugins/${javaagent文件夹名称}/conf -javaagent:${smartagent_home}/plugins/${javaagent文件夹名称}/lib/CAgent-1.0.0.jar=${smartagent_home}/plugins/${javaagent文件夹名称}/
添加界面如下图所示:
配置完成后,需重新启动Resin。
在Windows下配置Resin
您可以通过以下两种方式来配置Resin,不同版本的Resin配置方式也有所不同。
修改cluster-default.xml或resin.xml文件
Resin版本为4.x时,需修改cluster-default.xml 文件;Resin版本为3.x时,需修改resin.xml文件。文件一般位于Resin安装目录的conf目录下。
在文件中搜索到“<server-default>”,在该配置项的开头添加以下命令,并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
<jvm-arg>-Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf</jvm-arg> <jvm-arg>-javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\</jvm-arg>
添加界面如下图所示:
配置完成后,需重新启动Resin。
修改resin.properties文件
Resin版本为4.x时,还可以修改resin.properties文件,该文件一般位于Resin安装目录的conf目录下。
在文件中搜索到“jvm_args”,如果该行已被注释掉,请首先删除该行前面的注释符。然后,在该行的最后添加空格及以下命令,并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
-Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf -javaagent:${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\
添加界面如下图所示:
配置完成后,需重新启动Resin。
手动配置Karaf
如果Java应用运行在Karaf容器中,需要在Karaf中配置JVM运行参数。
在Linux下配置Karaf
配置JVM运行参数前,还需要进行安全配置。
1、安全配置
在config.properties文件中搜索找到“org.osgi.framework.bootdelegation”,该文件一般位于Karaf安装目录的etc目录下。
在该配置项最后添加“,com.cloudwise.*”,或者添加”,\“后换行后再输入“com.cloudwise.*”,如:
org.osgi.framework.bootdelegation=org.apache.karaf.jaas.boot,sun.*,com.sun.*,javax.transaction,javax.transaction.*,javax.xml.crypto,javax.xml.crypto.*,org.apache.xerces.jaxp.datatype,org.apache.xerces.stax,org.apache.xerces.parsers,org.apache.xerces.jaxp,org.apache.xerces.jaxp.validation,org.apache.xerces.dom, com.cloudwise.*
添加界面如下图所示:
2、启动配置
在karaf文件中搜索到cd "$KARAF_BASE",该文件一般位于Karaf安装目录的bin目录下。
在该行下方,最终执行 JAVA 命令之前的位置添加如下命令,并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
JAVA_OPTS="$JAVA_OPTS -Xbootclasspath/p:${smartAgent_home}/plugins/${javaAgent文件夹名称}/conf/ -javaagent:${smartAgent_home}/plugins/${javaAgent 文件夹名称}/lib/CAgent-1.0.0.jar=${smartAgent_home}/plugins/${javaAgent文件夹名称}/"
添加界面如下图所示:
3、重启Karaf
配置完成后,需重新启动Karaf。
在Windows下配置Karaf
配置JVM运行参数前,还需要进行安全配置。
1、安全配置
在config.properties文件中搜索到“org.osgi.framework.bootdelegation”,该文件一般位于Karaf安装目录的etc目录下。
在该配置项最后添加“,com.cloudwise.*”,或者添加”,\“后换行后再输入“com.cloudwise.*”,如:
org.osgi.framework.bootdelegation=org.apache.karaf.jaas.boot,sun.*,com.sun.*,javax.transaction,javax.transaction.*,javax.xml.crypto,javax.xml.crypto.*,org.apache.xerces.jaxp.datatype,org.apache.xerces.stax,org.apache.xerces.parsers,org.apache.xerces.jaxp,org.apache.xerces.jaxp.validation,org.apache.xerces.dom, \ com.cloudwise.*
添加界面如下图所示:
2、启动配置
在karaf.bat文件中搜索到cd "%KARAF_BASE%",该文件一般位于Karaf安装目录的bin目录下。
在该行上方,最终执行 JAVA 命令之前添加如下命令,并将命令中的${smartagent_home}替换为Smart Agent的安装目录;将${javaagent文件夹名称}替换为JavaAgent的文件夹名称。
set "JAVA_OPTS=%JAVA_OPTS% -Xbootclasspath/p:${smartagent_home}\plugins\${javaagent文件夹名称}\conf -javaagent: ${smartagent_home}\plugins\${javaagent文件夹名称}\lib\CAgent-1.0.0.jar=${smartagent_home}\plugins\${javaagent文件夹名称}\"
添加界面如下图所示:
3、重启Karaf
配置完成后,需重新启动Karaf。
手动配置WildFly
如果Java应用运行在WildFly容器中,需要在WildFly中配置JVM运行参数。
在Linux下配置WildFly
下面以standalone启动方式,wildfly-8.2.1.Final/bin/standalone.conf为例进行说明。
1、配置日志相关jar
在wildfly-8.2.1.Final/bin/standalone.conf中配置以下信息:
-Xbootclasspath/p:/root/wxytest/wildfly-8.2.1.Final/modules/system/layers/base/org/jboss/logging/jul-to-slf4j-stub/main/jul-to-slf4j-stub-1.0.1.Final.jar -Xbootclasspath/p:/root/wxytest/wildfly-8.2.1.Final/modules/system/layers/base/org/jboss/logging/main/jboss-logging-3.1.4.GA.jar -Xbootclasspath/p:/root/wxytest/wildfly-8.2.1.Final/modules/system/layers/base/org/jboss/log4j/logmanager/main/log4j-jboss-logmanager-1.1.0.Final.jar -Xbootclasspath/p:/root/wxytest/wildfly-8.2.1.Final/modules/system/layers/base/org/jboss/logmanager/main/jboss-logmanager-1.5.2.Final.jar
注意:不同版本的wildfly需要配置的jar版本可能不同。
2、配置JAVA_OPTS支持参数
-Djboss.modules.system.pkgs=org.jboss.byteman,org.jboss.logmanager,com.cloudwise.agent
3、配置日志管理器
-Djava.util.logging.manager=org.jboss.logmanager.LogManager
4、配置Java插件
-Xbootclasspath/p:/smart_agent/plugins/Java_appname/conf/ -javaagent:/smart_agent/plugins/Java_appname/lib/CAgent-1.0.0.jar=/smart_agent/plugins/Java_appname/
在Windows下配置WildFly
下面以standalone启动方式,wildfly-8.2.1.Final/bin/standalone.conf.bat为例进行说明。
1、配置日志相关jar
在wildfly-8.2.1.Final/bin/standalone.conf.bat中配置以下信息:
-Xbootclasspath/p:D:\wildfly-8.2.1.Final\modules\system\layers\base\org\jboss\logging\jul-to-slf4j-stub\main\jul-to-slf4j-stub-1.0.1.Final.jar -Xbootclasspath/p:D:\wildfly-8.2.1.Final\modules\system\layers\base\org\jboss\logging\main\jboss-logging-3.1.4.GA.jar -Xbootclasspath/p:D:\wildfly-8.2.1.Final\modules\system\layers\base\org\jboss\log4j\logmanager\main\log4j-jboss-logmanager-1.1.0.Final.jar -Xbootclasspath/p:D:\wildfly-8.2.1.Final\modules\system\layers\base\org\jboss\logmanager\main\jboss-logmanager-1.5.2.Final.jar
注意:不同版本的wildfly需要配置的jar版本可能不同。
2、配置JAVA_OPTS支持参数
-Djboss.modules.system.pkgs=org.jboss.byteman,org.jboss.logmanager,com.cloudwise.agent
3、配置日志管理器
-Djava.util.logging.manager=org.jboss.logmanager.LogManager
4、配置Java插件
-Xbootclasspath/p:D:\smart_agent\plugins\JavaAgent_1450404273X1002x0\conf -javaagent:D:\smart_agent\plugins\JavaAgent_1450404273X1002x0\lib\CAgent-1.0.0.jar=D:\smart_agent\plugins\JavaAgent_1450404273X1002x0\