zoukankan      html  css  js  c++  java
  • Java应用系统监控方法简介

    1. tsar

    阿里巴巴开源的实时系统监控工具。其内部的sunfire有部分指标就是基于该工具每分钟采集一次来获取的。
    github

    监控项及数据来源一览

    摘自tsar/info.md

    监控项 来源 细分项
    CPU /proc/stat user: 表示CPU执行用户进程的时间,通常期望用户空间CPU越高越好.
    sys: 表示CPU在内核运行时间,系统CPU占用率高,表明系统某部分存在瓶颈.通常值越低越好.
    wait: CPU在等待I/O操作完成所花费的时间.系统部应该花费大量时间来等待I/O操作,否则就说明I/O存在瓶颈.
    hirq: 系统处理硬中断所花费的时间百分比
    sirq: 系统处理软中断所花费的时间百分比
    util: CPU总使用的时间百分比
    nice: 系统调整进程优先级所花费的时间百分比
    steal: 被强制等待(involuntary wait)虚拟CPU的时间,此时hypervisor在为另一个虚拟处理器服务
    ncpu: CPU的总个数
    mem /proc/meminfo free: 空闲的物理内存的大小
    used: 已经使用的内存大小
    buff: buff使用的内存大小,buffer is something that has yet to be "written" to disk.
    cach: 操作系统会把经常访问的东西放在cache中加快执行速度,A cache is something that has been "read" from the disk and stored for later use
    total: 系统总的内存大小
    util: 内存使用率
    load /proc/loadavg load1: 一分钟的系统平均负载
    load5: 五分钟的系统平均负载
    load15:十五分钟的系统平均负载
    runq: 在采样时刻,运行队列的任务的数目,与/proc/stat的procs_running表示相同意思
    plit: 在采样时刻,系统中活跃的任务的个数(不包括运行已经结束的任务)
    traffic /proc/net/dev bytin: 入口流量byte/s
    bytout: 出口流量byte/s
    pktin: 入口pkt/s
    pktout: 出口pkt/s
    tcp /proc/net/snmp active:主动打开的tcp连接数目
    pasive:被动打开的tcp连接数目
    iseg: 收到的tcp报文数目
    outseg:发出的tcp报文数目
    EstRes:Number of resets that have occurred at ESTABLISHED
    AtmpFa:Number of failed connection attempts
    CurrEs:当前状态为ESTABLISHED的tcp连接数
    retran:系统的重传率
    udp /proc/net/snmp idgm: 收到的udp报文数目
    odgm: 发送的udp报文数目
    noport:udp协议层接收到目的地址或目的端口不存在的数据包
    idmerr:udp层接收到的无效数据包的个数
    io /proc/diskstats 指标较多,略
    partition /etc/mtab + statfs bfree: 分区空闲的字节
    bused: 分区使用中的字节
    btotl: 分区总的大小
    util: 分区使用率
    ifree: 可用文件结点数
    itotl: 文件结点总数
    iutil: 文件结点使用率
    pcsw cswch: 进程切换次数
    proc: 新建的进程数
    tcpx /proc/net/netstat /proc/net/snmp 多个指标,略
    percpu ncpu 同cpu模块
    pernic 同traffic模块
    应用proc /proc/pid/stat:获取进程的cpu信息 /proc/pid/status:获取进程的mem信息 /proc/pid/io:获取进程的读写IO信息 user: 某个进程用户态cpu消耗
    sys: 某个进程系统态cpu消耗
    total:某个进程总的cpu消耗
    mem: 某个进程的内存消耗百分比
    RSS: 某个进程的虚拟内存消耗,这是驻留在物理内存的一部分.它没有交换到硬盘.它包括代码,数据和栈
    read: 进程io读字节
    write:进程的io写字节
    nginx nginx采集模块

    2. JAVA应用监控 —— metric

    注册监听点及监控周期,进行被监控指标的输出。
    引用及使用方式:系统监控-Metric

    3. 企业级集群监控 —— open-falcon

    中文文档

  • 相关阅读:
    1063. Set Similarity
    A1047. Student List for Course
    A1039. Course List for Student
    最大公约数、素数、分数运算、超长整数计算总结
    A1024. Palindromic Number
    A1023. Have Fun with Numbers
    A1059. Prime Factors
    A1096. Consecutive Factors
    A1078. Hashing
    A1015. Reversible Primes
  • 原文地址:https://www.cnblogs.com/wuyuegb2312/p/12962468.html
Copyright © 2011-2022 走看看