JConsole JDK1.6 使用手册
JConsole JDK1.6 使用手册
JConsole的图形用户界面是一个符合Java管理扩展(JMX)规范的监测工具。 JConsole使用Java虚拟机(Java VM),提供在Java平台上运行的应用程序的性能和资源消耗的信息。
在Java平台,标准版(Java SE平台)6,JConsole的已经更新到目前的外观和感觉的Windows和GNOME桌面(其他平台,将目前标准的Java图形的外观和感觉)。 在这个文件中提出的屏幕截图是从Windows XP上运行的接口的一个实例。
启动JConsole
JConsole是可执行文件,在JDK_HOME / bin目录中,其中JDK_HOME是在Java开发工具包(JDK)的安装目录。 如果此目录是在您的系统路径,你可以开始只需键入命令jconsole。 否则,您必须键入可执行文件的完整路径。
命令语法
您可以使用JConsole来监视本地应用程序以及远程应用程序。
注-使用JConsole监视本地应用程序在开发和创建原型是非常有用的,但不推荐用于生产环境,因为jconsole本身也消耗大量的系统资源。 远程监控建议隔离被监视机器。
jconsole命令的语法完整的参考,请参阅 JConsole的命令手册页:Java监视和管理控制台。
设置本地监控
在命令行中键入以下命令启动JConsole的。
JConsole
当JConsole的启动时,您将获得一个本地运行JConsole的可以连接到的所有的Java应用程序的选择。
如果您要监控的特定应用程序,你知道该应用程序的进程ID,那么你也可以启动JConsole连接到该应用程序。 此应用程序必须和JConsole运行在相同的用户ID下。 该命令的语法以下。
%JConsole中 processID
以上的processID是应用程序的进程ID(PID)。 您可以用以下方式确定一个应用程序的PID:
- 在UNIX或Linux系统,可以使用 ps命令找到正在运行的Java实例的PID 。
- 在Windows系统上,您可以使用任务管理器, 找到 java 或者 javaw进程的PID。
- 您还可以使用jps命令行实用程序来确定的PID。 见的手册页的Java虚拟机进程状态工具 。
例如,如果你确定, 记事本应用程序的进程ID是2956,那么你可以用下面的命令启动JConsole。
JConsole 2956
jconsole和被监视的应用程序必须运行在相同的用户下, 拥有管理和监控系统使用的操作系统的文件权限。 如果你不指定一个进程ID,jconsole会自动检测所有本地Java应用程序,并显示一个对话框,让你选择一个(参阅连接到 JMX代理)。
欲了解更多信息,请参阅本地监控和管理 。
设置远程监控
要启动远程监控JConsole的,您可以使用下面的命令语法。
JConsole 主机名: portNum
主机名是需要监听的主机,portNum是你启动Java虚拟机时指定的JMX代理的端口号。 欲了解更多信息,请参阅远程监控和管理 。
如果你不指定一个主机名/端口号的组合,那么jconsole会显示一个连接对话框( 连接到JMX代理 ),让你输入一个主机名和端口号。
建立安全的远程监控
您也可以使用安全套接字层(SSL)进行安全的连接。 命令启动JConsole的安全连接是在第2章,监控和管理使用JMX技术 启用SSL JConsole的远程监控 。
连接到一个JMX代理
如果您启动jconsole的时候指定的JMX代理连接到的参数,它会自动开始监视指定的Java VM。 您可以连接到不同的主机在任何时候通过选择连接|新连接,并输入必要的信息。
否则,如果你不提供任何参数,当您启动JConsole的,第一眼看到的是连接对话框。 此对话框有两个选项,允许连接到本地或远程进程。
动态连接
在以前的版本的Java SE平台,应用程序,你想监测与JConsole的需要与下面的选项开始。
%,Dcom.sun.management.jmxremote
然而,与Java SE 6平台提供的JConsole的版本,可以连接到任何应用程序,支持附加的API。 换句话说,任何在Java SE 6 HotSpot虚拟机启动的应用程序由JConsole自动检测,并不需要使用上述的命令行选项开始。
JConsole的连接到一个本地进程
如果你不提供连接到一个特定的JMX代理启动JConsole的,你会看到下面的对话框窗口。
图3-1创建一个连接到一个本地进程
本地进程选项列出所有运行在本地系统上且和JConsole程序相同的用户ID的Java SE6 应用,包括进程ID和他们的类或参数信息。选择您要监视的应用程序,然后单击“连接”按钮。 本地进程的名单中包括以下类型的Java虚拟机的运行的应用程序。
- 启用管理代理的应用,包括Java SE 6平台或指定 Dcom.sun.management.jmxremote选项或 Dcom.sun.management.jmxremote.port选项开始的J2SE 5.0平台上的应用。 此外,名单中还包括任何应用程序,Java SE 6平台上开始没有任何管理属性,但以后JConsole的重视,这使得在运行时管理代理。
- 禁用管理代理,可连接的应用,应用程序在运行时禁用加载管理代。Java SE 6平台上开始支持附加的API的应用程序, 支持动态的应用程序连接,启动管理代理可以不通过在命令行中指定的 com.sun.management.jmxremote或com.sun.management.jmxremote.port选项。 如果选择此类应用程序连,将启用该应用的管理代理。 在连接的例子所示的对话框图 3-1中,NetBeans IDE和jconsole本身也均开始在Java SE 6平台的虚拟机。 同时出现在正常的文本,这意味着,JConsole的可以连接到它们。 在图3-1中,JConsole是选定的,值得注意的是可见的。
- 禁用应用程序,不扣押,管理代理。这些措施包括开始的J2SE 1.4.2平台上的应用,或J2SE 5.0平台上开始没有 Dcom.sun.management.jmxremote 或 com.sun.management.jmxremote.port选项。 这些应用程序的显示表中显示为灰色和JConsole中无法连接到他们。 字谜应用程序在连接的例子所示的对话框图 3-1,没有任何的管理属性与J2SE 5.0平台的虚拟机开始启用JMX代理,并因此显示为灰色,无法选择。
图3-2没有管理代理尝试连接到应用程序启用
JConsole的连接到远程进程
当打开连接对话框,你也可以连接到远程进程。
图3-3创建一个连接到远程进程
要监控远程Java虚拟机上运行的过程中,你必须提供下列资料。
- 主机名:Java虚拟机正在运行的机器上的名称。
- 端口号:当你启动Java虚拟机指定JMX代理端口号码。
- 用户名和密码:用户名和密码才能使用(需要监测只有通过JMX代理,需要密码验证的Java虚拟机)。
有关设置JMX代理的端口号的信息 ,请参阅启用远程管理。 有关用户名和密码的信息,请参阅使用密码和访问文件。
使用JMX服务URL连接
您还可以使用远程进程选项指定他们的JMX服务URL连接其他JMX代理,用户名和密码。 一个JMX服务URL的语法要求您提供用于进行连接的传输协议,以及服务接入点。
图3-4连接到一个JMX代理使用的JMX服务URL
如果JMX代理使用一个不包含在Java平台上的连接器,你需要添加连接器类到类路径中,如下所示。
%JConsole- J - Djava.class.path = JAVA_HOME / lib中/ jconsole.jar:JAVA_HOME /
更多详情见请继续阅读下一页的精彩内容:
|
评论暂时关闭