Search code examples
elasticsearchkibanametricbeatelk

How to activate diskio variables in metricbeat?


I am trying to get data from virtual machines using metricbeat in a ELK environment (Elasticsearch, Logstash and Kibana environment), but unfortunately I could not to get data related with "system.diskio".

The error message that I receive from Kibana is: "This field is present in your Elasticsearch mapping but not in the 500 documents shown in the doc table. You may still be able to visualize or search on it." (See image).

Other variables like cpu, memory, process, etc have been obtained, but variables related with system.diskio has not been possible.

I have been looking in web about this error but the information is not clear and I don't know where to start. Do you have any idea about it?

Virtual machine:

  1. Distributor ID: Ubuntu
  2. Description: Ubuntu 16.04.6 LTS
  3. Release: 16.04
  4. Codename: xenial

Thanks in advance.

enter image description here


Solution

  • Its very simple you just need to make changes in your configuration file i.e system.yml

    location of file is: /etc/metricbeat/modules.d/system.yml, in this file you will find "metricsets" heading and you just need to un-comment the diskio line. For your reference i am posting an example here:

    • module: system

      period: 10s

      metricsets:

      • cpu
      • load
      • memory
      • network
      • process
      • process_summary
      • socket_summary
      • core
      • diskio
      • socket

    After making the changes to the configuration file just restart your metricbeat service and you are done, hope this will be helpfull for you.