Skip to content

FEAT: VISUAL FILTER BUILDER UI #286

@somethingwithproof

Description

@somethingwithproof

SUMMARY
The Syslog plugin currently relies on raw text inputs for 'sql' type rules and simple dropdowns for others. There is no visual interface to build complex, multi-condition logic without manual SQL knowledge.

WHY REFACTOR
Replacing raw SQL inputs with a visual builder improves user experience and is a prerequisite for the backend transition to JSON-based rules (Issue #284). It ensures that users can only construct valid, safe queries through a controlled interface.

PROPOSED CHANGE
Implement a client-side visual Filter Builder:

  1. Add a JavaScript component (js/filter-builder.js) that allows users to add/remove rule rows.
  2. Provide dropdowns for allowed fields (Host, Facility, Message, etc.) and operators.
  3. Serialize the visual state into a JSON string for storage in the existing message column.
  4. Integrate the component into the Alert and Removal Rule edit pages.

SCOPE

  • Client-side UI implementation in js/filter-builder.js.
  • Integration into syslog_alerts.php and syslog_removal.php.
  • Ensuring the UI handles both new JSON-based rules and displays a warning for legacy raw SQL rules.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions