-
Notifications
You must be signed in to change notification settings - Fork 255
Runner之系统信息采集配置
除了日志收集之外,logkit还提供系统信息采集的功能,方便安装了logkit的用户可以同时把logkit作为机器的agent,采集机器以及机器上部署的常见基础组件的各类指标。
一份基本的系统信息采集的配置文件如下:
{
"name":"metric",
"metric":[
{
"type":"system",
"attributes":{}
},
{
"type":"processes"
"attributes":{}
},
{
"type":"netstat",
"attributes":{}
},
{
"type":"net",
"attributes":{},
"config":{}
},
{
"type":"mem",
"attributes":{}
},
{
"type":"swap",
"attributes":{}
},
{
"type":"kernel_vmstat"
},
{
"type":"kernel",
"attributes":{}
},
{
"type":"disk",
"attributes":{},
"config":{}
},
{
"type":"diskio",
"attributes":{},
"config":{}
},
{
"type":"cpu",
"attributes":{},
"config":{}
}
],
"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"
}]
}
可以看到配置文件的结构与用户日志数据采集的配置相似,只是去掉了原来的reader
和parser
模块,增加了metric
模块。
-
metric
模块包含了支持的各项系统信息采集的指标类别,下文会详细描述支持的各类指标以及指标的字段名称和含义说明。 -
senders
模块则与runner之数据收集的sender配置相同,由于metric的字段较多,建议使用pandora sender
时开启pandora_schema_free
功能,字段增加检测到的字段。
注意,若同时写了metric
模块以及reader
、parser
模块,则只识别metric
模块数据,reader
和parser
会被忽略。
{
"type":"system",
"attributes":{
"system_load1": true,
"system_load5": true,
"system_load15": true,
"system_n_users": true,
"system_n_cpus": true,
"system_uptime": true,
"system_uptime_format": true
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "system_load1": 1分钟平均
- "system_load5": 5分钟平均load值
- "system_load15": 15分钟的平均load值
- "system_n_users": 用户数
- "system_n_cpus": CPU核数
- "system_uptime": 系统启动时间
- "system_uptime_format": 格式化的系统运行时间
{
"type":"processes",
"attributes":{
"processes_blocked": true,
"processes_zombies": true,
"processes_stopped": true,
"processes_running": true,
"processes_sleeping": true,
"processes_total": true,
"processes_unknown": true,
"processes_idle": true,
"processes_wait": true,
"processes_dead": true,
"processes_paging": true,
"processes_total_threads": true
}
}
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "processes_blocked": 不可中断的睡眠状态下的进程数, 进程标志位为:
'U', 'D', 'L'
- "processes_zombies": 僵尸态进程数, 进程标志位为:
'Z'
- "processes_stopped": 暂停状态进程数,进程标志位为:
'T'
- "processes_running": 运行中的进程数,进程标志位为:
'R'
- "processes_sleeping": 可中断进程数,进程标志位为:
'S'
- "processes_total": 总进程数
- "processes_unknown": 未知状态进程数
- "processes_idle": 挂起的空闲进程数,进程标志位为:
'I'
- "processes_wait": 等待中的进程数,进程标志位为:
'W'
- "processes_idle": 挂起的空闲进程数,进程标志位为:
'I'
- "processes_idle": 挂起的空闲进程数,进程标志位为:
'I'
- "processes_dead": 回收中的进程数,进程标志位为:
'X'
- "processes_paging": 等待中的进程数,进程标志位为:
'W'
- "processes_total_threads": 总线程数
{
"type":"netstat",
"attributes":{
"netstat_tcp_established": true,
"netstat_tcp_syn_sent": true,
"netstat_tcp_syn_recv": true,
"netstat_tcp_fin_wait1": true,
"netstat_tcp_fin_wait2": true,
"netstat_tcp_time_wait": true,
"netstat_tcp_close": true,
"netstat_tcp_close_wait": true,
"netstat_tcp_last_ack": true,
"netstat_tcp_listen": true,
"netstat_tcp_closing": true,
"netstat_tcp_none": true,
"netstat_udp_socket": true
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "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
状态的网络链接数
{
"type":"net",
"attributes":{
"net_bytes_sent": true,
"net_bytes_recv": true,
"net_packets_sent": true,
"net_packets_recv": true,
"net_err_in": true,
"net_err_out": true,
"net_drop_in": true,
"net_drop_out": true,
"net_interface": true,
},
"config": {
"interfaces": []
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "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": 网卡设备名称
config
代表该系统指标需要配置的参数,各参数说明如下:
- "interfaces": 配置后可以收集特定网卡的信息,为空时收集所有网卡的信息
{
"type":"mem",
"attributes":{
"mem_total": true,
"mem_available": true,
"mem_used": true,
"mem_free": true,
"mem_cached": true,
"mem_buffered": true,
"mem_active": true,
"mem_inactive": true,
"mem_used_percent": true,
"mem_available_percent": true
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "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)
{
"type":"swap",
"attributes":{
"swap_total": true,
"swap_used": true,
"swap_free": true,
"swap_in": true,
"swap_out": true,
"swap_used_percent": true
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "swap_total": Swap空间总量
- "swap_used": Swap已使用空间
- "swap_free": Swap空闲空间
- "swap_in": Swap换入(页面从交换分区转换到内存中)
- "swap_out": Swap换出(页面从内存换出到交换分区),
- "swap_used_percent": Swap使用率
{
"type":"cpu",
"attributes":{
"cpu_time_user": true,
"cpu_time_system": true,
"cpu_time_idle": true,
"cpu_time_nice": true,
"cpu_time_iowait": true,
"cpu_time_irq": true,
"cpu_time_softirq": true,
"cpu_time_steal": true,
"cpu_time_guest": true,
"cpu_time_guest_nice": true,
"cpu_time_cpu": true,
"cpu_usage_user": true,
"cpu_usage_system": true,
"cpu_usage_idle": true,
"cpu_usage_nice": true,
"cpu_usage_iowait": true,
"cpu_usage_irq": true,
"cpu_usage_softirq": true,
"cpu_usage_steal": true,
"cpu_usage_guest": true,
"cpu_usage_guest_nice": true,
"cpu_usage_cpu": true
},
"config": {
"per_cpu": true,
"total_cpu": true,
"collect_cpu_time": true
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "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_time_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_usage_cpu": CPU序号名称
config
代表该系统指标需要配置的参数,各参数说明如下:
- "per_cpu": 是否收集每一个 cpu 的统计信息, 默认开启
- "total_cpu": 是否收集 cpu 总体情况统计信息, 默认开启
- "collect_cpu_time": 是否收集 cpu 时间统计信息, 默认关闭
{
"type": "kernel_vmstat"
}
{
"type": "kernel",
"attributes": {
"kernel_interrupts": true,
"kernel_context_switches": true,
"kernel_processes_forked": true,
"kernel_boot_time": true,
"kernel_disk_pages_in": true,
"kernel_disk_pages_out": true
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "kernel_interrupts": 内核中断次数
- "kernel_context_switches": 内核上下文切换次数
- "kernel_processes_forked": fork的进程数
- "kernel_boot_time": 内核启动时间
- "kernel_disk_pages_in": 磁盘换入数量
- "kernel_disk_pages_out": 磁盘换出数量
{
"type": "disk",
"attributes": {
"disk_path": true,
"disk_device": true,
"disk_fstype": true,
"disk_total": true,
"disk_free": true,
"disk_used": true,
"disk_used_percent": true,
"disk_inodes_total": true,
"disk_inodes_free": true,
"disk_inodes_used": true
},
"config": {
"ignore_fs": [],
"mount_points": []
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "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数量
config
代表该系统指标需要配置的参数,各参数说明如下:
- "ignore_fs": 选填,忽略的挂载点
- "mount_points": 选填,收集特定的挂载点, 为空时默认收集除 "ignore_fs" 字段设置外的所有挂载点的信息
{
"type": "diskio",
"attributes": {
"diskio_reads": true,
"diskio_writes": true,
"diskio_read_bytes": true,
"diskio_write_bytes": true,
"diskio_read_time": true,
"diskio_write_time": true,
"diskio_io_time": true,
"diskio_iops_in_progress": true,
"diskio_name": true
},
"config": {
"devices": [],
"device_tag": [],
"name_templates": [],
"skip_serial_number": false
}
}
### 字段说明
attributes
代表收集的字段,当显式配置某字段为 false
时,将不再收集该字段的值,不配置或者配置字段值为true
时,收集该字段的值。各个字段的含义如下:
- "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": 磁盘名称
config
代表该系统指标需要配置的参数,各参数说明如下:
- "devices": 选填,获取特定设备的信息, 为空时默认获取所有设备的信息
- "device_tags": 选填,采集磁盘特定 tag 的信息, 为空时默认获取所有 tag 信息
- "name_templates": 选填, 一些尝试加入设备的模板列表
- skip_serial_number": 是否忽略磁盘序列号, 默认为 true
快速开始 | Pandora | Readers | Parsers | Senders | Download | 七牛智能日志管理平台 | logkit-pro专业版