- 浏览: 241863 次
- 性别:
- 来自: Shanghai
文章分类
最新评论
-
a790851624:
本人刚到公司,接到一个任务:在java代码中集成kettle的 ...
java应用程序中集成Kettle -
obnijeh:
谢谢共享,正需要。
Kettle 简介及Kettle用户操作手册 -
zhaokui:
很好,很好
Java中SimpleDateFormat用法详解——获得常用时间表示法(二) -
zhaokui:
,不错,不错
Java中SimpleDateFormat用法详解(一) -
babaoqi:
学习下,O(∩_∩)O谢谢了
Kettle 简介及Kettle用户操作手册
Figure 15: List of All Logger Names.
Logging MBean也支持三种操作:
-
getParentLoggerName
. 返回指定logger的父logger -
getLoggerLevel
. 返回指定logger的日志等级 -
setLoggerLevel
.设置指定logger到一个新的等级
所有三个操作都把日志名称作为第一个参数。
Figure 16: Setting Log Level.
获取操作系统资源信息-Sun平台下的扩展
JDK5.0扩展了操作系统的MBean,以此可以获取一下系统资源的信息,如:
- 处理的CPU
- 总共的和空闲的物理内存
- 可获得的虚拟内存。(即保证可以分配给运行的进程的虚拟内存)
- 总共的和空闲的交换区
- 打开的文件总数(只能在Unix下使用)
当打开MBeans标签下的Operating System MBean,你可以看到平台可以执行的所有属性和操作。你可以监控任何一个属性随时间的变化——如,CPU时间-双击属性的值域部分。
Figure 17: MBeans Tab OS.
除此之外,VM标签和Summary标签提供了操作系统资源的一些信息
管理应用的MBean
被监控的SampleTest应用有它自己的Hello MBean:
com.sun.example:type=Hello如果CacheSize 属性发生改变,Hello MBean将会发送一个通知。你可以和管理平台的MBeans一样使用MBeans标签页来管理你的应用的MBean。例如,当CacheSize 属性变化的时候你想监控。你首先可以在Notification标签页中订阅。如果你改变CacheSize,你可以看到一个通知被发送。
Figure 18: Notifications.
配置tomcat使用jconsole
修改catalina脚本
Windows平台:修改catalina.bat,在dorun和dostart段开头增加一行(注意是一行):
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port="9004"
-Dcom.sun.management.jmxremote.authenticate="false" -Dcom.sun.management.jmxremote.ssl="false"
Unix/Linux平台:修改catalina.sh,在dorun和dostart段开头增加一行(注意是一行):
JAVA_OPTS="$JAVA_OPTS "-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port="9004"
-Dcom.sun.management.jmxremote.authenticate="false" -Dcom.sun.management.jmxremote.ssl="false"
启动jconsole
启动tomcat之后,根据上文中的jconsole简介中的命令启动jconsole,如果是在服务器本地运行jconsole,会出现如下界面:
直接进行连接即可。
如果是远程监控,需要点击远程选项卡并输入相关信息,示例如下:
“主机名或ip”处填写需要监视的主机ip,端口为服务器上上文中添加的-Dcom.sun.management.jmxremote.port="portNumber"设定的端口,本文以9004为例。在设定为:-Dcom.sun.management.jmxremote.authenticate="false" 的情况下,用户名和口令留空即可。
进阶安全设定
在上文中的配置适用于在测试环境中监视tomcat,如果是在生产环境中监视tomcat则需要在安全性上有进一步要求。
配置jmx访问密码
1. 修改上文中的catalina脚本中的JAVA_OPT参数,将
-Dcom.sun.management.jmxremote.authenticate="false" 修改为:
-Dcom.sun.management.jmxremote.authenticate="true"
2. 将$JRE/lib/management/jmxremote.password.template文件在同目录下复制一份,重命名为$JRE/lib/management/jmxremote.password,编辑jmxremote.password,添加允许访问的用户名及密码,比如添加用户zxwh,密码为zxme,则在文件尾添加一行:
zxwh zxme
注意用户密码不能包含空格,tab等字符
3. 编辑$JRE_HOME/lib/management/jmxremote.access文件,对刚才添加的用户赋予一定的权限:
zxwh readonly (或者readwrite)
4. 确认jmxremote.password和jmxremote.access两个文件中的用户是相同的。注意如果jmxremote.access中没有对应用户的话,配置是无效的。
注:以上配置文件的位置都是可以更改的,具体配置方法在此不再赘述。
5. 由于jmxremote.password中的密码都是明文保存的,所以jmxremote.password、jmxremote.access文件的权限要注意,应该设置为只有owner才可读,当然这个用户也必须是启动tomcat的用户。
6. 启动jconsole进行连接,在用户名和口令处输入设定的用户和密码。
7. 使用密码认证方式进行连接,不但可以提高安全性,而且可以对用户的权限进行设置。如果不使用密码认证的方式,则无法对用户的权限进行限制。
配置使用ssl进行加密连接
1. 在服务器上使用keytool创建密钥对
keytool是java平台自带的一个密钥和证书管理工具,使用keytool创建密钥对:
keytool -genkey -alias tomcat -keystore /somepath/tomcatKeyStore
按照提示输入相关信息(包括设定密码、姓、组织名等),这些信息是可以随便输入的,但从产品角度讲应该统一设定。输入的密码在今后操作中均需要使用。
2. 导出公钥
keytool -export -alias tomcat -keystore /somepath/tomcatKeyStore -file /somepath/jconsole.cert
3. 将公钥导入至需要运行jconsole的机器。
keytool –import –alias jconsole –keystore /somepath/jconsoleKeyStore -file /somepath/jconsole.cert
4. 修改tomcat的catalina脚本
将-Dcom.sun.management.jmxremote.ssl="false"修改为:
-Dcom.sun.management.jmxremote.ssl="true",并在 JAVA_OPTS变量行添加:
-Djavax.net.ssl.keyStore=/somepath/jconsoleKeyStore
-Djavax.net.ssl.keyStorePassword=设定的密码
5. 使用如下参数启动jconsole :
jconsole -J-Djavax.net.ssl.trustStore=/somepath/jconsoleKeyStore
6. 填入主机名、用户、口令连接服务器。
其他问题
1. 在执行shutdown.sh或者shutdown.bat脚本关闭tomcat时出现如下错误,tomcat无法关闭:
错误: 代理抛出异常: java.rmi.server.ExportException: Port already in use: 9004;
nested exception is:java.net.BindException: Address already in use: JVM_Bind
出错原因:JAVA_OPT变量设置的参数未放置于本文档中指定位置。
发表评论
-
Java虚拟机工作原理详解
2014-05-19 17:11 613一、类加载器 首先来看一下java程序的执行过程。 ... -
xml特殊字符转义技术
2013-12-05 15:14 1009在项目测试阶段,测试人员会输入一些特殊字符,比如:< ... -
junit4注解
2013-10-25 16:10 7351 @BeforeClass @AfterC ... -
java内部类的作用分析
2012-12-14 16:33 765提起Java内部类(Inner Class)可能很多人不 ... -
Weblogic远程调试
2012-10-15 15:04 683配置weblogic远程调试之前,需要做这几个工作: 1 ... -
log4j.properties配置详解
2012-06-08 11:18 726Log4J的配置文件(Configuration Fil ... -
Tomcat部署Web应用方法总结
2012-05-23 11:20 1218Tomcat部署Web应用方法 ... -
tomcat 的一些基本配置
2011-11-01 14:51 496管理员配置:打开tomcat安装目录里面的conf/tomca ... -
Ubuntu通过apt-get命令安装java jdk6
2011-09-01 08:15 1671其实Ubu ... -
Maven,ant 工具
2011-08-24 17:31 1255一:Maven,ant 工具比较 Apache ... -
java将多个文件一起打成zip包后下载实例
2011-08-24 17:23 3500//文件打包下载 pu ... -
jsp动态上传多个文件---实用的例子
2011-08-17 17:26 1185现在还有一个错误就是文件名是中文的话,就乱码。还在改进. u ... -
利用JAVA API发送E-mail
2011-08-03 16:57 822JAVA API 文档见附件 / ... -
JavaMail 发送邮件例子(包括附件,及信息,及html内容的图片处理)
2011-07-07 18:36 1365public void SendMessage(Str ... -
JavaMail API 核心解说
2011-07-07 18:30 1134(javaMail APL 例子资源见 ... -
Java api 全集
2011-06-02 18:14 775J2SE DK & API下载 ... -
Web Service优缺点
2011-03-25 11:27 4250一优点(版本一) 1、可操作的的分布式应用程序可以实现 ... -
java.util.Date与java.sql.Date相互转换
2011-03-24 10:22 1019在ResultSet中我们经常使用的setDate或getDa ... -
java DOM解析器 解析xml文件方法步骤,实例解析
2011-03-21 17:44 2391import java.io.*; import javax ... -
JAVA的XML编程实例解析
2011-03-20 15:19 641XML作为全球通用的结构化语言,越来越受人们青睐,各种开发平 ...
相关推荐
JConsole是一个基于JMX的GUI工具,用于连接正在运行的JVM,不过此JVM需要使用可管理的模式启动。如果要把一个应用以可管理的形式启动,可以在启动是设置com.sun.management.jmxremote。JConsole能够提供被监控虚拟机...
jconsole+tomcat配置说明 附加Tomcat内存说明(基于jdk5.0).docx ),希望对大家有帮助
Java内存泄露_JVM监控工具介绍jstack_jconsole_jinfo_jmap_jdb_jstat
性能监控JConsole远程监控Tomcat服务
jdk.jconsole Defines the JMX graphical tool, jconsole, for monitoring and managing a running application. jdk.jdeps Defines tools for analysing dependencies in Java libraries and programs, including...
配置tomcat使用jconsole 修改catalina脚本 Windows平台:修改catalina.bat,在dorun和dostart段开头增加一行(注意是一行): set JAVA_OPTS=%JAVA_OPTS% -Djava.rmi.server.hostname=192.168.1.101 -Dcom.sun....
JDK1.5提供JMX remote的管理工具Jconsole,可以监控Java运行程序的内存使用情况、活动线程数量、类装载的数量、MBeans的状态、虚拟机的各种信息等,还可以执行MBean公开的方法或强制进行垃圾回收。只要应用服务器...
Jconsole是Sun jdk 1.5以上版本自带的监控工具,可以对JVM进行全面的监控
jconsole.1.8.0jar 这个包也经常maven导入报错 也是本人亲测有效
NULL 博文链接:https://kennylee26.iteye.com/blog/1402260
java开发常用组件,jconsole-1.8.0.jar jconsole-1.8.0.jar
分享 JConsole 源代码,MyEclipse工程
NULL 博文链接:https://myhearsnow.iteye.com/blog/1851119
NULL 博文链接:https://xiaotao-2010.iteye.com/blog/1460209
使用jconsole远程监控tomcat jmx 实验操作详细信息,本人实验实操
jdk1.6安装教程及环境变量配置: 双击运行"jdk-6u45-windows-x64.exe"程序,依提示进行安装即可。 包含组件 javac – 编译器,将源程序转成字节码 jar – 打包工具,将相关的类文件打包成一个文件 javadoc – 文档...
maven 项目缺少或报相关jdk- jconsole相关的错,这个jar包使用后就没问题了
jconsole工具,内置在jdk8中,主要监控 JVM 的概览、内存、线程、类、vm概要、MBean等内容。内含jconsole的连接使用说明
JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具:jconsole,jvisualvm等工具软件,还包含了java程序编写所需的文档和demo例子程序。 如果你需要运行java程序,只需...