jstatd [ 选项 ]
选项
jstatd工具是一个RMI服务器应用程序,监视仪器HotSpot的Java虚拟机(JVM)的创建和终止,并提供一个界面,允许附加到JVM上运行在本地主机上的远程监控工具。
jstatd服务器需要在本地主机上的RMI注册表的存在。jstatd服务器将尝试连接到RMI注册表中的默认端口或端口上的 -p端口选项。RMI注册表没有找到,将内创建jstatd应用程序绑定到端口-p端口选项或默认的RMI注册表的端口,如果省略-P端口。创建一个内部的RMI注册表,可以禁止指定-NR选项。
注意:此实用程序是不支持的,可能会或可能不会在未来版本的JDK。目前还没有在Windows 98和Windows ME平台。
jstatd命令支持以下选项:
jstatd服务器只能监控的JVM,它有适当的本机访问权限。为此jstatd进程必须使用相同的用户凭据为目标的JVM。一些用户凭据,如在UNIX(TM)为基础的系统根用户的权限访问系统上的任何JVM出口仪器仪表。一个jstatd运行的进程这样的凭证,可以监视任何JVM上的系统,但引入了额外的安全问题。
jstatd服务器不提供任何身份验证的远程客户端。因此,jstatd服务器运行过程中暴露出的仪器仪表出口的所有JVM jstatd过程具有访问权限的任何用户在网络上。这暴露可能是不希望的,在您的环境和本地安全策略前,应考虑启动jstatd的过程中,特别是在生产环境中,或在不安全的网络。
jstatd服务器安装实例RMISecurityPolicy如果没有其他安全管理器已被安装,因此需要一个安全策略文件中指定。策略文件必须符合的默认策略实施的 政策文件语法。
下面的政策文件将允许jstatd服务器上运行没有任何安全性异常。这个政策是宽松的授予所有权限的所有代码库,但比政策,授予最小权限运行jstatd服务器更自由。
授予代码库“文件:$ {的java.home} /。。/ lib / tools.jar中中”{ 许可java.security.AllPermission; };
要使用此策略,将文本复制到 运行一个文件名 为jstatd.all.policy,jstatd服务器如下:
jstatd-J-Djava.security.policy = jstatd.all.policy
更严格的安全做法的网站,它可以使用一个自定义策略文件限制到特定的受信任的主机或网络的访问,虽然这种技术是受的IP addreess欺骗攻击。自定义策略文件,如果您的安全问题不能得到解决,那么最安全的操作是不运行jstatd 服务器,并使用本地jstat和JPS工具。
jstatd过程 所导出的接口是私有的,并保证改变。用户和开发人员都不愿意写这个接口。
下面是一些例子的起始jstatd。请注意, jstatd脚本自动在后台启动服务器。
这个例子演示了启动jstatd 内部的RMI注册表。此示例假定没有其他的服务器绑定到RMI注册表的默认端口(端口1099)。
jstatd-J-Djava.security.policy = all.policy
这个例子演示了启动jstatd与外部RMI注册表。
rmiregistry中和 jstatd-J-Djava.security.policy = all.policy
这个例子演示了启动jstatd 与外部RMI注册表,服务器上的端口2020。
rmiregistry的2020 - jstatd-J-Djava.security.policy = all.policy-P 2020
这个例子演示了,开始jstatd 与外部RMI注册表的端口2020上,绑定到name AlternateJstatdServerName。
rmiregistry的2020 - jstatd-J-Djava.security.policy = all.policy-P 2020-N AlternateJstatdServerName
这个例子演示了启动jstatd 例如,如果未找到,它不会创建一个RMI注册表。此示例假定已经运行的RMI注册表。如果它不是,则发出一个适当的错误消息。
jstatd-J-Djava.security.policy = all.policy-NR
这个例子表明启动jstatd RMI启用日志记录功能。这种技术是非常有用的故障排除援助或监视服务器活动。
jstatd-J-Djava.security.policy = all.policy-J-Djava.rmi.server.logCalls = TRUE