Skip to content


  • Added a visual filter editor to make it easier to update existing
    filters. The editor can be opened by pressing TAB. Once the editor
    is opened, you can create/delete, enable/disable, and edit the patterns
    with hotkeys.
  • Added an 'lnav_view_filters' SQL table that can be used to
    programmatically manipulate filters.
  • Added an 'lnav_view_filter_stats' SQL table that contains the number of
    times a given filter matched a line in the view.
  • Added a 'log_filters' column to log tables that can be used to see what
    filters matched the log message.
  • A history of locations in a view is now kept so that you can jump back
    to where you were previously using the '{' and '}' keys. The location
    history can also be accessed through the ":prev-location" and
    ":next-location" commands.
  • The ":write-*" commands will now accept "/dev/clipboard" as a file name
    that writes to the system clipboard.
  • The ":write-to" and ":write-raw-to" commands will now print out comments
    and tags attached to the lines.
  • Added a ":redirect-to " command to redirect command output to the
    given file. This command is mostly useful in scripts where one might
    want to redirect all output from commands like ":echo" and ":write-to -"
    to a single file.
  • If a log file format has multiple patterns for matching log messages,
    each pattern is now tried to match a message in a file. Previously,
    only one pattern was ever used for an entire file.
  • Added haproxy log format from Peter Hoffmann.
  • Added 'spooky_hash()' and 'group_spooky_hash()' SQL functions to
    generate a hash of their parameters.
  • Added 'time_offset' to the 'lnav_file' table so that the timestamps in
    a file can be adjusted programmatically.

Interface Changes:

  • The auto-complete behavior in the prompt has been modified to fall back
    to a fuzzy search if the prefix search finds no matches. For example,
    typing in ":fin" and pressing TAB would previously not do anything.
    Now, the ":fin" will be completed to ":filter-in " since that is a
    strong fuzzy match. If there are multiple matches, as would happen
    with ":dfil", readline's menu-complete behavior will be engaged and
    you can press TAB cycle through the options.
  • Added CTRL+F to toggle the enabled/disabled state of all filters for the
    current view.
  • The '-r' flag is now for recursively loading files. The functionality
    for loading rotated files is now under the '-R' flag.
  • The current search term is now shown in the bottom status bar.
  • Some initial help text is now shown for the search and SQL prompts to
    refresh the memory.
  • When entering the ":comment" command for a line with a comment, the
    command prompt will be filled in with the existing comment to make
    editing easier.
  • Hidden fields now show up as a unicode vertical ellipsis (⋮) instead of
    three-dot ellipsis to save space.
  • Pressing 7/8 will now move to the previous/next minute.
  • The ":write-raw-to" command has been changed to write the entire
    contents of the current view and a ":write-screen-to" command has been
    added to write only the current screen contents.
  • Disabled filters are now saved in sessions.
  • The ":adjust-log-time" command now accepts relative times as input.


  • The ":write-json-to" command will now pass through JSON cells as their
    JSON values instead of a JSON-encoded string.
Assets 9
You can’t perform that action at this time.