Skip to content

Runner之系统信息采集配置

Sun Jianbo edited this page Jun 14, 2017 · 30 revisions

除了日志收集之外,logkit还提供系统信息采集的功能,方便安装了logkit的用户可以同时把logkit作为机器的agent,采集机器以及机器上部署的常见基础组件的各类指标。

配置说明

一份基本的系统信息采集的配置文件如下:

{
    "name":"metric",
    "metric":[
    	{"type":"system"},
    	{"type":"processes"},
    	{"type":"netstat"},
    	{"type":"net"},
    	{"type":"mem"},
    	{"type":"swap"},
    	{"type":"kernel_vmstat"},
    	{"type":"kernel"},
    	{"type":"disk"},
    	{"type":"diskio"},
    	{"type":"cpu"}
     ],
    "senders":[{
        "name":"pandora_sender",
        "sender_type":"pandora",
        "pandora_ak":"<yourak>",
        "pandora_sk":"<yoursk>",
        "pandora_host":"https://pipeline.qiniu.com",
        "pandora_repo_name":"metrics",
        "pandora_region":"nb",
	"pandora_schema_free":"true"
}]
}

可以看到配置文件的结构与用户日志数据采集的配置相似,只是去掉了原来的readerparser模块,增加了metric模块。

  • metric模块包含了支持的各项系统信息采集的指标类别,下文会详细描述支持的各类指标以及指标的字段名称和含义说明。
  • senders模块则与runner之数据收集的sender配置相同,由于metric的字段较多,建议使用pandora sender时开启 pandora_schema_free功能,字段增加检测到的字段。

注意,若同时写了metric模块以及readerparser模块,则只识别metric模块数据,readerparser会被忽略。

指标类别说明

系统--概览(system)

metric配置: {"type":"system"}

  • "system_load1": 1分钟平均
  • "system_load5": 5分钟平均load值
  • "system_load15": 15分钟的平均load值
  • "system_n_users": 用户数
  • "system_n_cpus": CPU核数
  • "system_uptime": 系统启动时间
  • "system_uptime_format": 格式化的系统运行时间

系统--进程信息(processes) windows暂不支持

metric配置: {"type":"processes"}

共有

  • "processes_blocked": 不可中断的睡眠状态下的进程数, 进程标志位为:'U', 'D', 'L'
  • "processes_zombies": 僵尸态进程数, 进程标志位为:'Z'
  • "processes_stopped": 暂停状态进程数,进程标志位为:'T'
  • "processes_running": 运行中的进程数,进程标志位为:'R'
  • "processes_sleeping": 可中断进程数,进程标志位为:'S'
  • "processes_total": 总进程数
  • "processes_unknown": 未知状态进程数

系统特定

freebsd相关

  • "processes_idle": 挂起的空闲进程数,进程标志位为:'I'
  • "processes_wait": 等待中的进程数,进程标志位为:'W'

darwin相关

  • "processes_idle": 挂起的空闲进程数,进程标志位为:'I'

openbsd相关

  • "processes_idle": 挂起的空闲进程数,进程标志位为:'I'

linux相关

  • "processes_dead": 回收中的进程数,进程标志位为:'X'
  • "processes_paging": 等待中的进程数,进程标志位为:'W'
  • "processes_total_threads": 总线程数

系统--网络连接情况(netstat)

metric配置: {"type":"netstat"}

  • "netstat_tcp_established": ESTABLISHED状态的网络链接数
  • "netstat_tcp_syn_sent": SYN_SENT状态的网络链接数
  • "netstat_tcp_syn_recv": SYN_RECV状态的网络链接数
  • "netstat_tcp_fin_wait1": FIN_WAIT1状态的网络链接数
  • "netstat_tcp_fin_wait2": FIN_WAIT2状态的网络链接数
  • "netstat_tcp_time_wait": TIME_WAIT状态的网络链接数
  • "netstat_tcp_close": CLOSE状态的网络链接数
  • "netstat_tcp_close_wait": CLOSE_WAIT状态的网络链接数
  • "netstat_tcp_last_ack": LAST_ACK状态的网络链接数
  • "netstat_tcp_listen": LISTEN状态的网络链接数
  • "netstat_tcp_closing": CLOSING状态的网络链接数
  • "netstat_tcp_none": NONE状态的网络链接数
  • "netstat_udp_socket": UDP状态的网络链接数

系统--网络设备状态(net)

metric配置: {"type":"net"}

  • "net_bytes_sent": 网卡发包总数(bytes)
  • "net_bytes_recv": 网卡收包总数(bytes)
  • "net_packets_sent": 网卡发包数量
  • "net_packets_recv": 网卡收包数量
  • "net_err_in": 网卡收包错误数量
  • "net_err_out": 网卡发包错误数量
  • "net_drop_in": 网卡收 丢包数量
  • "net_drop_out": 网卡发 丢包数量
  • "net_interface": 网卡设备名称

系统--内存(mem)

metric配置: {"type":"mem"}

  • "mem_total": 内存总数
  • "mem_available": 可用内存数
  • "mem_used": 已用内存数
  • "mem_free": 空闲内存
  • "mem_cached": 用于缓存的内存
  • "mem_buffered": 文件buffer内存
  • "mem_active": 活跃使用的内存总数,包括cache和buffer内存
  • "mem_inactive": 空闲的内存数,包括free和avalible的内存
  • "mem_used_percent": 内存已用百分比(0~100)
  • "mem_available_percent": 内存剩余百分比(0~100)

系统--CPU(swap)

metric配置: {"type":"swap"},

系统--CPU(cpu)

metric配置: {"type":"cpu"}

CPU 总量

  • "cpu_time_user": 用户进程用时
  • "cpu_time_system": 系统内核用时
  • "cpu_time_idle": 空闲CPU用时
  • "cpu_time_nice": 优先级调度用时
  • "cpu_time_iowait": iowait用时
  • "cpu_time_irq": 中断用时
  • "cpu_time_softirq": 软中断用时
  • "cpu_time_steal": Steal用时
  • "cpu_time_guest": Guest用时
  • "cpu_time_guest_nice": GuestNice用时
  • "cpu_cpu": CPU序号名称

CPU 用量

  • "cpu_usage_user": 用户用量百分比(0~100)
  • "cpu_usage_system": 系统用量百分比(0~100)
  • "cpu_usage_idle": 空闲百分比(0~100)
  • "cpu_usage_nice": 优先级调度程序用量百分比(0~100)
  • "cpu_usage_iowait": IOwait时间占比(0~100)
  • "cpu_usage_irq": 中断时间占比(0~100)
  • "cpu_usage_softirq": 软中断时间占比(0~100)
  • "cpu_usage_steal": 虚拟CPU的竞争等待时间占比(0~100)
  • "cpu_usage_guest": 虚拟进程的CPU用时占比(0~100)
  • "cpu_usage_guest_nice": 虚拟进程CPU调度用时占比(0~100)
  • "cpu_cpu": CPU序号名称

系统--内核(kernel_vmstat) 仅Linux系统适用

metric配置: {"type":"kernel_vmstat"}

系统--内核(kernel) 仅Linux系统适用

metric配置: {"type":"kernel"}

  • "kernel_interrupts": 内核中断次数
  • "kernel_context_switches": 内核上下文切换次数
  • "kernel_processes_forked": fork的进程数
  • "kernel_boot_time": 内核启动时间
  • "kernel_disk_pages_in": 磁盘换入数量
  • "kernel_disk_pages_out": 磁盘换出数量

系统--磁盘(disk)

metric配置: {"type":"disk"}

  • "disk_path": 磁盘路径
  • "disk_device": 磁盘设备名
  • "disk_fstype": 文件系统类型
  • "disk_total": 磁盘总大小
  • "disk_free": 磁盘剩余大小
  • "disk_used": 磁盘用量
  • "disk_used_percent": 磁盘已用百分比
  • "disk_inodes_total": 总inode数量
  • "disk_inodes_free": 空闲的inode数量
  • "disk_inodes_used": 适用的inode数量

系统--磁盘IO(diskio)

metric配置: {"type":"diskio"}

  • "diskio_reads": 磁盘被读的总次数
  • "diskio_writes": 磁盘被写的总次数
  • "diskio_read_bytes": 读取的总数据量
  • "diskio_write_bytes": 写入的总数据量
  • "diskio_read_time": 磁盘读取总用时
  • "diskio_write_time": 磁盘写入总用时
  • "diskio_io_time": io总时间
  • "diskio_iops_in_progress": 运行中的每秒IO数据量
  • "diskio_name": 磁盘名称
Clone this wiki locally