syncthing / syncthing/syncthing
Feature: Logging Search Bar
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 88.8k
- Forks
- 5.5k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 5
Description
Description
Inspired by a short exchange on the forum: https://forum.syncthing.net/t/feature-elasticsearch-integration/21186/4?u=dalba-sudo. I'm thinking of adding a search bar in the log section of the GUI.
Use Case
"I think much simpler than this the log interface in the GUI can use a simple text search. Show me all log lines that match GX6GIWE (a device) or a file name, or an error…" - mraneri
Here's my current idea for the filtering implementation:
- add a filter function to the logging scope/class (kind of new angular, not sure what you'd call it).
- called by ng-keyup callback on an input of type text (i.e., the "search bar").
- only filters on keywords more than 2 characters long (if you want to look for something that is 2 characters long, use a wildcard as the third character?)
- add an input of type text in the
logViewerModalView
I've linked to a video demoing the current implementation - it's bare-bones and not currently designed for scale. Before I go back to the drawing board to think about ways to make this scalable for larger logs, I want to get feedback on the feature!
Demo: https://youtu.be/64B5Fa2fiq4
This is my first contribution to open-source, any feedback is appreciated (i.e., more detail explaining the feature, etc).
Cheers,
DAlba-Sudo
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read the logging scope/class and the logViewerModalView first, then trace how an ng-keyup callback could reach the log filtering behavior. Done means the GUI has a text search bar that filters log lines by the requested keyword rules, with the scalability approach clarified before implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angularjs
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100