Top 10 Log Queries in Kibana Every Spring Boot Developer Should Know
Logs make debugging and monitoring Spring Boot applications possible by offering insights into runtime behaviors, errors, and performance trends. While storing logs in Elasticsearch provides a robust backend, Kibana takes the experience a step further by making it easy to query, filter, and visualize logs.
Knowing which queries to run in Kibana can save developers hours while debugging issues or analyzing application health. This guide focuses on the top 10 Kibana log queries every Spring Boot developer should know, covering search by log levels, filtering by trace IDs, keyword searches across fields, and range queries by timestamp.
Table of Contents
- Why Are Kibana Log Queries Essential for Spring Boot Developers?
- Searching Logs by Log Level and Exception Type
- Filtering Logs by Trace ID
- Performing Keyword Searches Across Fields
- Using Range Queries by Timestamp
- Other Must-Know Kibana Queries for Developers
- Summary
Why Are Kibana Log Queries Essential for Spring Boot Developers?

Debugging and monitoring Spring Boot microservices involves sifting through large volumes of log data generated by one or more services. Mastering Kibana queries gives developers the ability to:
- Isolate Errors Quickly: Spot problematic log entries or exceptions without scrolling through hundreds of lines of logs.
- Trace Requests Across Services: Combine trace and span IDs to follow logs across microservices and identify where a request failed or slowed down.
- Analyze Patterns: Find patterns of recurring errors, latency spikes, or drop-offs in user interactions.
- Optimize Performance: Detect slow endpoints or bottlenecks by correlating logs with response times.
With these benefits in mind, let’s explore practical queries that every Spring Boot developer should add to their toolkit.
Searching Logs by Log Level and Exception Type
Why It Matters:
Log levels (INFO, WARN, ERROR) are core to understanding the severity of issues. For example, digging into ERROR
logs provides details about application crashes, while WARN
logs might reveal early indicators of a problem.
Common Query 1. Filter Logs by Level
This query fetches all logs of a specific level:
log.level:"ERROR"
Use Case: Investigate failed database connections or external API errors in your Spring Boot app.
Query 2. Filter by Log Level and Service
When working with distributed services, limit results to a specific service:
log.level:"ERROR" AND serviceName:"order-service"
Example: Identify errors happening only in the order-service
rather than combing through logs from unrelated services.
Query 3. Search for Specific Exceptions
To search for exceptions (e.g., NullPointerException), use:
exception.type:"NullPointerException"
Pro Tip: Combine exception type and log level to zero in on specific outcomes:
log.level:"ERROR" AND exception.type:"IllegalArgumentException"
Filtering Logs by Trace ID
Why It Matters:
Trace IDs in Spring Boot (provided by Spring Cloud Sleuth) link logs from different services, showing how requests travel across microservices. This is crucial for debugging distributed systems.
Query 4. Find Logs for a Specific Trace ID
To isolate all logs related to a single request:
traceId:"123abc456def"
Example: When an API request times out, run a query for its corresponding traceId
to see the sequence of service interactions and where the delay occurred.
Query 5. Combine Trace ID with Additional Filters
To refine results further, pair traceId
with conditions:
traceId:"123abc456def" AND log.level:"ERROR"
This narrows down the results to only error logs within the request flow.
Pro Tip: Implement MDC logging in Spring Boot to ensure each trace includes application-specific details, such as username or custom attributes.
Performing Keyword Searches Across Fields
Why It Matters:
Kibana enables keyword matching to quickly extract relevant logs containing specific terms. This is especially helpful when you need to track logs for certain endpoints, query parameters, or error keywords.
Query 6. Search for Logs Containing Specific Text
Use generic text matching to target logs of interest:
message:"user updated profile"
Example: Track every time a user updates their profile in your Spring Boot application.
Query 7. Search Specific Fields for Keywords
Instead of broad searches, limit the query scope to one field:
endpoint.keyword:"/checkout"
Use Case: Monitor activity logs for critical paths, such as POST /checkout
or GET /orders
.
Query 8. Wildcard Search
For partial matches:
message:*timeout*
Fetches logs where messages include words like “timeout” or “timeouts”.
Pro Tip: Avoid overusing wildcards on large indices as they can slow down queries.
Using Range Queries by Timestamp
Why It Matters:
Logs are typically time-stamped, making ranges pivotal for understanding when issues occurred. Use timestamps to isolate event spikes during specific periods (e.g., maintenance windows or peak traffic hours).
Query 9. Filter Logs by Time Range
To fetch logs for a specific range:
@timestamp:["2025-06-13T08:00:00" TO "2025-06-13T10:00:00"]
Use Case: Check logs for a two-hour window when an incident was reported.
Query 10. Find Logs from the Last 15 Minutes
For real-time debugging:
@timestamp:[now-15m TO now]
This query shows current logs, making it perfect for live monitoring during deployments or investigating sudden spikes.
Pro Tip: Use Kibana’s relative time filter (e.g., “Last 15 minutes”) for an interactive way to adjust ranges.
Other Must-Know Kibana Queries for Developers
Here are a few additional queries that can enhance debugging:
Find Logs Matching Custom Fields
If your logs include custom fields like environment
or region
, query them directly:
environment:"production" AND region:"us-west"
Detect Frequent Errors
To catch repetitive issues:
log.level:"ERROR" AND message.keyword:"Database connection failed"
Combine Multiple Filters
Mix different filters to pinpoint exact conditions:
traceId:"123abc456" AND log.level:"ERROR" AND endpoint:"/checkout"
Summary
Efficiently querying Spring Boot logs in Kibana can drastically improve debugging speed, system observability, and developer productivity. Here’s a recap of the top Kibana log queries:
- Log Level and Exception Type: Narrow logs by severity or specific error types.
- Trace ID Filtering: Analyze request flows across microservices.
- Keyword Searches: Locate logs using specific terms or fields.
- Range Queries: Focus on logs from defined time intervals.
By mastering these Kibana queries and combining them with visualizations and dashboards, Spring Boot developers can unlock a whole new level of application insight. Start leveraging these techniques in your next debugging session and transform your log analysis today!