Creating Markdown Visualizations with the Time Series Visual Builder (TSVB) in Kibana 7.6

1.5 hours
  • 3 Learning Objectives

About this Hands-on Lab

Sometimes the best way to visualize data is to just read it. Creating Markdown-formatted visualizations from time series data in Kibana is made possible by the TSVB. In this hands-on lab, you will leverage Markdown and Mustache syntax to create easy-to-read and understandable text-based visualizations from time series data.

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Create and Save the Flights Visualization
  1. Create a new Markdown visualization with the TSVB.
  2. Calculate the number of events, label it as "Flights", and give it a variable name of "flights".
  3. Calculate the cardinality of OriginCityName, label it as "Origin Cities", and give it a variable name of "origins".
  4. Calculate the cardinality of DestCityName, label it as "Destination Cities", and give it a variable name of "destinations".
  5. Configure the visualization to display the latest value with 1-day intervals, and do not drop the last bucket.
  6. Configure the Markdown visualization as follows:
So far today, **{{ flights.flights.last.formatted }}** flights have been flown between **{{ origin_cities.origins.last.formatted }}** origin and **{{ destination_cities.destinations.last.formatted }}** destination cities.
  1. Save the visualization as "Flights".
Create and Save the Delayed Flights Visualization
  1. Create a new Markdown visualization with the TSVB.
  2. Calculate the count of events where FlightDelay is true, label it "Delayed Today", and give it a variable name of "delayed_today".
  3. Configure the Delayed Today metric to display the latest value with 1-day intervals, and do not drop the last bucket.
  4. Calculate the count of events with an offset of 1 day where FlightDelay is true, label it "Delayed Yesterday", and give it a variable name of "delayed_yesterday".
  5. Configure the Delayed Yesterday metric to display the last value with 1-day intervals, and do not drop the last bucket.
  6. Configure the Markdown visualization as follows:
### Delayed Flights:

So far today, **{{ delayed_today.delayed_today.last.formatted }}** flights have been delayed compared to **{{ delayed_yesterday.delayed_yesterday.last.formatted }}** delayed flights yesterday.
  1. Save the visualization as "Delayed Flights".
Create and Save the Flights by Carrier Visualization
  1. Create a new Markdown visualization.
  2. Calculate the number of flights, label it "Flights", and give it a variable name of "flights".
  3. Group Flights by the top 10 of Carrier, ordered by the number of flights in descending order.
  4. Configure the visualization to display the latest value with 1-day intervals, and do not drop the last bucket.
  5. Configure the Markdown visualization as follows:
Here are the flights broken down by carrier for the day so far:

{{#each _all}}
- **{{ label}}**: {{ flights.last.raw }}
{{/each}}
  1. Save the visualization as "Flights by Carrier" with the TSVB.

Additional Resources

You work as a data analyst for a local airport. You've been tasked with creating the following TSVB Markdown visualizations in Kibana to be used in flight monitoring dashboards:

Flights

  • Calculate the number of events, label it as "Flights", and give it a variable name of "flights".
  • Calculate the cardinality of OriginCityName, label it as "Origin Cities", and give it a variable name of "origins".
  • Calculate the cardinality of DestCityName, label it as "Destination Cities", and give it a variable name of "destinations".
  • Configure the visualization to display the latest value with 1-day intervals, and do not drop the last bucket.
  • Configure the Markdown visualization as follows:
So far today, **{{ flights.flights.last.formatted }}** flights have been flown between **{{ origin_cities.origins.last.formatted }}** origin and **{{ destination_cities.destinations.last.formatted }}** destination cities.

Delayed Flights

  • Calculate the count of events where FlightDelay is true, label it "Delayed Today", and give it a variable name of "delayed_today".
  • Configure the Delayed Today metric to display the latest value with 1-day intervals, and do not drop the last bucket.
  • Calculate the count of events with an offset of 1 day, where FlightDelay is true, label it "Delayed Yesterday", and give it a variable name of "delayed_yesterday".
  • Configure the Delayed Yesterday metric to display the last value with 1-day intervals, and do not drop the last bucket.
  • Configure the Markdown visualization as follows:
### Delayed Flights:

So far today, **{{ delayed_today.delayed_today.last.formatted }}** flights have been delayed compared to **{{ delayed_yesterday.delayed_yesterday.last.formatted }}** delayed flights yesterday.

Flights by Carrier

  • Calculate the number of flights, label it "Flights", and give it a variable name of "flights".
  • Group Flights by the top 10 of Carrier, ordered by the number of flights in descending order.
  • Configure the visualization to display the latest value with 1-day intervals, and do not drop the last bucket.
  • Configure the Markdown visualization as follows:
Here are the flights broken down by carrier for the day so far:

{{#each _all}}
- **{{ label}}**: {{ flights.last.raw }}
{{/each}}

Your lab node has a Kibana instance, which can be accessed in your local web browser by navigating to the public IP address of the lab node over port 8080 (example: http://public_ip:8080). To log in, use the elastic user with the password elastic_acg.

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?