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 Type | Icon | Description |
|---|---|---|
| OSC | network-wired icon | Incoming and outgoing OSC (Open Sound Control) messages |
| MIDI | music icon | MIDI messages from controllers and devices (coming in a future update) |
| System | terminal icon | Internal 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:
| Column | Description |
|---|---|
| Time | Timestamp in HH:MM:SS.mmm format |
| Dir | Direction indicator — arrow-left icon for incoming, arrow-right icon for outgoing |
| Src | OSC source badge — "OBC" (music icon, blue) or "API" (signal icon, green) |
| Address | OSC address pattern (e.g., /master/tempo) |
| Arguments | Formatted argument values (e.g., 120.5f) |
| Endpoint | Remote 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.
MIDI logging is coming in a future update. The tab is present in the interface but does not currently log messages.
Planned columns:
| Column | Description |
|---|---|
| Time | Timestamp in HH:MM:SS.mmm format |
| Dir | Direction indicator — arrow-left icon for incoming, arrow-right icon for outgoing |
| Type | Message type (e.g., Note On, Note Off, CC) |
| Data | Channel, note, velocity, or other values (e.g., Ch:1 Note:60 Vel:127) |
| Device | MIDI 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:
| Column | Description |
|---|---|
| Time | Timestamp in HH:MM:SS.mmm format |
| Sev | Severity level icon (color-coded, see table below) |
| Module | Source module name (e.g., OSCService, NDIService) |
| Message | Log message text |
| Source | Source file and line number (e.g., OSCService.cpp:42) |
Severity levels:
| Level | Icon | Color | Description |
|---|---|---|---|
| Verbose | ellipsis icon | Gray | Debug-level detail, typically hidden |
| Notice | circle-info icon | White | Normal informational messages |
| Warning | triangle-exclamation icon | Yellow | Potential issues that don't block operation |
| Error | circle-exclamation icon | Red | Problems that may affect functionality |
| Fatal | xmark icon | Bright Red | Critical 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:
| Source | Icon | Badge Color | Description |
|---|---|---|---|
| OBC | music icon | Blue | Messages from Open Beat Control (the built-in tempo sync system) |
| API | signal icon | Green | Messages 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:
| Button | Icon | Description |
|---|---|---|
| Clear | trash icon | Removes all log entries for the current tab. Use this to start fresh when debugging a specific interaction. |
| Pause | pause icon | Freezes the log display so you can inspect entries without new messages scrolling by. The log continues collecting in the background. |
| Resume | play icon | Appears 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
- Use the text filter to focus on specific OSC addresses (e.g.,
/tempoor/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
- 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
- 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
- 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
Related Topics
- 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