LogRaker Features Pricing Docs Release Notes Blog Download

← Documentation

Layouts

A Layout is a saved multi-pane arrangement: several Streams side by side in one window, with each Stream's tail in its own pane.

Creating a Layout

+ ▸ New Layout…

Fields:

  • Icon - any SF Symbol. The Suggested row leads with every Kind's default glyph; pick one of those and the icon keeps tracking the Kind you choose below. Pick anything else and the icon locks to your custom choice.
  • Name - sidebar label.
  • Kind - choose the slot geometry:
    • 2 Vertical Split - two panes side by side.
    • 2 Horizontal Split - two panes stacked top/bottom.
    • 2×2 Grid - four equal panes.
    • Wide Top + 2 Below - one wide pane on top, two below.
    • 2 Above + Wide Bottom - two panes on top, one wide below.
    • Wide Left + 2 Right - one wide pane on the left, two on the right.
    • 2 Left + Wide Right - two panes on the left, one wide on the right.
    • 3 Vertical Split - three panes side by side.
    • 3×3 Grid - nine equal panes.
    • Merge Streams - no panes; every assigned Stream's lines are interleaved into one timeline. See Merged view below.
    • Dashboard - no panes; a dashboard of Monitor cards, the same UI the desktop widget shows. See Dashboards below.

Save and the Layout appears in the Layouts section of the sidebar.

There is no Group field in this sheet - Layouts are grouped from the sidebar. Right-click a Layout and use Move to Group (the submenu appears once you have at least one Layout Group), or create the Layout from a Layout Group's own New Layout… and it lands in that group.

Filling slots

Open the Layout from the sidebar. Each slot starts empty with a "Drop a Stream here" placeholder. Drag any Stream from the sidebar into a slot to assign it. A slot can also hold a Monitor (its live match list) or a whole Dashboard - drag either from the sidebar the same way (see A dashboard in a pane).

To swap, drag a different Stream onto an occupied slot - it replaces the previous assignment. To clear a slot, right-click it and pick Remove from Layout.

A Layout that drives nothing - every slot still empty - shows an orange warning badge in the sidebar; its tooltip names what to add for that kind of Layout.

Resizing panes

Drag the divider between any two panes. LogRaker remembers the ratio per-layout (stored on Layout.dividerRatios).

If you ever want to reset back to the kind's default ratios, right-click the Layout in the sidebar and pick Reset Layout.

The bar above each pane

Every pane carries its own bar. Left to right: the Stream's icon and name, its status LED (which glows while lines are arriving), the activity waveform, and - only when that Source carries a manual clock offset - a badge reading the correction, such as -57 ms vs Cerbo.

On the right sit the pane's controls: Pause live output, Reload Stream, Clear, and Lock siblings to this pane, which makes your selection here drive every other pane. Next to them, a Synced @ pill appears once the Layout has a time anchor - click the time to jump back to that moment, or the x to drop it. Panes showing Google Cloud or Firebase Sources also get a ••• button for execution highlighting. Last is the pane's own filter box, which shows only the lines matching what you type.

Should the pane be too narrow for all of it, the filter box gives up width first and the Stream name is shortened only after that.

Merged view

A Merge Streams Layout takes its Sources from a drop strip at the top of the pane: drag a Stream, Server, Server Group, or Stream Group from the sidebar and drop it anywhere in the pane - the strip lights up as you drag, and the pill lands there. Container Sources are dynamic - a Server pill covers every Stream under that Server, a Server Group pill every Stream under any of its Servers, and a Stream Group pill every Stream in that folder, nested subfolders included - so Streams added there later join the merge by themselves. Each pill carries a checkbox to include or exclude that Source's lines, and an × to remove it; both are undoable with Cmd+Z.

Some Layouts support a merged view - toggle it with the Merge by Time toolbar button (it flips to Show Split View when merged). When on, all the slot Streams' lines appear in one table, ordered by time, with a Source column showing which Stream each line came from. It is the same column view a single Stream gets: sort by any column ('Back to Time Order' returns to it), filter, resize and hide columns, and lines keep arriving while you look - the toolbar's Pause holds them. Useful for cross-correlating events across services.

The noise-triage dimming works here too - and the merged view is where it shines, since several Streams' chatter interleaves: right-click a line (or use the View ▸ 'Dim' commands) and the pattern lands on that line's own Stream, dimming every line like it wherever it appears in the merge. 'Focus on Similar Lines' works the other way round and covers the whole merge: every line that does not match fades, the other Sources included, so one click leaves only the lines you picked. The pill bar above the merged table gathers every Source's patterns in one place, and 'Hide Dimmed' collapses the noise across all of them.

GCP lines in the merged view can be tinted by execution the same way they are in single panes - see Execution highlighting. With the timeline strip shown, selecting any merged line moves the red playhead to that line's instant.

A merged view you want to keep can become a Layout of its own: while a regular Layout is merged, a bar above the table offers 'Save as New Merge Streams Layout'. It creates a new Merge Streams Layout over the same Streams, named after the one you started from, in the same group, and selects it - the Layout you were in is untouched. One ⌘Z undoes it. Dismiss the bar with its × and it stays gone for that Layout; the same command is on the Layout's right-click menu in the sidebar whenever you want it.

Toggle off to return to the per-slot panes.

Dashboards

A Dashboard Layout shows Monitors as cards - name, big match count, and when the last match landed - drawn with the same views as the LogRaker desktop widget, so a dashboard and a widget look alike. Because a Dashboard is a Layout, you can put it in a Layout Group, and open it in its own window with Open in New Window.

Monitor cards and Stream cards

A dashboard holds two kinds of cards: Monitor cards (match count, sparkline) and Stream cards - drag a Stream from the sidebar onto the dashboard for a live status card: the sidebar's activity pulse, card-sized, sweeping like a heartbeat monitor while output arrives - the trace draws in from the left and dies away behind the beam - and running out in quiet; a sparkline of the Stream's line volume, drawn in the connection state's color (green streaming, amber connecting, red error, gray stopped) - its busyness at a glance, scrubbable like any other - and when the last line arrived. One dashboard then answers "is it up" and "is it erroring" at the same time. Stream cards move, resize, select, and invert exactly like Monitor cards; double-click opens the Stream, and dropping a Stream on a dashboard starts its tail if it wasn't running.

Placing and moving cards

A dashboard works like the desktop: cards stay exactly where you put them. Drag a Monitor from the sidebar onto the dashboard to add its card, and drop it wherever you want - top-left, three down the left edge, or off on its own with space around it. A dashed snap frame marks the cell the card will land in, so cards stay aligned to each other without being packed together. Drag a card the same way to move it - and dragging a card that is part of a multi-selection moves the whole selection together, every card keeping its offset, with snap frames marking all the destination cells; one Cmd+Z undoes the whole group move. Cards never displace one another: dragging over a cell that already holds a card is refused (for a group, the drop is refused unless every destination cell is free), so drop it on an empty cell. A card landing in a cell plays a short snap, which you can turn off in Settings ▸ Accessibility. Click a card to select it, Cmd-click (or Shift-click) to add or remove one from the selection, and drag across empty dashboard space to rubber-band everything the band touches. Right-click for Open Monitor, Reset Count, and Remove from Dashboard - acting on the whole selection when you right-click inside it, so the rings always show what the menu will do. Resetting several counts, or removing several cards, is a single Cmd+Z. A removed card blows apart into pieces that fly, spin, and fall - 'Play removal effects' in Settings ▸ Accessibility turns that off. Adding, moving, and removing are all undoable with Cmd+Z.

Keyboard control

The dashboard is keyboard-friendly too: once it has focus (press Tab from the sidebar, or click anywhere on it), the arrow keys move the selection from card to card - hold Shift to extend the selection instead - Cmd+arrows move the selected cards themselves - a whole column sideways, a third of a tile vertically - and a multi-selection shifts as one group (the destination cells must be free, like when dragging; the move is undoable and plays the same snap), Return opens the selected card's Monitor or Stream, Delete removes the selected cards from the dashboard, Cmd+A selects every card, and Esc clears the selection.

Opening, resizing, resetting

Double-click a card to open that Monitor in the main window's sidebar. Resize the cards the way you resize a window: move the pointer over a card and a grip appears along its bottom-right corner; drag the grip or the corner, where the pointer becomes the resize cursor. Every card on the dashboard resizes together, since a dashboard's tiles are one uniform size. The size is remembered per dashboard, saved with your configuration, and syncs across your Macs; right-click the Layout in the sidebar and pick Reset All Counts to acknowledge every card's matches at once (one Cmd+Z undoes the lot), or Reset Layout to put the cards back to their default size and pack them into a tidy block at the top-left - one Cmd+Z restores your arrangement if you change your mind.

A dashboard's toolbar is deliberately bare: there is no tailer to pause, reload, or clear, no time axis to scrub, and no line list to filter, so those controls are hidden rather than shown greyed out. Card actions live on the card's own right-click menu.

A dashboard as a wall display

A dashboard makes a good wall display: open it in its own window (Open in New Window) and take that window full screen (the green button, or Ctrl+Cmd+F) for a kiosk view - nothing on screen but the cards. While the dashboard is full screen the display stays awake, and the pointer hides after a few seconds at rest (moving it brings it back). Move the pointer to the top of the screen for the menu bar, and leave with Esc or Ctrl+Cmd+F as usual. Only dashboard windows do this; other windows in full screen leave display sleep alone.

The dashboard scrolls, so a card you place far to the right stays where it is - and stays reachable - when you shrink the window.

Counts and colors

Each card's count uses that Monitor's own widget color (Monitor editor ▸ Color). A card whose Monitor you delete becomes a "Monitor not found" tile rather than disappearing.

Counts update live as matches arrive - in-app, so they move immediately rather than on the widget's refresh schedule.

Arranging by activity

Right-click and pick Arrange to choose the dashboard's placement mode. Manually (the default) is the free-form desktop behavior. By Activity lets the dashboard arrange itself: cards pack into a tidy grid with red cards first (a Monitor at its red threshold, a Stream in error), then amber, then the busiest of the rest, re-sorting live as activity shifts - problems move to the front of the wall on their own. Monitor cards and Stream cards keep to separate blocks: Monitors fill the top rows, Streams start on their own row below, so the two kinds never interleave. Your manual arrangement is never lost: switching back to Manually restores every card to exactly where you had it. While By Activity is on, the dashboard owns placement, so card-move drags and Cmd+arrows are refused; everything else works as usual.

Dashboard style

Right-click any card (or empty dashboard space) and pick 'Edit Style…', or right-click the Dashboard in the sidebar and pick it there, to style the whole dashboard - the style is per dashboard, never per card. Inverted colors fills each card with its Monitor's color (including activity-derived green / amber / red) and flips the text to black or white for contrast - a wall of filled tiles reads as a status board from across the room; a card with no matches keeps the neutral tile. Two further switches show or hide the timestamp line and the sparkline strip, and 'Show icons' puts each card's Monitor or Stream icon before its name. Under Dashboard Name, 'Show on Mac' puts the dashboard's name above its cards, and 'Show on Apple TV' does the same on the television (see Apple TV); 'Show icon' puts the dashboard's own icon before the name, and Alignment sets it left, centered or right over the cards. A dashboard in a Layout pane is already named by the pane's own bar. The dashboard shows each change as you make it; 'Save' keeps them, 'Cancel' puts the dashboard back. Saved changes apply everywhere the dashboard shows, undo with Cmd+Z, and the style syncs and is saved with the Layout. Every card also wears a subtle top-lit sheen, the same depth cue the desktop widget's material has - and a selected card flips its lighting, so it reads as pressed in.

Sparklines

Each card also carries a sparkline - match activity over the last 24 hours, one point per hour, drawn as a small line graph under the count. Quiet stretches render in gray, and spikes blend into the Monitor's own color as they climb; the newest point wears a dot in that color, so a card that's busy right now stands out from one that was busy earlier. A flat gray line with a gray dot means a quiet day. Hover over the sparkline to scrub it - a playhead follows the pointer from hour to hour, and a tooltip shows each point's time range and match count. Double-click a spike to investigate it: the Monitor (or Stream) opens with its timeline already narrowed to that hour, so you land straight on what happened. Right-clicking a spike offers the same jump - the Open item scopes itself to that hour ("Open Monitor at 14:00").

Section labels

Big dashboards read better with headings: right-click empty dashboard space and pick Add Label… to place a section label - a floating text heading ("Production", "Boat") with no tile behind it, sitting on one grid cell. Labels move, select, and delete exactly like cards (drag them, Cmd+arrows, Delete, Cmd+Z undoes everything); double-click a label - or right-click it and select 'Edit Label…' - to change its text or its alignment: left, centered, or right within its width. New labels start out left-aligned, one card wide. Drag the blue bar along a label's right edge to widen it across several cards, or narrow it again; it stops at the next card or label in its way. Labels are a third of a tile tall, and the dashboard's vertical grid moves in thirds of a tile - drag any card (or press Cmd+up/down) to nudge it a third at a time - so a heading sits snugly above its row, even at the very top of the dashboard, instead of costing a full one. Labels annotate your arrangement, so while the dashboard is arranged By Activity they hide, and they return untouched when you switch back to Manually. Labels are saved and restored with your configuration and sync with iCloud like the rest of the dashboard.

A dashboard in a pane

A Dashboard can also live inside another Layout: drag the dashboard from the sidebar into any empty slot of a split or grid Layout, and the cell shows the dashboard's live cards next to your Stream and Monitor panes. It is the same dashboard - not a copy - so adding, moving, or resizing cards in the cell, in the dashboard's own window, or on another Mac all stay in step, and the counts tick live everywhere at once. Inside the cell the dashboard behaves exactly as it does standalone: drop Monitors onto it, drag cards around, rubber-band a selection, resize from a card's corner, scroll to reach far-flung cards.

The cell gets the same header as a Monitor pane - the dashboard's icon, name, and Monitor count. Right-click it for Edit Layout…, Go to Dashboard (jumps to the dashboard in the main window), Reset All Counts (acknowledges every card's matches in one undoable step), and Remove from Layout (empties the cell; the dashboard itself is untouched). Dropping the dashboard and removing it are both undoable with Cmd+Z, and the assignment is saved and restored with your configuration and syncs with iCloud.

The Layout's own Reset All Counts (right-click it in the sidebar) sees through embedded dashboards, so it also acknowledges the cards of any dashboard the Layout embeds. Deleting a dashboard Layout, or changing its Kind away from Dashboard, simply empties any cell that embedded it. While a Layout embeds a dashboard, the Kind picker won't offer Merge Streams or Dashboard - neither kind can show a dashboard pane.

Finding a line across panes

The toolbar's 'Find' button opens one find bar above the whole Layout, not one per pane. Type once and every pane searches for it: each highlights its own matches where they stand and counts them in its own status bar, so you can see at a glance which panes carry the term and how often.

‹ ›, Return and Shift-Return, 'Find Next' and 'Find Previous' step through the pane you are working in, and the count on the bar follows it - click or Tab into another pane and they step that one instead, from the find field or from the pane itself. Everything else about the bar, including the comparison and the token pills, works as it does in a single Stream; see Finding a line.

Drop bars

Each slot has a small "drop bar" at the top showing a pill for its assigned Stream - color-coded per Stream so the matching markers on each line in the merged view are recognizable.

Layout Groups

Layout Groups are sidebar buckets for Layouts, the same idea as Source Groups. Grouping changes nothing about what a Layout shows; it keeps the list tidy once you have a few.

Four ways to make one:

  • The + menu in the toolbar ▸ 'New Layout Group…'
  • File ▸ 'New Layout Group…'
  • Right-click an empty area in the sidebar ▸ 'New Layout Group…'
  • Right-click the Layouts header ▸ 'New Group…'

All four open the same sheet, which asks for an Icon and a Name, and all four stay disabled until at least one Layout exists.

Drag a Layout onto a group's header to put it there, or right-click the Layout and use 'Move to Group'; drop it on the Layouts header to take it back out. Right-click the group header for 'Edit Group…', to change the name or icon, or 'Delete Group'. Selecting the group's row and pressing Return renames it in place.

Status & matches in the sidebar

Each Layout's sidebar row summarizes what's inside it at a glance, without opening it:

  • a status LED for the worst status across the Layout's Streams - green when all is well, yellow/orange while connecting or reconnecting, red the moment any Stream errors; and
  • a match badge (with the vibrating alarm bell) for the Layout's Monitors - in the most urgent color present, carrying the total for that color alone.

Collapse a Layout Group - or the Ungrouped row - and it rolls the same summary up across every Layout inside.

To clear that match badge, right-click the Layout and pick Reset All Counts: it acknowledges the matches on every Monitor the Layout drives, in one step that Cmd+Z undoes. The item appears on any Layout holding Monitors - a Dashboard, or an ordinary split Layout with a Monitor pane - and greys out when nothing is unseen, exactly like the same item on a Monitor Group.

Aligning Source clocks

Logs from different Sources don't always share a clock. A remote device's clock can drift seconds away from your Mac, and a cloud service keeps its own time - so the same event shows up at different timestamps in each log and the panes won't line up.

Align to Ref Time nudges one Source's whole timeline so a pair of corresponding events coincides:

  1. In the Source you trust, right-click the line at the moment you want as the reference and choose Set Ref Time.
  2. In the other Source, right-click the line for the same event and choose Align to Ref Time. That Source shifts so its line lands on the reference instant.

Align to Ref Time stays disabled until you've set a reference, and only applies to a different Source than the one the reference came from.

The correction is stored per Source, so every Stream from that Source shifts together. It is remembered between launches and saved with Save Configuration…. Undo (⌘Z) reverts an align.

Between the two steps, the pinned reference shows in the status bar under every table, so you can see what you are aligning to while you look for the matching line. Pinned one by mistake? Right-click any line and choose 'Clear Ref Time'.

Once aligned, you'll see it in three places, each showing the offset and what it was measured against:

  • the status bar under that Source's table,
  • a small clock badge in that Source's pane header (hover for the detail), and
  • an Aligned: … line in the Source's detail pane (select the Source in the sidebar), next to its time zone.

To remove it, right-click any line from that Source and choose Clear Time Alignment.

What alignment does and doesn't do

Alignment corrects gross clock skew - the kind (a second or more) that throws off merged-view ordering and side-by-side comparison. It does not calibrate to the millisecond, on purpose: the sub-second gap between two corresponding events is mostly real - network latency, plus the fact that "sent" and "received" are genuinely different instants - not clock error to be removed. So LogRaker lines the events up at the second scale while keeping each Source's own sub-second reading intact, rather than faking an exact match.

© 2026 Thomas Gumz · Native macOS log monitoring Features Pricing Download Docs Blog Changelog About Privacy

Also by Thomas Gumz: PanoPaper, your security cameras as live video wallpaper.

Amazon Web Services, AWS, Amazon CloudWatch, and Amazon S3 are trademarks of Amazon.com, Inc. or its affiliates. Google Cloud and Firebase are trademarks of Google LLC. Supabase is a trademark of Supabase, Inc. LogRaker is an independent product and is not affiliated with, endorsed by, or sponsored by Amazon, Google, or Supabase.