collectd
collectd is a system statistics daemon that collects operating system performance metrics.
collectd can be configured to stream data into ATSD via TCP or UDP protocol using the write_atsd
plugin.
See the write_atsd
plugin documentation for details.
Installation
14.04
Ubuntu Download package
wget https://github.com/axibase/atsd-collectd-plugin/releases/download/5.7.2-7/collectd_ubuntu_14.04_amd64.deb
Install package
sudo dpkg -i collectd_ubuntu_14.04_amd64.deb
16.04
Ubuntu Download package
wget https://github.com/axibase/atsd-collectd-plugin/releases/download/5.7.2-7/collectd_ubuntu_16.04_amd64.deb
Install package
sudo dpkg -i collectd_ubuntu_16.04_amd64.deb
CentOS 6.x and RHEL 6.x
Download package
curl -L --output collectd.rpm \
https://github.com/axibase/atsd-collectd-plugin/releases/download/5.7.2-7/collectd_rhel_6_amd64.rpm
Install package
sudo yum install collectd.rpm
CentOS 7.x and RHEL 7.x
Download package
curl -L --output collectd.rpm \
https://github.com/axibase/atsd-collectd-plugin/releases/download/5.7.2-7/collectd_rhel_7_amd64.rpm
Install collectd with utility for managing SELinux policies
sudo yum install collectd.rpm policycoreutils-python
Persist updated SELinux policy to allow TCP connections for collectd
setsebool -P collectd_tcp_network_connect on
Configuration
Edit the /etc/collect.conf
file which contains data collection settings.
Modify AtsdUrl
field by specifying the target ATSD host name or IP address.
Modify the protocol, TCP or UDP, and the port number, if necessary, for example:
...
<Plugin write_atsd>
<Node "atsd">
AtsdUrl "tcp://192.0.2.106:8081"
...
</Node>
</Plugin>
...
AtsdUrl "tcp://atsd.example.org:8081"
AtsdUrl "udp://192.0.2.106:8082"
Plugin Settings
Setting | Description |
---|---|
AtsdUrl | [Required] Protocol to transfer data: tcp or udp Hostname and port of the target ATSD server. Default ports: 8081 TCP, 8082 UDP. Default: tcp://192.0.2.106:8081 |
Entity | Default entity under which all metrics are stored. By default (if setting is left commented out), entity is set to the server hostname. Default: hostname |
ShortHostname | Convert entity from fully qualified domain name to short name Default: false |
Prefix | Metric prefix to group collectd metrics Default: collectd |
Cache | Name of read plugins whose metrics are cached. Cache feature is used to save disk space in the database by not resending the same values. |
Interval | Time in seconds during which values within the threshold are not sent. Default: - |
Threshold | Deviation threshold, in %, from the previously sent value. If threshold is exceeded, then the value is sent regardless of the cache interval. Default: - |
StoreRates | If set to true , convert counter values to rates. If set to false counter values are stored without changes, for example, as an increasing integer number. Default: true |
More information about collectd configuration is provided in collectd.conf.5 manual page.
Auto-Start
Enable auto-start for the collectd-axibase
service.
On Ubuntu 14.04
:
sudo update-rc.d collectd-axibase defaults 90 10
On CentOS 6.x
and RHEL 6.x
:
sudo chkconfig --add collectd-axibase
On Ubuntu 16.04
, CentOS 7.x
and RHEL 7.x
sudo systemctl enable collectd-axibase
Manual Start
sudo service collectd-axibase start
sudo service collectd-axibase status
collectd Portal
Launch live collectd
Portal in Axibase Chart Lab.
Collected Metrics
collectd.aggregation.cpu.idle
collectd.aggregation.cpu.interrupt
collectd.aggregation.cpu.nice
collectd.aggregation.cpu.softirq
collectd.aggregation.cpu.steal
collectd.aggregation.cpu.system
collectd.aggregation.cpu.user
collectd.aggregation.cpu.wait
collectd.contextswitch.contextswitch
collectd.cpu.cpu.busy
collectd.cpu.cpu.idle
collectd.cpu.cpu.interrupt
collectd.cpu.cpu.nice
collectd.cpu.cpu.softirq
collectd.cpu.cpu.steal
collectd.cpu.cpu.system
collectd.cpu.cpu.user
collectd.cpu.cpu.wait
collectd.df.df_complex.free
collectd.df.df_complex.reserved
collectd.df.df_complex.used
collectd.df.df_inodes.free
collectd.df.df_inodes.reserved
collectd.df.df_inodes.used
collectd.df.percent_bytes.free
collectd.df.percent_bytes.reserved
collectd.df.percent_bytes.used
collectd.df.percent_bytes.used_reserved
collectd.df.percent_inodes.free
collectd.df.percent_inodes.reserved
collectd.df.percent_inodes.used
collectd.disk.disk_io_time.io_time
collectd.disk.disk_io_time.weighted_io_time
collectd.disk.disk_merged.read
collectd.disk.disk_merged.write
collectd.disk.disk_octets.read
collectd.disk.disk_octets.write
collectd.disk.disk_ops.read
collectd.disk.disk_ops.write
collectd.disk.disk_time.read
collectd.disk.disk_time.write
collectd.disk.pending_operations
collectd.entropy.entropy
collectd.interface.if_dropped.rx
collectd.interface.if_dropped.tx
collectd.interface.if_errors.rx
collectd.interface.if_errors.tx
collectd.interface.if_octets.rx
collectd.interface.if_octets.tx
collectd.interface.if_packets.rx
collectd.interface.if_packets.tx
collectd.load.load.longterm
collectd.load.load.midterm
collectd.load.load.shortterm
collectd.memory.memory.buffered
collectd.memory.memory.cached
collectd.memory.memory.free
collectd.memory.memory.slab_recl
collectd.memory.memory.slab_unrecl
collectd.memory.memory.used
collectd.processes.fork_rate
collectd.processes.ps_state.blocked
collectd.processes.ps_state.paging
collectd.processes.ps_state.running
collectd.processes.ps_state.sleeping
collectd.processes.ps_state.stopped
collectd.processes.ps_state.zombies
collectd.swap.swap.cached
collectd.swap.swap.free
collectd.swap.swap.used
collectd.swap.swap_io.in
collectd.swap.swap_io.out
collectd.uptime.uptime
collectd.users.users
collectd.vmem.vmpage_action.dirtied
collectd.vmem.vmpage_action.written
collectd.vmem.vmpage_faults.majflt
collectd.vmem.vmpage_faults.minflt
collectd.vmem.vmpage_io.memory.in
collectd.vmem.vmpage_io.memory.out
collectd.vmem.vmpage_io.swap.in
collectd.vmem.vmpage_io.swap.out
collectd.vmem.vmpage_number.active_anon
collectd.vmem.vmpage_number.active_file
collectd.vmem.vmpage_number.anon_pages
collectd.vmem.vmpage_number.anon_transparent_hugepages
collectd.vmem.vmpage_number.bounce
collectd.vmem.vmpage_number.dirty
collectd.vmem.vmpage_number.dirty_background_threshold
collectd.vmem.vmpage_number.dirty_threshold
collectd.vmem.vmpage_number.file_pages
collectd.vmem.vmpage_number.free_cma
collectd.vmem.vmpage_number.free_pages
collectd.vmem.vmpage_number.inactive_anon
collectd.vmem.vmpage_number.inactive_file
collectd.vmem.vmpage_number.isolated_anon
collectd.vmem.vmpage_number.isolated_file
collectd.vmem.vmpage_number.kernel_stack
collectd.vmem.vmpage_number.mapped
collectd.vmem.vmpage_number.mlock
collectd.vmem.vmpage_number.page_table_pages
collectd.vmem.vmpage_number.shmem
collectd.vmem.vmpage_number.shmem_hugepages
collectd.vmem.vmpage_number.shmem_pmdmapped
collectd.vmem.vmpage_number.slab_reclaimable
collectd.vmem.vmpage_number.slab_unreclaimable
collectd.vmem.vmpage_number.unevictable
collectd.vmem.vmpage_number.unstable
collectd.vmem.vmpage_number.vmscan_immediate_reclaim
collectd.vmem.vmpage_number.vmscan_write
collectd.vmem.vmpage_number.writeback
collectd.vmem.vmpage_number.writeback_temp
collectd.vmem.vmpage_number.zone_active_anon
collectd.vmem.vmpage_number.zone_active_file
collectd.vmem.vmpage_number.zone_inactive_anon
collectd.vmem.vmpage_number.zone_inactive_file
collectd.vmem.vmpage_number.zone_unevictable
collectd.vmem.vmpage_number.zone_write_pending
collectd.vmem.vmpage_number.zspages