Skip to main content

Log Viewer

The Log Viewer provides a centralized window for monitoring communication and system activity in FXCanvas. Use it to inspect OSC messages, track MIDI events (coming soon), and review internal system logs—all from a single tabbed interface.


What is the Log Viewer?

The Log Viewer consolidates all logging information into one convenient location. Instead of hunting through multiple windows or console outputs, you can view everything from protocol messages to system diagnostics in a unified interface.

FXCanvas supports three log types:

Log TypeIconDescription
OSCnetwork-wired iconIncoming and outgoing OSC (Open Sound Control) messages
MIDImusic iconMIDI messages from controllers and devices (coming in a future update)
Systemterminal iconInternal application logs for diagnostics and troubleshooting

Each log type has its own dedicated tab with tailored column layouts and filtering options.


Accessing the Log Viewer

Open the Log Viewer from the menu bar:

  • View → Log Viewer

The window opens with the OSC tab active by default. You can resize and reposition the window like any other panel in FXCanvas.


Log Types

OSC Tab

The OSC tab displays all Open Sound Control messages sent and received by FXCanvas. This is essential for debugging OSC communication with external software (such as Ableton Live, Resolume, or other OSC-enabled applications) and hardware controllers.

Columns:

ColumnDescription
TimeTimestamp in HH:MM:SS.mmm format
DirDirection indicator — arrow-left icon for incoming, arrow-right icon for outgoing
SrcOSC source badge — "OBC" (music icon, blue) or "API" (signal icon, green)
AddressOSC address pattern (e.g., /master/tempo)
ArgumentsFormatted argument values (e.g., 120.5f)
EndpointRemote IP:Port address (e.g., 127.0.0.1:17002)

Use cases:

  • Verify that OSC messages are being received from external controllers
  • Confirm outgoing messages reach their intended destinations
  • Debug address patterns and argument formats
  • Monitor real-time OSC traffic during live performance

MIDI Tab

The MIDI tab will display MIDI messages from connected controllers and devices.

note

MIDI logging is coming in a future update. The tab is present in the interface but does not currently log messages.

Planned columns:

ColumnDescription
TimeTimestamp in HH:MM:SS.mmm format
DirDirection indicator — arrow-left icon for incoming, arrow-right icon for outgoing
TypeMessage type (e.g., Note On, Note Off, CC)
DataChannel, note, velocity, or other values (e.g., Ch:1 Note:60 Vel:127)
DeviceMIDI device name (e.g., Launchpad Pro)

System Tab

The System tab shows internal application logs, including status messages, warnings, and errors from various FXCanvas modules.

Columns:

ColumnDescription
TimeTimestamp in HH:MM:SS.mmm format
SevSeverity level icon (color-coded, see table below)
ModuleSource module name (e.g., OSCService, NDIService)
MessageLog message text
SourceSource file and line number (e.g., OSCService.cpp:42)

Severity levels:

LevelIconColorDescription
Verboseellipsis iconGrayDebug-level detail, typically hidden
Noticecircle-info iconWhiteNormal informational messages
Warningtriangle-exclamation iconYellowPotential issues that don't block operation
Errorcircle-exclamation iconRedProblems that may affect functionality
Fatalxmark iconBright RedCritical failures requiring attention

Use cases:

  • Diagnose why a feature isn't working as expected
  • Monitor application health during live performance
  • Review startup and initialization messages
  • Identify error patterns for troubleshooting

Features

Text Filter

Each tab has a text filter field in the toolbar. Type any text to filter entries:

  • OSC/MIDI tabs — Filters by address pattern, arguments, or endpoint
  • System tab — Filters by module name or message content

The filter is case-insensitive and matches partial text. Clear the filter to show all entries again.

Direction Filter (OSC & MIDI)

For the OSC and MIDI tabs, checkbox filters let you show or hide messages by direction:

  • Incoming — Messages received from external sources
  • Outgoing — Messages sent to external destinations

Both are enabled by default. Uncheck either to focus on a specific direction.

OSC Source Filter

The OSC tab includes additional filtering by message source, allowing you to separate different types of OSC traffic:

SourceIconBadge ColorDescription
OBCmusic iconBlueMessages from Open Beat Control (the built-in tempo sync system)
APIsignal iconGreenMessages from external controllers via the OSC API port

Both sources are shown by default. Uncheck either to focus on specific traffic:

  • Debugging external controllers? Uncheck OBC to hide tempo sync messages and focus on your controller's traffic
  • Investigating BPM sync issues? Uncheck API to isolate Open Beat Control communication

The Src column in the table shows which system originated each message, making it easy to identify where messages are coming from at a glance.

Severity Filter (System)

The System tab provides checkboxes to filter by severity level:

  • Verbose — Debug-level detail
  • Notice — Informational messages
  • Warning — Potential issues
  • Error — Problems
  • Fatal — Critical failures

All levels are shown by default. Uncheck levels to reduce noise and focus on specific message types.

Control Buttons

The toolbar includes these control buttons:

ButtonIconDescription
Cleartrash iconRemoves all log entries for the current tab. Use this to start fresh when debugging a specific interaction.
Pausepause iconFreezes the log display so you can inspect entries without new messages scrolling by. The log continues collecting in the background.
Resumeplay iconAppears when paused. Click to see new entries that accumulated while paused.

Auto-scroll — A checkbox that, when enabled (default), automatically scrolls the view to show the newest entries. Disable this if you want to scroll through older entries without jumping back to the bottom.


Tips

Debugging OSC Communication
  • Use the text filter to focus on specific OSC addresses (e.g., /tempo or /source)
  • Check that both Incoming and Outgoing are enabled to see the full conversation
  • Look at the Endpoint column to verify messages are coming from the expected source
Inspecting Specific Messages
  • Click Pause to freeze the display when you spot something interesting
  • Scroll through the paused entries to examine message details
  • Hover over truncated text to see the full content in a tooltip
  • Click Resume when you're ready to continue monitoring
Troubleshooting Issues
  • Check the System tab first when something isn't working
  • Enable all severity levels, especially Error and Warning
  • Look for error messages around the time the problem occurred
  • The Module column helps identify which part of FXCanvas reported the issue
Performance Considerations
  • Clear logs periodically during long sessions to free memory
  • Disable Auto-scroll when reviewing logs to prevent UI updates
  • Use filters to reduce the number of visible entries

  • OSC API — Control FXCanvas from external applications via OSC
  • BPM Sync — OSC is used for Pioneer DJ and other external tempo sources
  • Getting Started — Overview of FXCanvas basics