Advanced guide

Logs & traces message format

Logs & traces output of each source can be customized in Logs & traces by clicking on the ⋯ icon next to the Message column header and selecting Configure:

Configuring Logs & traces message format

The Logs & traces message format is a freeform text template with columns wrapped in {column} brackets.

Logs & traces message format example
LEVEL: {level}, PID: {context.system.pid}, THREAD: {context.runtime.thread_id}

Conditional rendering can be achieved by piping multiple values

Logs & traces message format with conditional fields
LEVEL: {level}, THREAD or PID: {context.runtime.thread_id|context.system.pid}

If you have special characters in your fields such as dots, you can use square brackets instead:

Logs & traces message format accessing "thread.id" field in "context"
LEVEL: {level}, THREAD: {context["thread.id"]}

Example of Logs & traces message format

Need to change the message format for multiple sources?

You can also configure the format in Sources -> Configure -> Advanced settings, by using bulk updates in the Sources list, or using the Update Source API.

Colors

You can format and color your logs using a subset of ANSI codes in your log messages.

For example, this is how you could format your logs using our JavaScript client:

Log formatting example
logger.info("Logs can be \u001B[1mbold\u001B[0m, \u001B[31mred\u001B[0m, or \u001B[1;32mbold green\u001B[0m.");

Here's the result you would see in Logs & traces:

live-tail.png

Supported colors

Logs & traces supports 31-36 and 91-96 code ranges for colors in both light and dark themes.

Supported font styles

  • Bold: ANSI code 1
  • Light: ANSI code 2
  • Italic: ANSI code 3
  • Underline: ANSI code 4

Style reset

Each font color or style needs to be reset by reset all modes (0) ANSI code. Better Stack Logs & traces doesn't support resetting a color or a style by starting a new one.

Colors in non-message fields

Logs & traces automatically recognizes and renders ANSI color codes in your main message content. However, when you want to display colors in other fields (like custom fields, context data, or structured log properties), you need to explicitly tell Logs & traces to treat them as text that may contain color formatting.

Use the ::text syntax to enable color rendering in non-message fields:

Example with color formatting in custom fields
{custom.msg::text}

Coalescing fields with colors

When using coalescing (the | operator), add ::text at the end of the entire field expression:

Coalescing with color formatting
{message_json.msg|message::text}

Note that ::text applies to the whole coalesced field, not individual parts.

Other settings

You can customize your Logs & traces view by clicking the gear icon in the upper right corner.

For example, you can hide the histogram on the top of the page, make the layout denser, or change the way longer log messages are displayed:

Xnapper-2025-09-18-16.50.51.png