telegraf/plugins/inputs/zfs
Cameron Sparr 4f5f6761f3 Update gopsutil dependency
closes #656
2016-03-22 09:13:31 -06:00
..
README.md
zfs.go
zfs_test.go

README.md

Telegraf plugin: zfs

Get ZFS stat from /proc/spl/kstat/zfs

Measurements

Meta:

  • tags: pools=POOL1::POOL2

Measurement names:

  • arcstats_hits
  • arcstats_misses
  • arcstats_demand_data_hits
  • arcstats_demand_data_misses
  • arcstats_demand_metadata_hits
  • arcstats_demand_metadata_misses
  • arcstats_prefetch_data_hits
  • arcstats_prefetch_data_misses
  • arcstats_prefetch_metadata_hits
  • arcstats_prefetch_metadata_misses
  • arcstats_mru_hits
  • arcstats_mru_ghost_hits
  • arcstats_mfu_hits
  • arcstats_mfu_ghost_hits
  • arcstats_deleted
  • arcstats_recycle_miss
  • arcstats_mutex_miss
  • arcstats_evict_skip
  • arcstats_evict_l2_cached
  • arcstats_evict_l2_eligible
  • arcstats_evict_l2_ineligible
  • arcstats_hash_elements
  • arcstats_hash_elements_max
  • arcstats_hash_collisions
  • arcstats_hash_chains
  • arcstats_hash_chain_max
  • arcstats_p
  • arcstats_c
  • arcstats_c_min
  • arcstats_c_max
  • arcstats_size
  • arcstats_hdr_size
  • arcstats_data_size
  • arcstats_meta_size
  • arcstats_other_size
  • arcstats_anon_size
  • arcstats_anon_evict_data
  • arcstats_anon_evict_metadata
  • arcstats_mru_size
  • arcstats_mru_evict_data
  • arcstats_mru_evict_metadata
  • arcstats_mru_ghost_size
  • arcstats_mru_ghost_evict_data
  • arcstats_mru_ghost_evict_metadata
  • arcstats_mfu_size
  • arcstats_mfu_evict_data
  • arcstats_mfu_evict_metadata
  • arcstats_mfu_ghost_size
  • arcstats_mfu_ghost_evict_data
  • arcstats_mfu_ghost_evict_metadata
  • arcstats_l2_hits
  • arcstats_l2_misses
  • arcstats_l2_feeds
  • arcstats_l2_rw_clash
  • arcstats_l2_read_bytes
  • arcstats_l2_write_bytes
  • arcstats_l2_writes_sent
  • arcstats_l2_writes_done
  • arcstats_l2_writes_error
  • arcstats_l2_writes_hdr_miss
  • arcstats_l2_evict_lock_retry
  • arcstats_l2_evict_reading
  • arcstats_l2_free_on_write
  • arcstats_l2_cdata_free_on_write
  • arcstats_l2_abort_lowmem
  • arcstats_l2_cksum_bad
  • arcstats_l2_io_error
  • arcstats_l2_size
  • arcstats_l2_asize
  • arcstats_l2_hdr_size
  • arcstats_l2_compress_successes
  • arcstats_l2_compress_zeros
  • arcstats_l2_compress_failures
  • arcstats_memory_throttle_count
  • arcstats_duplicate_buffers
  • arcstats_duplicate_buffers_size
  • arcstats_duplicate_reads
  • arcstats_memory_direct_count
  • arcstats_memory_indirect_count
  • arcstats_arc_no_grow
  • arcstats_arc_tempreserve
  • arcstats_arc_loaned_bytes
  • arcstats_arc_prune
  • arcstats_arc_meta_used
  • arcstats_arc_meta_limit
  • arcstats_arc_meta_max
  • zfetchstats_hits
  • zfetchstats_misses
  • zfetchstats_colinear_hits
  • zfetchstats_colinear_misses
  • zfetchstats_stride_hits
  • zfetchstats_stride_misses
  • zfetchstats_reclaim_successes
  • zfetchstats_reclaim_failures
  • zfetchstats_streams_resets
  • zfetchstats_streams_noresets
  • zfetchstats_bogus_streams
  • vdev_cache_stats_delegations
  • vdev_cache_stats_hits
  • vdev_cache_stats_misses

Description

arcstats_hits
  Total amount of cache hits in the arc.

arcstats_misses
  Total amount of cache misses in the arc.

arcstats_demand_data_hits
  Amount of cache hits for demand data, this is what matters (is good) for your application/share.

arcstats_demand_data_misses
  Amount of cache misses for demand data, this is what matters (is bad) for your application/share.

arcstats_demand_metadata_hits
  Ammount of cache hits for demand metadata, this matters (is good) for getting filesystem data (ls,find,…)

arcstats_demand_metadata_misses
  Ammount of cache misses for demand metadata, this matters (is bad) for getting filesystem data (ls,find,…)

arcstats_prefetch_data_hits
  The zfs prefetcher tried to prefetch somethin, but it was allready cached (boring)

arcstats_prefetch_data_misses
  The zfs prefetcher prefetched something which was not in the cache (good job, could become a demand hit in the future)

arcstats_prefetch_metadata_hits
  Same as above, but for metadata

arcstats_prefetch_metadata_misses
  Same as above, but for metadata

arcstats_mru_hits
  Cache hit in the “most recently used cache”, we move this to the mfu cache.

arcstats_mru_ghost_hits
  Cache hit in the “most recently used ghost list” we had this item in the cache, but evicted it, maybe we should increase the mru cache size.

arcstats_mfu_hits
  Cache hit in the “most freqently used cache” we move this to the begining of the mfu cache.

arcstats_mfu_ghost_hits
  Cache hit in the “most frequently used ghost list” we had this item in the cache, but evicted it, maybe we should increase the mfu cache size.

arcstats_allocated
  New data is written to the cache.

arcstats_deleted
  Old data is evicted (deleted) from the cache.

arcstats_evict_l2_cached
  We evicted something from the arc, but its still cached in the l2 if we need it.

arcstats_evict_l2_eligible
  We evicted something from the arc, and its not in the l2 this is sad. (maybe we hadnt had enough time to store it there)

arcstats_evict_l2_ineligible
  We evicted something which cannot be stored in the l2.
  Reasons could be:
  We have multiple pools, we evicted something from a pool whithot an l2 device.
  The zfs property secondarycache.

arcstats_c
  Arc target size, this is the size the system thinks the arc should have.

arcstats_size
  Total size of the arc.

arcstats_l2_hits
  Hits to the L2 cache. (It was not in the arc, but in the l2 cache)

arcstats_l2_misses
  Miss to the L2 cache. (It was not in the arc, and not in the l2 cache)

arcstats_l2_size
  Size of the l2 cache.

arcstats_l2_hdr_size
  Size of the metadata in the arc (ram) used to manage (lookup if someting is in the l2) the l2 cache.



zfetchstats_hits
  Counts the number of cache hits, to items wich are in the cache because of the prefetcher.

zfetchstats_colinear_hits
  Counts the number of cache hits, to items wich are in the cache because of the prefetcher (prefetched linear reads)

zfetchstats_stride_hits
  Counts the number of cache hits, to items wich are in the cache because of the prefetcher (prefetched stride reads)



vdev_cache_stats_hits
  Hits to the vdev (device level) cache.

vdev_cache_stats_misses
  Misses to the vdev (device level) cache.

Default config

[zfs]
  # ZFS kstat path
  # If not specified, then default is:
  # kstatPath = "/proc/spl/kstat/zfs"
  #
  # By default, telegraf gather all zfs stats
  # If not specified, then default is:
  # kstatMetrics = ["arcstats", "zfetchstats", "vdev_cache_stats"]