Working with Prometheus Queries

30 minutes
  • 2 Learning Objectives

About this Hands-on Lab

Once you have begun collecting metric data in Prometheus, you will need to be able to work with that data in order to obtain information you can act upon. Prometheus provides a specialized query language known as Prometheus Query Language (PromQL) that allows you to write both simple and complex queries in order to retrieve and view your metric data in a useful way. In this hands-on lab, you will have the opportunity to work with Prometheus queries by writing and executing some simple queries.

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Get the Current Memory Usage for the LimeDrop Authentication Service
  1. Access the Prometheus expression browser in a web browser (replacing <PROMETHEUS_SERVER_PUBLIC_IP> with the public IP address of the Prometheus server):

    http://<PROMETHEUS_SERVER_PUBLIC_IP>:9090
  2. Run a query to obtain the available memory amount. Supply a label to search specifically for metrics for the limedrop-auth:4455 instance.

    mem_available_total{instance="limedrop-auth:4455"}
  3. Log in to the Prometheus server and open the output file:

    vi /home/cloud_user/auth_service_data.md
  4. Enter the current available memory on the mem_available_total line.

Get the available memory range data over a five-minute period three minutes ago.
  1. Run a query in the expression browser to obtain the data:

    mem_available_total{instance="limedrop-auth:4455"}[5m] offset 3m
  2. Copy the output, including the timestamps.

  3. On the Prometheus server, open the output file:

    vi /home/cloud_user/auth_service_data.md
  4. Paste in the data at the end of the file.

Additional Resources

Your company, LimeDrop, has a Prometheus instance that is used to monitor a variety of infrastructure components. One of these components Prometheus monitors is an authentication service. A few users have reported issues with authentication since the last deployment.

You have been asked to provide some data about the authentication service to the developers as part of the troubleshooting process. Use Prometheus queries to obtain the requested information and save it in a file on the Prometheus server located at /home/cloud_user/auth_service_data.md.

  • The developers suspect poor memory performance may possibly be causing the issues. Collect the current available memory using the metric mem_available_total. Note there may be multiple instances that have data associated with this metric name, so you will need to look for the specific instance called limedrop-auth:4455.
  • Information about the current available memory may not be enough to pinpoint the problem. The developers would also like a range of data from the time period when the issue last occurred. The issue just occurred again three minutes ago. Get the values for mem_available_total from the limedrop-auth:4455 instance, but this time get all of the values for a five-minute period starting three minutes ago.

What are Hands-on Labs

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.

Sign In
Welcome Back!

Psst…this one if you’ve been moved to ACG!

Get Started
Who’s going to be learning?