Metricbeat with Apache Virtual Host

HI,

I am attempting to monitor 2 web servers that run apache with a virtual host.

When I open the Kibana Apache HTTPD server status dashboard, I get the familiar error of Saved" field" parameters is now invalid. Please select a new field and Visualize: "Field is now a required parameter.

I had this same error when installing filebeat. I was able to solve this issue by enabling all of the monitoring services in the filebeat.conf file.

This knowledge leads be to believe Metric beat cannot find the appropriate data from the apache server.
I ensured the apache Server status page was enabled in the Apache configuration file.
I was unable to navigate to that apache service status page. I think this is related to the website being hosted on a virtual host. The virtual host is a requirement that I can not avoid.

Has anyone been able to monitor metrics on an apache virtual host?

Thank you,
-A

Do you have something like this in your metricbeat config?

metricbeat.modules:

  • module: apache
    metricsets: ["status"]
    enabled: true
    period: 10s

    Apache hosts

    hosts: ["http://127.0.0.1"]

Hi Karn,

Below you will find both configuration modules within the metricbeat.yml file.

Please advise if the configurations are correct. I am able to see the metricbeat system overview dashboard in Kibana for the instance/server associated with the Apache webserver module. This tells me that the Metricbeat service is passing metric logs into elasticsearch, and being visualized in Kibana.

The Saved" field" parameters is now invalid. Please select a new field and Visualize: "Field is now a required parameter errors show in the in the Apache HTTPD server status dashboard for that same instance.

Username and password configurations I left commented out... I don't think that is applicable for my system. RHEL7

I was thinking it may have to do with the Apache Host needs to specify it is a Virtual Host on port 8090.

Please Advise,
-A

#========================== Modules configuration ============================
metricbeat.modules:

#------------------------------- Apache Module -------------------------------

  • module: apache
    metricsets: ["status"]
    enabled: true
    period: 10s

    Apache hosts

    hosts: ["http://127.0.0.1"]

    Path to server status. Default server-status

    server_status_path: "server-status"

    Username of hosts. Empty by default

    #username: test

    Password of hosts. Empty by default

    #password: test123

#------------------------------- System Module -------------------------------

  • module: system
    metricsets:

    CPU stats

    • cpu

    System Load stats

    • load

    Per CPU core stats

    • core

    IO stats

    • diskio

    Per filesystem stats

    • filesystem

    File system summary stats

    • fsstat

    Memory stats

    • memory

    Network stats

    • network

    Per process stats

    • process

    Sockets (linux only)

    • socket
      enabled: true
      period: 10s
      processes: ['.*']

This is all in AWS RHEL7 OS - The Server status page is turned off by default. I needed to enable it by altering the Apache configuration file. I followed this guide: http://www.tecmint.com/monitor-apache-web-server-load-and-page-statistics/

This page clearly states that this will not work with an Apache Virtual Host. Unfortunately it does not link to an article on how to enable the Server-Status page with a virtual host. I have not found any documentation on how to enable this.

Thank you,
-A

Just below the note, it states that you need to enabled it for each virtual host. Didn't try it, but that should work.

1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.