- A Cloud Guru
Collecting Application Metrics with Prometheus
Prometheus exporters allow you to collect metric data from a variety of sources. You can monitor not only your servers but also the applications running on your servers. In this lab, you will have the opportunity to explore application monitoring in Prometheus by setting up monitoring for an application process and pulling application metric data into a Prometheus server.
Table of Contents
Install and Configure the Apache Exporter
Log in to the Apache server.
Create a user for the Apache exporter:
sudo useradd -M -r -s /bin/false apache_exporter
Download and install the Apache exporter binary:
tar xvfz apache_exporter-0.7.0.linux-amd64.tar.gz
sudo cp apache_exporter-0.7.0.linux-amd64/apache_exporter /usr/local/bin/
sudo chown apache_exporter:apache_exporter /usr/local/bin/apache_exporter
systemdunit file for Apache exporter:
sudo vi /etc/systemd/system/apache_exporter.service
[Unit] Description=Prometheus Apache Exporter Wants=network-online.target After=network-online.target [Service] User=apache_exporter Group=apache_exporter Type=simple ExecStart=/usr/local/bin/apache_exporter [Install] WantedBy=multi-user.target
Start and enable the
sudo systemctl enable apache_exporter
sudo systemctl start apache_exporter
Verify the service is running and that it is serving metrics:
sudo systemctl status apache_exporter
Configure Prometheus to Scrape Metrics from the Apache Exporter
Log in to the Prometheus server.
Edit the Prometheus config:
sudo vi /etc/prometheus/prometheus.yml
scrape_configssection, add a scrape configuration for the Apache exporter:
- job_name: 'Apache Server' static_configs: - targets: ['limedrop-apache:9117']
Restart Prometheus to load the new configuration:
sudo systemctl restart prometheus
Use the expression browser to verify you can see Apache metrics in Prometheus. You can access expression browser in a web browser at
Run a query to view some Apache metric data:
What's a lab?
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.