View General Health

Honeycomb’s Home area provides a snapshot of your dataset. Home displays visualizations of some commonly-used queries and breakdowns, and an overview of your most recent traces and events. Both can be used as a jumping-off point to explore your data.

Use this view to become familiar with key system metrics and to check on the health of your systems.

Visualizations by Data Type 

Home lets you visualize the data in your dataset in different ways: as trace-specific or log-specific visualizations, and as events in a table.

Trace Visualizations 

The trace view contains these visualizations:

  • Total Traces: Total number of distinct traces or requests that have been sent.
  • Total Spans with Errors: Total number of spans with errors.
  • 95th Percentile Latency: 95th-percentile latency of traces or requests that have been sent.
The visualizations displayed in Honeycomb's Home area on the Traces view. They include total traces, total spans with errors, and 95th percentile latency. For each area, a number visualization is displayed above a chart visualization. The chart visualization has an accompanying dropdown that allows you to group by a field. Beneath the chart visualization, a table displays numeric values related to the data. Above all of the visualizations, there are two dropdowns that allow you to select the dataset and the time window.

You can control the data your visualizations show by:

  • selecting the desired dataset and time window
  • selecting a field to group by (for charts only)

You can access additional settings and data visualization options by selecting Dataset Settings, which controls the current dataset’s settings.

Total Traces 

Both “Total Traces” visualizations display the total number of distinct traces or requests during the selected time window.

The Total Traces visualizations. A number visualization is displayed above a chart visualization. The chart visualization has an accompanying dropdown that allows you to group by a field. Beneath the chart visualization, a table displays numeric values related to the data.

You can separate the data in your chart visualizations into groups, so you can compare data segments. To do so, select from the available fields in the accompanying dropdown. The accompanying table shows values for each group, plus the total number of traces for the given time period.

Note
If your dataset is not a tracing dataset (that is, it does not include trace.trace_id or equivalent), then the chart will not populate. To ensure the visualization is populated, map a source field to the Trace Id dataset field, or send a source field named trace.trace_id to Honeycomb.

Total Spans with Errors 

Both “Total Spans with Errors” visualizations display the total number of spans with errors during the selected time window.

The Total Spans with Errors visualizations. A number visualization is displayed above a chart visualization. The chart visualization has an accompanying dropdown that allows you to group by a field. Beneath the chart visualization, a table displays numeric values related to the data.

You can separate the data in your chart visualizations into groups, so you can compare data segments. To do so, select from the available fields in the accompanying dropdown. The accompanying table shows values for each group, plus the total number of error events for the selected time period.

Note
Both “Total Spans with Errors” visualizations rely on a source field being mapped to the Error dataset field. To ensure both visualizations are populated, configure your dataset definition or send a source field named error to Honeycomb.

95th Percentile Latency 

Both “95th Percentile Latency” visualizations display the 95th-percentile latency of traces or requests that have been sent over the selected time window.

In statistics, a percentile describes how a value compares to other values in the sample. A 95th percentile means that 95% of values in the sample are below that value. 95th percentile latency means that 95% of traces or requests are faster than that threshold value.

The 95th Percentile Latency visualizations. A number visualization is displayed above a chart visualization. The chart visualization has an accompanying dropdown that allows you to group by a field. Beneath the chart visualization, a table displays numeric values related to the data.

You can separate the data in your chart visualizations into groups, so you can compare data segments. To do so, select from the available fields in the accompanying dropdown. The accompanying table shows values for each group, plus the total 95th percentile (p95 Latency) for the given time period.

Note
Both “95th Percentile Latency” visualizations rely on a source field being mapped to the Duration dataset field. To ensure both visualizations are populated, configure your dataset definition or send a source field named duration_ms to Honeycomb.

Grouping Data in Chart Visualizations 

You can quickly compare segments of key data in your chart visualizations by separating your data into groups. Grouping your data by useful fields helps you explore your data and assess the health of your system.

The Total Traces visualization with its Group By menu selected and menu options displaying.

To group your data, select a field from a chart visualization’s accompanying dropdown. Once you have selected a field, the chart visualization’s accompanying table will populate with values for each group. This data can help you answer questions like:

  • What route is erroring the most?
  • What function is erroring the most?
  • What user is sending the most requests?
  • What route takes the longest to process a request?
Recent Traces 

In addition to data visualizations, Home displays an overview of the most recent traces in your dataset or service.

Note
The traces shown are independent of the time frame selected in the time window dropdown at the top of the page.

If you have sent traces into your dataset, the Recent Traces view displays the five traces with the most recent root spans for the selected service.

The Recent Traces table, containing columns for Time, Service name, Root function, Span count, and a Details bar chart that groups spans by name. Selecting a row directs you to the trace waterfall view for the trace.

To inspect the spans in a trace, select the waterfall icon for the row that contains that trace; this will allow you to navigate to the trace’s waterfall diagram.

To see the breakdown of a trace by span name, hover over the Details field in the row that contains that trace.

Logs Visualizations 

The Logs view contains visualizations to help you better understand your log data and to surface signals in the noise.

The visualizations displayed in Honeycomb's Home area on the Logs view. They include total logs, total errors, total warnings, logs by severity, log volume, total events by severity, top messages, total errors by severity, and top errors. Chart and table visualizations have accompanying icons that let you toggle between chart and table view. The top messages table has an accompanying search bar that lets you filter by words in the message. Above all of the visualizations, there are two dropdowns that allow you to group or filter by fields. At the very top of the page, there are two dropdowns that allow you to select the dataset and the time range.
  • Total Logs: Displays the total number of logs received within the selected time range.

  • Total Errors: Displays the total number of logs that contain error or fatal severities within the selected time range.

  • Total Warnings: Displays the total number of logs with warn severities within the selected time range.

  • Logs by Severity: Displays the percent of logs by severity levels within the selected time range. Only standard severities, which include fatal, error, warn, info, trace, debug, and unspecified, are distinctly represented. Other, non-standard severities are bucketed into an Other group.

    Tip
  • Log Volume: Displays a line graph of the log volume within the selected time range.

  • Total Events by Severity: Displays the volume of logs, grouped by severity, within the selected time range. Select the table icon or chart icon to switch between displaying this data as a table or line graph.

    Note
    Non-standard severities are also displayed in this chart.
  • Top Messages: Displays the most frequently occurring log messages within the selected time range. Select the table icon or chart icon to switch between displaying this data as a table or line graph. Enter a string in the search box to filter the body by that string.

  • Total Errors by Severity: Displays the volume of logs where severity is error or fatal, grouped by severity, for the selected time range. Select the table icon or chart icon to switch between displaying this data as a table or line graph.

  • Top Errors: Displays the most frequently occurring errors within the selected time range. Select the table icon or chart icon to switch between displaying this data as a table or line graph. Enter a string in the search box to filter the body by that string.

Grouping & Filtering 

You can slice and dice visualizations in the Logs view by selecting options within the Group by and Filter by dropdowns.

Group By 

Use the Group by dropdown to group all logs visualizations by additional fields.

The Group By dropdown, expanded with its menu options displaying.

To create a group:

  1. From the Group by dropdown, select Customize Groups.
  2. In the modal, for Property, select the field you want to be able to group your data by.
  3. Enter a Display Name, and select Add Field.

Your named group will appear as an option in both the Group by and Filter by dropdowns.

To delete a group:

  1. From the Group by dropdown, select Customize Groups.
  2. In the modal, locate the Existing Fields section.
  3. Locate the group that you want to delete, and select its trash bin icon.
  4. Close the modal.

Your group will no longer appear as an option in the Group by and Filter by dropdowns.

Filter By 

Use the Filter by dropdown to filter all logs visualizations by additional fields.

The Filter By dropdown, expanded with its menu options displaying.

To create a filter:

  1. From the Filter by dropdown, select Customize Filters.
  2. In the modal, for Property, select the field you want to be able to filter your data by.
  3. Enter a Display Name, and select Add Field.

Your named filter will appear as an option in the Filter by and Group by dropdowns.

To delete a filter:

  1. From the Filter by dropdown, select Customize Filters.
  2. In the modal, locate the Existing Fields section.
  3. Locate the filter that you want to delete, and select its trash bin icon.
  4. Close the modal.

Your filter will no longer appear as an option in the Filter by and Group by dropdowns.

To filter by multiple values:

  1. From the Filter by dropdown, select a field you would like to filter by.
  2. Select the values you would like to include for the field.
  3. Repeat for any other fields you would like to filter by.
  4. Select Apply Filters.

Your visualizations will update and will now be restricted by your applied filters.

Chart Actions 

Use chart actions to dig deeper into the insights displayed on Honeycomb Home. Select any point on a line graph or any values in a table to open the action menu.

A visualization with its context menu expanded and its menu options displaying.
View Query 

Each visualization lets you navigate directly to the Query Results page for the underlying query.

To explore a visualization’s underlying query:

  1. Select a point on a chart or a cell in a table.
  2. From the context menu, select View Query.

You will be redirected to the Overview view on the Query Results page for the underlying query.

Investigate with BubbleUp 

Visualizations that are grouped by fields will let you use BubbleUp to explore differences between groups.

To use BubbleUp:

  1. On a grouped visualization, select a point on a chart or a cell in a table.
  2. From the context menu, select Investigate with BubbleUp or Analyze with BubbleUp.

You will be redirected to the BubbleUp view on the Query Results page for the underlying query.

Tip

If BubbleUp does not appear in the context menu, make sure that:

  • you are selecting from a grouped visualization
  • the visualization contains more than one group
  • you are not selecting the Other group in the “Logs by Severity” chart
Filter 

Visualizations that are grouped by fields will let you filter directly by a severity or log message group.

To filter directly by a group:

  1. Select a point on a chart or a cell in a table.
  2. From the context menu, select Filter to this….

Your visualizations will update and will now be restricted by your applied filter.

View Events 

Each visualization lets you navigate directly to selected events.

To explore events:

  1. Select a point on a chart or a cell in a table.
  2. From the context menu, select View Events.

You will be redirected to the Explore Data view on the Query Results page for the selected point.

Explore Data 

The Explore Data view lets you explore all of the events in the dataset.

Configuring Visualizations 

The displayed data visualizations depend on Honeycomb dataset fields being mapped to source fields in your sent data. You can manually map these fields in Dataset Definitions:

  1. From the left sidebar, select Data Settings.
  2. Select the name of your target dataset to access its settings.
  3. Select the Definitions view.
  4. Locate the appropriate Honeycomb Dataset Field, then select the source field in your data that you want to map it to.
  5. Select Update.

Trace Dataset Fields 

You can map the following dataset fields for a selected dataset:

Tip
To allow Honeycomb to detect and map dataset fields automatically, name the data field you send to Honeycomb the value listed in the Source Field Name column.
Dataset Field Description Allowed Type(s) Source Field Name Can Group By?
Error Value that indicates an error occurred. Used to identify errors when calculating the “Total Spans with Errors” visualizations. boolean, string, derived column error Yes
HTTP Status Code Code that indicates the success, failure, or other status of a request. string, integer, derived column response.status_code Yes
Name Name of the function or method in which the span was created. string, integer, derived column name Yes
Duration Length of time the span took in milliseconds (ms). Used to calculate the “95th Percentile Latency” visualizations. float, integer duration_ms or durationMs No
Route HTTP URL or equivalent route processed by the request. string, derived column Not automatically mapped Yes
User User making the request in the system. string, integer, derived column Not automatically mapped Yes

Mapping Trace Dropdown Fields 

Each trace chart visualization’s accompanying dropdown is populated with source fields mapped to Honeycomb dataset fields. You can map your source fields to the selected dataset’s dataset fields using Dataset Definitions.

Dataset fields you can map include:

  • Error: Value that indicates an error occurred.
  • HTTP Status Code: Code that indicates the success, failure, or other status of a request.
  • Name: Name of the function or method in which the span was created.
  • Route: HTTP URL or equivalent route processed by the request.
  • User: User making the request in the system.
Note
Only source fields that have been mapped to dataset fields in dataset definitions appear in the dropdown. To ensure the dropdown includes the source field you want to group by, configure your dataset definitions.

For datasets that include Kubernetes metadata, the following fields are included if available:

  • k8s.pod.name, source.k8s.pod.name, or destination.k8s.pod.name: Name of the Kubernetes pod.
  • k8s.container.name, source.k8s.container.name, or destination.k8s.container.name: Name of the Kubernetes container.
  • k8s.node.name, source.k8s.node.name, or destination.node.name: Name of the Kubernetes node.
  • k8s.namespace.name, source.k8s.namespace.name, or destination.k8s.namespace.name: Name of the Kubernetes namespace.
  • source.k8s.service.name or destination.k8s.service.name: Name of the Kubernetes service.

Learn more about sending Kubernetes data to Honeycomb.

Log Dataset Fields 

You can map the following dataset fields for a selected dataset:

Tip
To allow Honeycomb to detect and map dataset fields automatically, name the data field you send to Honeycomb the value listed in the Source Field Name column.
Dataset Field Description Allowed Type(s) Source Field Name
Log Message Value containing the log event message. May be a human-readable string message (including multiline) describing the event in free form. string, derived column body
Log Severity Severity level of the event (also known as log level). Supported values include: trace, debug, info, warn, error, fatal, and unspecified. string, derived column severity

Mapping Source Severities to Honeycomb Standard Severities 

If the log source data you are sending to Honeycomb contains severities other than the standard log severities expected by Honeycomb (which include info, error, warn, fatal, trace, debug, and unspecified), Honeycomb visualizations that depend on severity may not populate. To solve this issue, use a Derived Column to map any non-standard severities to Honeycomb standard log severities.

Scenario:

You have a source field named my.severity that contains values of a, b, c, d, e, f, and g. You want the values to map like so:

Your Severity Honeycomb Standard Log Severity
a info
b error
c warn
d fatal
e trace
f debug
g unspecified

Any other severity values should be recognized as non-standard and labeled as Other by Honeycomb.

Solution:

Use a Derived Column to parse your severity values and map them to Honeycomb standard log severity values.

  1. Create a Derived Column, and enter the following function in the Derived Column Editor:

    IF(
      REG_MATCH($my.severity, "a"), "info",
      REG_MATCH($my.severity, "b"), "error",
      REG_MATCH($my.severity, "c"), "warn",
      REG_MATCH($my.severity, "d"), "fatal",
      REG_MATCH($my.severity, "e"), "trace",
      REG_MATCH($my.severity, "f"), "debug",
      REG_MATCH($my.severity, "g"), "unspecified",
      "Other"
    )
    
  2. Use your Derived Column as the source field, and map it to the Logs: Severity dataset field when you configure your visualizations.

Your severities will now map to Honeycomb standard log severities, and visualizations that depend on severity should populate.

Troubleshooting 

To explore common issues when working with Honeycomb Home visualizations, visit Common Issues with Visualization: Home.