Building Queries and Filters to Search and Narrow Down Data

Welcome to the 'Building Queries and Filters to Search and Narrow Down Data' course on Kibana! In this course, we will explore how to effectively use queries and filters to search and narrow down data in Kibana.

Introduction to Kibana

Kibana is an open-source data visualization and exploration tool that works seamlessly with Elasticsearch, a distributed search and analytics engine. It provides a user-friendly interface to interact with data stored in Elasticsearch and enables users to perform advanced searches, create interactive visualizations, and build dashboards.

Understanding Queries

Queries in Kibana allow you to search and retrieve specific data from your Elasticsearch index. You can think of a query as a question you ask Elasticsearch, and it will respond with the data that matches your query criteria. Kibana supports a wide range of query types, including simple queries, match queries, range queries, and more.

To build queries in Kibana, you can leverage either the Query DSL (Domain Specific Language) or use the Query Bar in the Kibana UI. The Query DSL is a JSON-based language that allows you to construct complex queries programmatically. On the other hand, the Query Bar provides a user-friendly interface to build queries using a query language known as Lucene Query Syntax.

Using Filters to Narrow Down Data

While queries are useful for searching specific data, filters in Kibana help narrow down the data based on certain criteria. Filters work by excluding documents that do not match the specified criteria, allowing you to focus on a subset of data that is of interest.

There are various types of filters available in Kibana, such as term filters, range filters, bool filters, and more. You can apply multiple filters simultaneously to further refine your search and get precise results.

By combining queries and filters in Kibana, you can create powerful searches that retrieve only the data you need.

Building Queries and Filters in Kibana

Now let's explore how to build queries and filters in Kibana:

  1. Using the Query Bar:

    • Open Kibana and navigate to the Discover tab.
    • In the Query Bar, you can enter your search criteria using Lucene Query Syntax. For example, status:success AND response_code:[200 TO 399].
    • Press Enter or click the search button to execute the query and retrieve matching results.
  2. Using the Filters:

    • In the Discover tab, you will find a list of available fields on the left-hand side.
    • Select a field that you want to filter on, such as response_code.
    • Kibana will automatically create a filter based on the selected field. You can customize the filter criteria, such as selecting a specific value or defining a range.
    • Apply the filter, and the results will be narrowed down based on the applied filter.
  3. Using the Query DSL:

    • In Kibana, navigate to the Dev Tools tab.
    • Write your query using the Query DSL. For example: GET /my_index/_search { "query": { "bool": { "must": [ { "match": { "status": "success" } }, { "range": { "response_code": { "gte": 200, "lte": 399 } } } ] } } }
    • Execute the query, and the matching documents will be displayed in the response.


Building queries and filters is crucial to effectively search and narrow down data in Kibana. By mastering these techniques, you can gain valuable insights from your data and create meaningful visualizations and dashboards. Keep practicing, and soon you'll become proficient in leveraging queries and filters to uncover hidden patterns and trends in your data. Happy exploring!

noob to master © copyleft