`

java 运行shell 得到 linux cpu的使用率

 
阅读更多

Process process = Runtime.getRuntime().exec("top -b -n 1");

 

//已测试

 

//运行shell 得到 linux cpu的使用率
 public static String getCpuRateForLinux() {
  InputStream is = null;
  InputStreamReader isr = null;
  BufferedReader brStat = null;
  StringTokenizer tokenStat = null;
  try {

   Process process = Runtime.getRuntime().exec("top -b -n 1");
   is = process.getInputStream();
   isr = new InputStreamReader(is);
   brStat = new BufferedReader(isr);

   osVersion = System.getProperty("os.version");
   System.out.println("yang osVersion:"+osVersion);
  
   if (osVersion.startsWith("2.6")){
    System.out.println("yang osVersion.startsWith(2.6)");
    String temp;
    int end;
    //取得cpu空闲 idle
    Float usage =0.0f;
    while((temp = brStat.readLine())!=null){
     if(temp.indexOf("id")>-1){
      end = temp.indexOf("id");
      temp = temp.substring(end-9,end);
      temp = temp.substring(temp.lastIndexOf(",")+1,temp.lastIndexOf("%"));
      usage = Float.valueOf(temp.trim());
      break;
     }
    }
    //取得cpu空闲 idle
    
    System.out.println("osVersion 2.6:"+(1.0f - usage/ 100));
    //保留3位小数
    return Math.round((1.0f - usage/ 100)*1000)/1000 +"";
   }
  }catch (IOException ioe) {
   System.out.println(ioe.getMessage());
   freeResource(is, isr, brStat);
   return "1";
  } finally {
   freeResource(is, isr, brStat);
  }
 }

分享到:
评论

相关推荐

    java监控linux cpu使用率

    本文将深入探讨如何使用Java来实现Linux下的CPU使用率监控。通过理解这个主题,开发者可以更好地掌握系统性能,及时发现并解决问题,确保服务的稳定运行。 首先,我们需要了解Linux系统中CPU使用率的基本概念。CPU...

    linux系统java服务自启动shell脚本及服务cpu内存占用监控脚本

    此脚本通过`pgrep`查找Java服务进程,然后使用`ps`命令获取CPU和内存使用率。如果CPU或内存超过预设阈值,它会发送警告邮件。你可以根据实际需求调整阈值和报警方式。 为了运行监控脚本,可以将其放置在`/etc/cron....

    linux 获取cpu shell

    此脚本通过shell命令实现了对CPU使用率的监控,并在CPU使用率达到一定阈值时自动触发Tomcat线程dump,这对于诊断性能问题非常有用。通过对`/proc/stat`文件的分析,我们不仅可以了解CPU的使用情况,还可以进一步挖掘...

    shell脚本自动监测系统cpu资源,异常彪高时,自动打印应用线程日志文件

    2. 使用`top`或`vmstat`命令获取当前CPU使用率,并与阈值进行比较。 3. 如果CPU使用率超过阈值,执行线程转储(JVM Thread Dump)。这可以通过发送特定信号(如`kill -3 <pid>`)给Java进程来完成,其中`<pid>`是...

    LINUX_CPU利用率算法android

    不过,Android可能会有一些特定的API或工具来简化获取CPU利用率的过程,例如使用Java的ManagementFactory类或者使用adb shell命令来读取/proc/stat和/proc/cpuinfo。 总的来说,理解Linux的/proc文件系统以及如何...

    Linux中使用Shell脚本查看Java线程的CPU使用情况

    在Linux操作系统中,监控和分析Java应用程序的性能是一个常见需求,尤其是在CPU使用率异常升高时。本文档介绍了一种利用Shell脚本监控Java线程CPU使用情况的方法。以下是详细的知识点: 1. 基于Linux的Java应用程序...

    Linux shell脚本实现CPU预警

    2. 如果CPU空闲率低于20%(即占用率高于80%),则进一步检查是否存在Java进程。 3. 对于每个Java进程,调用特定脚本打印线程堆栈信息并记录到日志中。 4. 进行多次连续检测,以确保CPU高负载状态的持续性。 5. 达到...

    java获取各进程的信息

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

    Android 查看CUP占用率

    `adb shell dumpsys cpuinfo`命令提供了另一种查看CPU使用情况的方法。它不仅显示了总体CPU利用率,还提供了每个内核的具体负载信息。这对于多核处理器来说尤其有用,可以帮助我们了解各个核心的工作状态。 示例: ...

    bisheng-jdk-8u322-linux-x64.tar.gz

    可以通过JDK自带的JMX(Java Management Extensions)和JConsole等工具,或者第三方工具如VisualVM、JProfiler等来监控CPU使用率、内存占用、线程状态等指标,以确保服务器的健康运行。 总之,毕昇JDK 8u322 Linux ...

    WebSphere CPU高分析工具

    `linperf.sh`可能是一个集成了这些工具的shell脚本,用于收集CPU使用率、内存占用、进程活动、系统调用等信息,帮助识别Linux系统中的性能问题。 使用这些工具时,通常会遵循以下步骤: 1. **数据收集**:运行相应...

    red hat linux 7.2系统管理.rar

    4. **系统监控与性能调优**: 通过工具如top、iostat和vmstat,可以监控系统的CPU使用率、内存占用、磁盘I/O等,从而进行性能优化。 5. **软件包管理**: 使用RPM(Red Hat Package Manager)和yum(Yellowdog ...

    java程序员应学习的Linux命令.pdf

    f`一起用于实时日志监控)、`type`(查找命令路径)、`wc`(统计行数)、`grep`(在文件中搜索特定内容)、`find`(查找文件)、`date`(查看...查看进程状态)、`top`(监控CPU使用率)、`kill`和`killall`(结束进程...

    Alibaba_Dragonwell_8.11.12_x64_linux.tar.gz

    2. 性能监控:利用JMX(Java Management Extensions)和各种监控工具,如JConsole、VisualVM等,实时监控Dragonwell的运行状态,包括CPU使用率、内存分配、线程活动等。 3. 调优策略:根据应用特性,进行JVM参数...

    100个shell脚本合集

    例如,脚本中可以包含检查磁盘空间、内存使用率、CPU负载等关键指标,当超过预设阈值时,通过mailx发送告警邮件。 3. MySQL 数据库备份:MySQL数据库的备份是系统维护的重要环节。这里有两个备份策略:单循环备份将...

    jps_stat:Bash脚本,监视当前linux系统上运行的所有Java程序的current_heap_memory,max_heap_till_now,current_ram,max_ram_used,current_cpu_by_jvm详细信息

    例如,`current_heap_memory`可能是从`jstat`的堆内存统计中获取的,而`current_cpu_by_jvm`可能通过对特定时间段内CPU使用率的平均值来估算。 在实际使用中,用户可以通过运行`jps_stat`脚本来快速查看所有Java...

    java监控开发示例

    这个“java监控开发示例”旨在提供一种方法来实现这一目标,通过Java代码远程监控系统资源,如CPU使用率、内存占用、磁盘空间以及网络状态等。 首先,我们需要理解Java中用于系统监控的基础概念和技术。Java提供了...

    python和shell监控linux服务器的详细代码

    - **CPU监控**:通过`/proc/cpuinfo`文件了解CPU核心数,以及`mpstat`或`top`命令查看CPU使用率。 - **内存监控**:使用`free`命令检查内存使用情况,包括物理内存、交换内存等。 - **磁盘监控**:通过`df`命令查看...

    jprofiler_linux_4_3_2.sh

    JProfiler是Ej-Technologies公司开发的一款商业Java性能分析器,它提供了丰富的功能,包括内存分析、CPU使用率分析、线程分析、方法调用统计等,帮助开发者找到并解决Java应用中的性能瓶颈。 二、下载与解压 标题...

Global site tag (gtag.js) - Google Analytics