Visual filtering
Filter Builder
Use the Filter Builder window to review, combine, save, and clear the filters applied to the live log view.
- Open the builder
- Filter mental model
- Tabs and rule states
- Presets, clearing, and workflows
What It Does
The Filter Builder is Azkar Console's visual workspace for narrowing a noisy log session without changing the captured log data. It builds the same filter state used by the toolbar, status bar, quick-filter context menus, exports, and live log view.
When you change a filter, the visible list updates immediately. The original log stream remains intact and chronological.
Open It
- Click the
Filtersbutton in the console toolbar. - Choose
Open Filter Builderfrom the filters menu. - Press the default
Action+Kshortcut. - Create filters from a row's right-click
Quick Filtersmenu, then use the builder to review, refine, save, or clear them.
Action means Command on macOS and Control on Windows/Linux.
Mental Model
| Rule | Meaning |
|---|---|
| Within one filter type | Include selections behave like OR. Including Network and Gameplay categories shows logs whose category is Network or Gameplay. |
| Across different filter types | Filters behave like AND. Including category Network and alias Server shows Network logs that also came from Server. |
| Excludes | Exclude rules hide matching rows even when another rule would include them. |
| Tags | Tags use any selected tag matching. A row with either Combat or Boss can pass a tag filter that includes both. |
| Sources | Source filters can target either a whole file or one exact File.cs:line callsite. |
Builder Layout
The top summary strip shows every active rule as chips grouped by type: severity, search, alias, category, tag, thread, source, persistent filters, and context rules. Right-click a chip to change its state or remove it.
The Active Presets strip shows stacked presets currently contributing rules. Presets can be removed one at a time. If a preset rule is overridden by another rule, the preset chip shows an override count.
The tab row contains Alias, Category, Tag, Thread, Source, and Context. A number beside a tab means that tab has active rules.
Each normal tab has a local search box, a sort toggle, Clear Column, and a list of discovered values.
Rule States
Each value row has four state buttons. A value can only have one state at a time. Clicking a different state moves it; clicking the active state again removes it.
| Button | Meaning | Cleared By |
|---|---|---|
+ | Volatile include. Show logs matching this value. | Clear Volatile or Clear Everything. |
- | Volatile exclude. Hide logs matching this value. | Clear Volatile or Clear Everything. |
P+ | Persistent include. Keep showing only this value across volatile clears. | Clear Everything or column clear. |
P- | Persistent exclude. Keep hiding this value across volatile clears. | Clear Everything or column clear. |
Filter Tabs
| Tab | Use For |
|---|---|
| Alias | Logical source names such as SaveSystem, Server, Client A, or runtime-created aliases. Alias include filters do not match unaliased rows. |
| Category | Each row's primary category, such as Gameplay, Network, UI, or a custom project category. |
| Tag | Structured labels for cross-cutting concerns such as Combat, Boss, Verbose, Prediction, or Autosave. |
| Thread | Captured thread id. Thread 1 is displayed as Main Thread; other ids are shown as numbered worker threads. |
| Source | Caller filename or exact source location. File filters match by filename for portability, not by absolute path. |
| Context | Dragged GameObjects or Components that should highlight, include, or exclude matching logs. |
Source Filters
Expanding a source file reveals logged line callsites. Use file filters to focus on one script, and line filters to mute or inspect one noisy log statement.
Peek opens a source preview for a specific callsite when the file can be resolved.
Context Filters
Drop a GameObject or Component into the Context tab to choose whether matching logs should be highlighted, included, or excluded. Highlight rules only color rows; include and exclude rules affect visibility.
GameObject rules cover the object plus its components, while Component rules target that component's context id. Context rules apply only to logs with explicit Azkar Console context metadata.
Presets
Save Preset stores the current effective filter setup as a reusable preset. Saved presets include resolved alias, category, tag, thread, source, severity, search, regex, include, exclude, and persistent rules. Context highlight, include, and exclude rules are session rules and are not part of saved filter presets.
Add Preset stacks a saved preset into the current builder instead of replacing everything. If the incoming preset says to include a value that another rule excludes, Azkar Console opens a conflict resolver and asks whether the effective result should be include or exclude. The chosen result is remembered while the conflict exists.
The main filters menu can also apply a saved preset as a replacement for current filters, overwrite an existing preset with the current setup, delete presets, or save the current setup under a new name.
Clearing Filters
| Action | What It Clears |
|---|---|
Clear Volatile | Search, regex, severity, volatile includes, volatile excludes, active presets, preset overrides, and context rules. Persistent P+ and P- filters remain. |
Clear Everything | All filters, including persistent rules, active presets, and context rules. |
Clear Column | Every rule in the current tab, both volatile and persistent. |
Practical Workflows
- To focus on one system, open
Category, press+onNetwork, then optionally press-on noisy tags or source lines. - To mute one spammy log statement, open
Source, expand the file, find the line, and pressP-. That hides only that callsite while leaving the rest of the file visible. - To build a reusable debugging view, combine categories, aliases, tags, and source rules, then click
Save Preset. - To temporarily narrow a session without disturbing long-term filters, use
+and-. To keep a filter around while you clear temporary work, useP+orP-.
