`
laziobird
  • 浏览: 23874 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

如何监控java进程

阅读更多
  • ps -aux | grep java 查看所有java进程,加粗地方找到对应jvm位置

[chongguo.jzw@v037176.sqa.cm4 ~]$ ps -aux | grep java
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
admin     8492  0.0 30.0 1203804 551208 ?      Sl   Mar10   4:05 [b]/opt/taobao/java1/bin/java[/b] -Dprogram.name=run.sh -server -Xms768m -Xmx768m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=96m -XX:MaxPermSize=96m -Djava.awt.headless=true -Dsun.net.client.defaultConnectTimeout=5000 -Dsun.net.client.defaultReadTimeout=5000 -XX:ErrorFile=/home/admin/et/logs/java_error_%p.log -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n -Djava.net.preferIPv4Stack=true -Djava.endorsed.dirs=/opt/taobao/jboss1/lib/endorsed -classpath /opt/taobao/jboss1/bin/run.jar:/opt/taobao/java1/lib/tools.jar org.jboss.Main -b 0.0.0.0 -Djboss.server.home.dir=/home/admin/ie/.default -Djboss.server.home.url=file:/home/admin/ie/.default

  • sudo -u admin -H /opt/taobao/java1/bin/jps -lv
  • jps查找到对应的jvm进程号。jps 它的作用是显示当前系统的java进程情况,及其id号
  • jstack 得到该进程对应的堆栈信息
  • sudo -u admin -H /opt/taobao/java1/bin/jstack 8492
  • top 然后Shift+h,切到以线程方式显示top,找到最上面的线程id号
  • 将线程id号转成十六进制:echo 'obase=16;要转换的十进制数' | bc 
  • sudo -u admin -H /opt/taobao/java1/bin/jstack 8492 | sudo -u admin -H grep -A 20 -B 10 "十六进制数",查看堆栈即可看到当前正在执行的方法栈

[chongguo.jzw@v037176.sqa.cm4 ~]$ sudo -u admin -H /opt/taobao/java1/bin/jstack 8492 | grep -A 20 -B 10 "2320"
"AcceptorThread#0:3873" prio=10 tid=0xbd63dc00 nid=0x214f runnable [0xbd1e1000..0xbd1e20b0]
   java.lang.Thread.State: RUNNABLE
        at java.net.PlainSocketImpl.socketAccept(Native Method)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
        - locked <0xc4d69700> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:453)
        at java.net.ServerSocket.accept(ServerSocket.java:421)
        at org.jboss.remoting.transport.socket.SocketServerInvoker.run(SocketServerInvoker.java:520)
        at java.lang.Thread.run(Thread.java:619)

"ServerSocketRefresh" daemon prio=10 tid=0x08e5cc00 nid=0x214e in Object.wait() [0xbd232000..0xbd233130]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0xc4ae0dc0> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:485)
        at org.jboss.remoting.transport.socket.SocketServerInvoker$ServerSocketRefresh.run(SocketServerInvoker.java:704)
        - locked <0xc4ae0dc0> (a java.lang.Object)

"AcceptorThread#0:4446" prio=10 tid=0xbd638800 nid=0x214d runnable [0xbd283000..0xbd283db0]
   java.lang.Thread.State: RUNNABLE
        at java.net.PlainSocketImpl.socketAccept(Native Method)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
        - locked <0xc51ad370> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:453)
        at java.net.ServerSocket.accept(ServerSocket.java:421)
        at org.jboss.remoting.transport.socket.SocketServerInvoker.run(SocketServerInvoker.java:520)
        at java.lang.Thread.run(Thread.java:619)

"PooledInvokerAcceptor#0-4445" prio=10 tid=0xbd637c00 nid=0x214c runnable [0xbd2d4000..0xbd2d4e30]
   java.lang.Thread.State: RUNNABLE
        at java.net.PlainSocketImpl.socketAccept(Native Method)
分享到:
评论

相关推荐

    zabbix监控JAVA 进程 JVM数据统计分析告警监控

    zabbix自动发现JAVA进程,并进行自动添加监控JAVA 进程的JVM数据,统计分析告警监控。 支持多种中间件,tomcat、weblogic、微服务方式部署JAVA应用监控。 自带发现脚本和监控脚本,以及zabbix导入模板。

    SHELL脚本监控JAVA进程的代码

    本文将详细解析如何使用SHELL脚本来监控JAVA进程,并提供相关示例代码。 首先,我们来看一个简单的SHELL脚本示例,名为`java_check.sh`,它的主要功能是检查JAVA进程是否在运行。如果JAVA进程不存在,它会启动JAVA...

    在线管理监控及诊断本地和远程的Java进程源代码.zip

    在IT行业中,管理和监控Java进程是一项至关重要的任务,特别是在大型分布式系统中,实时了解应用程序的运行状态、性能指标以及可能出现的问题对于系统维护和优化至关重要。本资源提供的"在线管理监控及诊断本地和...

    JAVA进程占用高内存缘由分析与优化方法_.docx

    JAVA进程占用高内存缘由分析与优化方法 在 Java 进程中,高内存占用是一个常见的问题,本文将通过 jmap 和 ps 命令来分析 Java 进程的内存占用情况,并讨论可能的优化方法。 1. Java 进程的内存占用分析 使用 ...

    linux下查看java进程下线程占用cpu情况

    在Linux系统中,监控Java进程及其线程的CPU使用情况是进行性能调优的重要环节。以下是一些关于如何实现这一目标的关键知识点。 1. **`ps` 命令**: - `ps` 是一个用于报告当前系统中进程状态的命令。基本用法如 `...

    Java加载dll,导致Java进程内存泄露

    在Java编程环境中,调用外部动态链接库(DLL)是一个常见的需求,特别是在需要与...在实际项目中,对本地代码进行充分的测试和调试,以及使用内存分析工具监控Java进程的内存使用情况,都是确保代码健壮性的重要环节。

    java进程占用CPU和内存太高问题排查相关测试文件.zip

    日常运维中,可以借助JMX(Java Management Extensions)或监控工具(如JProfiler, YourKit)实时监控Java进程的CPU和内存使用情况,提前预警并定位问题。 6. **性能日志**: 开启JVM的性能日志,如GC日志(-...

    java实现守护进程,有单独的监听进程, 两个或多个进程,两个或多个jvm

    `bin`目录可能包含编译后的可执行文件或脚本,用于启动和管理这些Java进程。为了深入了解实现细节,需要查看源代码并理解其逻辑。 总的来说,Java实现守护进程、监听进程以及管理多个进程和JVM涉及多线程、网络编程...

    Jarboot 是一个强大的Java进程管理、诊断的平台,可以在线管理、监控及诊断本地和远程的Java进程.zip

    - **生产环境监控**:在生产环境中, Jarboot 可以实时监控Java应用的状态,确保服务的稳定性。 3. **技术原理** - **JMX(Java Management Extensions)**:Jarboot 基于JMX协议,实现了对Java进程的远程管理。 ...

    windows进程监控java版

    《Windows进程监控Java版:深度解析与应用》 在信息技术领域,进程监控是系统管理的重要环节,它能够帮助我们了解系统的运行状态,及时发现并处理潜在的问题。Java作为一种跨平台的开发语言,其丰富的库和强大的...

    亲测可用java-1.8.0-openjdk.linux.x86_64.zip

    总之,OpenJDK 1.8.0在Linux x86_64上的部署和使用为开发者提供了强大且可靠的Java开发环境,而JPS命令则作为管理和监控Java进程的有力工具,帮助开发者更好地管理和调试应用程序。确保正确安装和配置OpenJDK,将极...

    linux定时java程序,短信、邮件在linux自动发送

    在Linux环境中,定时执行Java程序是一项常见的需求,用于自动化任务执行,例如监控系统状态、发送短信和邮件通知。本文将详细介绍如何实现这样的功能,并探讨其中涉及的多线程技术和相关工具。 首先,我们需要一个...

    JAVA进程管理模拟

    本项目“JAVA进程管理模拟”旨在通过一个图形用户界面(GUI)来直观地展示进程优先级如何影响进程的执行顺序和资源分配。下面我们将深入探讨相关知识点。 首先,我们来理解“进程”。在操作系统中,进程是程序的一...

    java进程项目

    本项目名为"java进程项目",显然与Java程序的运行和管理有关,特别是涉及到使用Maven进行构建以及项目的部署过程。下面将详细介绍相关知识点。 **Java进程** Java进程是指在操作系统中运行的Java应用程序实例,每个...

    java 结束word进程

    如果你需要在Java程序中实时监控Word进程,可以定期执行上述命令,或者利用`jps`(Java进程状态工具)来查找相关的Java进程。 6. **安全注意事项** 使用这些方法时要谨慎,因为它们具有很高的权限。无控制地结束...

    java获取各进程的信息

    在Java开发过程中,有时候我们需要监控系统资源或特定进程的状态,例如CPU使用率、内存占用情况等。这在服务器性能监控、问题排查等方面尤为重要。本文将详细介绍如何使用Sigar库来实现这些功能。 #### Sigar简介 ...

    Java进程cpu占用率高

    综上所述,解决“Java进程CPU占用率高”问题需要从多个角度出发,包括但不限于代码优化、JVM调优、垃圾收集策略调整、监控与诊断工具的使用等。通过系统性地分析和改进,可以有效地降低Java进程对CPU的占用,提高...

    HPUX 下的java性能调优指南

    - **内存使用监控工具**:通过这些工具可以实时监控Java进程的内存使用情况。 - **性能工具**:提供了一系列用于评估Java应用性能的工具,如CPU利用率、响应时间等。 - **其他工具和选项**:包括了一些不常用但...

    Jconsole监控Java应用

    Jconsole监控Java应用 Jconsole是JDK自带的监控工具,可以对Java应用程序进行监控。本文将介绍通过Jconsole工具对Java应用程序进行监控,包括环境准备、操作步骤和监控内容等。 环境准备 要使用Jconsole对Java...

Global site tag (gtag.js) - Google Analytics