collect插件与数# collect插件与数iang据输出

配置文件目录:/opt/collectd/etc/collectd.conf

1、CPU插件

1.1、cpu的各项指标

  • idle————表示CPU闲置并等待工作分配.
  • user————表示CPU在运行用户的进程
  • system————表示CPU在执行kernel工作
  • nice————表示CPU花费在被nice改变过优先级的process上的时间(注意:被nice命令改变优先级的process仅指那些nice值为负的process.花费在被nice命令改变优先级的任务上的时间也将被计算在系统和用户时间内,因此整个时间加起来可能会超过百分之百)
  • iowait————表示CPU等待IO操作完成的时间
  • irq————表示CPU开销在响应硬中断上的时间
  • softirq————表示CPU开销在响应软中断上的时间.

1.2、cpu监控日志文件

  • cpu-idle-2016-08-09
  • cpu-nice-2016-08-09
  • cpu-steal-2016-08-09 【待确认】
  • cpu-user-2016-08-09
  • cpu-interrupt-2016-08-09
  • cpu-softirq-2016-08-09
  • cpu-system-2016-08-09
  • cpu-wait-2016-08-09

1.3、文件格式

[root@t0-security-tdas02 cpu-1]# head cpu-idle-2016-08-09
epoch,value
1470731957.724,174939914
1470731967.724,174940914
1470731977.724,174941913
1470731987.724,174942912
1470731997.724,174943911
  • epoch 指定监测时间
  • value cpu的数值

其中value的数值为Jiffies计数。

Jiffies 为linux核心变数(unsigned long),它被用来记录系统自开机以来,已经过了多少tick。 每发生一次timer interrupt,Jiffies变数会被加1.

2、Memory 插件

2.1、查看内存的命令

命令:

  free -m

输出:

[root@t0-security-tdas02 memory]# free -m
              total        used        free      shared  buff/cache   available
Mem:           7823         108        7166          64         548        7444
Swap:          8191           0        8191
total 内存总数: 1002M
used 已经使用的内存数: 769M
free 空闲的内存数: 232M
shared 当前已经废弃不用,总是0
buffers Buffer 缓存内存数: 62M
cached Page 缓存内存数:421M

2.2、相关日志文件

  • memory-buffered-2016-08-09 Buffer缓存内存数
  • memory-slab_recl-2016-08-09
  • memory-free-2016-08-09 空闲的内存数
  • memory-used-2016-08-09 已经使用的内存数
  • memory-cached-2016-08-09 Page缓存内存数
  • memory-slab_unrecl-2016-08-09

2.3、文件内容

3、load

[root@t0-security-tdas02 load]# head load-relative-2016-08-09
epoch,shortterm,midterm,longterm
1470731947.726,0.000000,0.002500,0.012500
1470731957.724,0.000000,0.002500,0.012500
1470731967.724,0.000000,0.002500,0.012500
1470731977.724,0.000000,0.002500,0.012500
1470731987.724,0.000000,0.002500,0.012500
1470731997.724,0.000000,0.002500,0.012500
1470732007.724,0.000000,0.002500,0.012500
1470732017.724,0.000000,0.002500,0.012500
1470732027.724,0.000000,0.002500,0.012500
[root@CNC-BJ-5-3N1 ~]# w
20:01:55 up 76 days, 8:20, 6 users, load average: 1.30, 1.48, 1.69

4、exec插件

配置方法:

<LoadPlugin exec>
    Interval 120
</LoadPlugin>

<Plugin exec>
    Exec "root" "/opt/lynis/lynis" "--check-all" 
    NotificationExec "root" "/opt/lynis/lynis"  "--check-all"  
</Plugin>

#Exec 有返回数据
#NotificationExec 无返回数据

exec插件不允许程序以root权限运行

5、logfile插件

LoadPlugin logfile
##LoadPlugin log_logstash

<Plugin logfile>
        LogLevel "debug"
        File "/var/log/collectd.log"
        Timestamp true
#       PrintSeverity false
</Plugin>

5、其他插件

https://collectd.org/wiki/index.php/Table_of_Plugins

  1. Apache 【read】获取每秒的请求数、每秒的字节流量、apache scoreboard
  2. apcups 【read】对不间断电源的监控
  3. Aquaero 【read】风扇转速等数据
  4. Ascent 【read】对开源游戏框架进行监控,魔兽
  5. barometer 【read】通过气压传感器对气压进行监控
  6. Battery 【read】电压监控
  7. BIND 【read】对DNS服务器bind进行监控,与dns插件相比,由于嵌入到bind程序内,信息更详细。
  8. Carbon【write】将收集到的数据,写到carbon中
  9. ceph 【read】 The ceph plugin collects values from JSON data to be parsed by libyajl (https://lloyd.github.io/yajl/) retrieved from ceph daemon admin sockets.
  10. cgroups 【read】以cpu组为单位获得,cpu的数据。This plugin collects CPU accounting information for processes in a cgroup.
  11. ConnTrack 【read】In order to do stateful packet inspection (SPI), the Linux packet filter IP-Tables keeps track of established connections in the connection tracking table. This allows packets belonging to an established connection to be accepted quickly and only new connections will go through the entire firewalling logic.
  12. ContextSwitch【read】 The ContextSwitch plugin collects the number of context switches done by the operating system.

  13. CPUFreq 【read】用于检测cpu的频率,通常用于移动设备

  14. cURL 【read】根据配置文件,对http、ssh、ftp的数据进行解析收集
  15. cURL-JSON 【read】对json数据进行解析
  16. cURL-XML 【read】对XML数据进行解析
  17. DBI 【read】获取数据库信息,支持的数据库包括:Firebird / Interbase、FreeTDS (provides access to MS SQL Server and Sybase)、MySQL、PostgreSQL、SQLite / SQLite3
  18. DF 【read】获取文件系统信息,总共有多大空间,使用了多大的空间
  19. Disk:【read】获取磁盘的相关监控信息,如读写速度
  20. DNS 【read】dns 数据
  21. drbd 【read】 无文档
  22. E-Mail 【read】不推荐使用
  23. Entropy【read】对系统熵池进行监控
  24. Ethstat 【read】从以太网卡上获取性能指标数据
  25. Exec 【read】用于运行一个程序,并把它的返回值,收集起来
  26. fhcount 【read】收集文件句柄的总数、已使用的数量和未使用的数量
  27. FileCount 【read】对指定文件夹中的文件数量进行监控
  28. FSCache 【read】 无文档
  29. GenericJMX 【read】 JMX从MBeanServer中MBeans。reads Managed Beans (MBeans) from an MBeanServer using JMX
  30. gmond 【read】用于接收 Ganglia监控系统的数据
  31. HDDTemp 【read】获取硬盘温度数据
  32. Interface 【read】获取网络流量数据
  33. IPC 【read】无文档
  34. IPMI 【read】用于读取硬件传感器数据。The IPMI plugin uses the OpenIPMI library to read hardware sensors from servers using the Intelligent Platform Management Interface (IPMI). IPMI is very common with server hardware but usually not available in consumer hardware.
  35. IPTables 【read】用来收集匹配iptable规则的流量和数据包信息
  36. IPVS 【read】收集lvs负载均衡服务器的数据
  37. IRQ 【read】对指定编号的irq中断请求的监控
  38. Java 【Binding】用java开发自定义插件的接口
  39. LogFile 【logging】用于指定collectd日志文件的保存位置
  40. Log Logstash 【logging】以logstash支持的json格式保存collectd日志数据
  41. LPAR 【read】对服务器逻辑分区上的数据进行收集,(不是磁盘的逻辑分区)。LPAR定义:逻辑分区就是将单台服务器划分成多个逻辑服务器,彼此运行独立的应用程序。逻辑分区不同于物理分区(Physical Partitioning PPAR),物理分区是将物理的将资源组合形成分区,而逻辑分区则不需要考虑物理资源的界限。相对而言,逻辑分区具有更多的灵活性,可以在物理资源中自由的选择部件,这需要有较好的保证,即最大化的使用系统资源,但又最小化必要的资源再分配。在逻辑分区环境下,如CPU、内存和I/O都可以独立的分配给每个分区。逻辑分区的配置和管理是通过硬件管理控制台(Hardware Management Console)实现的。
  42. LVM 【read】 The LVM plugin collects the size of logical volumes (LV) and free space inside a volume group (VG) from Linux' Logical Volume Manager (LVM).
  43. MadWifi 【read】用于收集Atheros公司无线芯片的数据
  44. MBMon【read】获取主板数据,温度、风扇转速、电压等
  45. MD 【read】获得 RAID 设备中的磁盘数量
  46. memcachec 【read】从memcached 服务器上获取数据
  47. memcached 【read】对memcached守护进程进行监控
  48. MIC 【read】收集 Intel 的Many Integrated Core(MIC)数据
  49. Modbus 【read】通过Modbus协议获取数据
  50. Monitorus【read】从商业网站监控 mon.itor.us系统中获取数据
  51. Multimeter 【read】从串口接入的万用表中获取电压等数据
  52. MySQL 【read】 通过 SHOW STATUS命令获取mysql的状态数据
  53. NetApp 【read】链接到NetApp存储系统上,获取NetApp上性能指标数据
  54. Netlink 【read】暂时不关注
  55. Network【Read, Write】以另一个collectd程序发送数据,或从另一个collectd程序中接收数据
  56. NFS 【read】收集网络文件系统(Network File System )运行的指标数据,如系统调用的数量等
  57. nginx 【read】获取nigix从启动以来的请求数,以及当前的链接数。
  58. Notify Desktop【Notification】发起桌面通知
  59. Notify Email【Notification】发起邮件通知
  60. NTPd 【read】收集来自“网络时间协议”服务器的数据
  61. NUMA 【read】获取NUMA子系统的数据。NUMA定义:(Non Uniform Memory Access Architecture)技术可以使众多服务器像单一系统那样运转,同时保留小系统便于编程和管理的优点。基于电子商务应用对内存访问提出的更高的要求,NUMA也向复杂的结构设计提出了挑战。
  62. NUT 使用网络UPS工具对UPS设备进行监控。
    • UPS(Uninterruptable Power System/Uninterruptable Power Supply),即不间断电源,是将蓄电池(多为铅酸免维护蓄电池)与主机相连接,通过主机逆变器等模块电路将直流电转换成市电的系统设备。主要用于给单台计算机、计算机网络系统或其它电力电子设备如电磁阀、压力变送器等提供稳定、不间断的电力供应。
  63. olsrd 【read】The olsrd plugin reads information about meshed networks from the txtinfo plugin of the Optimized Link State Routing daemon (olsrd).
  64. OneWire 【read】The experimental OneWire plugin collects temperature information from sensors connected to the computer over the OneWire bus. It uses the owfs library for communication.
  65. openldap 【read】OpenLDAP是轻型目录访问协议 服务器进行监控
  66. OpenVPN 【read】对OpenVPN服务器的数据进行监控
  67. OpenVZ 【read】监控OpenVZ虚拟器上的数据,包括:interface, cpu, df, load, processes和 users。
  68. Oracle 【read】获取oracle状态数据
  69. Perl 【Binding】 Perl语言的开发接口
  70. pf 【read】无文档
  71. Pinba 【read】接入Pinba是数据,Pinba (PHP Is Not A Bottleneck Anymore) is a statistics server using MySQL as an interface.
  72. Ping 【read】发起ping请求并获取相应的数据
  73. PostgreSQL 【read】获取PostgreSQL 数据库的状态数据
  74. PowerDNS 【read】获取PowerDNS运行状态数据。PowerDNS 是一个跨平台的开源DNS服务组件,PowerDNS同时有Win32和Linux/Unix的版本。 PowerDNS在Win32下使用 Access的mdb文件记录DNS信息,而在Linux/Unix下则使用MySQL来记录DNS信息。无论是mdb亦或MySQL,备份是非常方便的 事情。
  75. Processes 【read】获得指定进程的监控数据
  76. Protocols 【read】获取当前系统支持的协议数据
  77. Python 【Binding】python插件开发接口
  78. Redis plugin【read】 从Redis服务中读取数据
  79. RouterOS 【read】用来连接RouterOS操作系统,获取监控数据。RouterOS是一个基于linux的路由器操作系统。
  80. RRDCacheD 【write】用于连接 “RRD caching daemon ”进程
  81. RRDtool 【write】 将数据写入RRD file
  82. Sensors【read】 通过lm-sensors读取硬件传感器上的数据。lm_sensors,是一款基于linux系统的硬件监控的软件。可以监控主板,CPU的工作电压,温度等数据。
  83. Serial 【read】从串口上接收数据
  84. sigrok 【read】
  85. SMART 【read】 从硬盘设备上读取Self-Monitoring, Analysis and Reporting Technology (SMART) 数据
  86. SNMP 【read】使用Net-SNMP库通过处理SNMP协议从网络设备中读取数据
  87. StatsD 【read】允许客户端通过StatsD network协议
  88. Swap 【read】收集内存写入硬盘操作或系统调用“swap”的信息。
  89. SysLog 【logging】接收collectd运行过程中的日志数据,并把日志吐到syslog中。
  90. Table 【read】 用来解析table-like structured格式的文本文件,可以用来解析/proc目录下的所有linux系统文件
  91. Tail 【read】类似于文件的tail命令,用来获取指定文件的内容追加部分
  92. tail_csv 【read】读取csv格式的文件
  93. Tape 【read】从磁带上读入数据,或将数据写到磁带上
  94. TCPConns【read】用来建立tcp连接
  95. TeamSpeak2 【read】收集 TeamSpeak2上的监控日志
  96. TED 【read】从The Energy Detective设备上去读电量(Power)信息
  97. thermal 【read】 The thermal plugin reads ACPI thermal zone information from the sysfs or procfs file system, i. e. mostly system temperature information.
  98. thresholds 【other】阈值
  99. TokyoTyrant 【read】从TokyoTyrant服务器中读取文件的数量和长度,TokyoTyrant 用于数据持久化的系统。
  100. turbostat 【read】he Turbostat plugin reads CPU frequency and C-state residency on modern Intel processors by using the new Model Specific Registers.
  101. UnixSock 【read,write】打开unix 套接字读写数据。
  102. Uptime 【read】用来跟踪系统的正常运行时间
  103. Users 记录当前系统登录的用户数
  104. UUID 【read】 The UUID plugin tries hard to determine the UUID (an unique identifier) of the system it is running on, using a file (default: /etc/uuid), freedesktop.org's “Hardware Abstraction Layer” (HAL) if available, dmidecode(8), and another file, this time /sys/hypervisor/uuid.
  105. Varnish 【read】收集Varnish 设备上的数据,Varnish:Varnish是一款高性能的开源HTTP加速器,挪威最大的在线报纸 Verdens Gang 使用3台Varnish代替了原来的12台Squid,性能比以前更好
  106. virt 【read】 The virt plugin uses the virtualization API libvirt, created by RedHat's Emerging Technology group, to gather statistics about virtualized guests on a system.
  107. vmem 【read】 收集内核的虚拟内存子系统的信息。The vmem plugin collects information about the virtual memory subsystem of the kernel.
  108. VServer 【read】 The VServer plugin collects information about the virtual servers running on a system,
  109. Wireless 【read】收集无线网卡的信号质量,信号强度,信噪比等信息
  110. Write Graphite 【write】将数据存储到Carbon,Graphite设备的存储层
  111. Write HTTP 【write】 通过http协议发送数据到服务器
  112. Write Kafka 【write】将数据发到 Kafka系统去。
  113. Write Log 【write】将日志写到指定的日志文件中
  114. Write MongoDB 【write】 将收集到的数据写入MongoDB实例
  115. Write Redis 【write】将监控数据写入redis
  116. Write Riemann 【write】将数据写入Riemann
  117. Write Sensu 【write】将数据发送给Sensu Core
  118. Write TSDB 【write】将数据写入OpenTSDB
  119. XMMS 【read】从XMMS music player 上采集数据
  120. ARC 【read】收集Zeta File-System (ZFS)文件系统上的Adaptive Replacement Cache (ARC)信息
  121. zookeeper 【read】The zookeeper plugin will collect statistics from a Zookeeper server using the mntr command. It requires Zookeeper 3.4.0+ and access to the client port.

The Swap plugin collects the amount of memory currently written onto hard disk or whatever the system calls “swap”.

3、Interface 插件

网络流量监控

3.1、包含的监控日志文件

  • if_errors-2016-08-09 错误数据包的数量
  • if_packets-2016-08-09 网络数据包的数量
  • if_octets-2016-08-09 网络字节流量的数据

3.2、文件内容格式

epoch,rx,tx
1470731947.725,27747416,218455279
1470731957.724,27749606,218457472
1470731967.724,27751406,218459986
1470731977.724,27753992,218464430
  • epoch 监控时间点
  • rx 接收(receive)
  • tx 发送(transport)

4、Output类型插件

4.2.1、RRDtool插件

将监控数据写入RRD文件

4.2.2、CSV插件

将监控数据保存成CSV文件

4.3、Log类型插件

4.3.1、LogFile 插件

将collectd运行的日志信息写到指定的文件中或标准输出中

4.3.2、Syslog 插件

将调试和状态信息写入syslog。

results matching ""

    No results matching ""