carina-studio / ULogViewer

Cross-Platform Universal Log Viewer.
https://carina-studio.github.io/ULogViewer/
MIT License
371 stars 38 forks source link

Suggestion: add 'exclude' filter #43

Open acastruc opened 2 weeks ago

acastruc commented 2 weeks ago

Amazing software, truly. Some suggestions

  1. Make the filter list accessible in the right docking bar under a "Filter" tab, alongside "Marked Logs", "Categories of timestamps", "Log analysis" and "Added log files". Then if each item has a checkbox next to it the user could "apply" them by checking box.
  2. Give the ability to define a filter that excludes instead of includes. For example, I often want to exclude logs with a certain category, or message substring. Then let me AND define multiple so I can filter like "Show all log lines except those that contain "foo" or "bar" etc. Or show me all logs except those with category="foo" or category="bar"
hamster620 commented 2 weeks ago

@acastruc Thanks for your suggestion, we will take these into account in the future release.

acastruc commented 2 weeks ago

@hamster620 I'd be happy to take a stab at this myself, do you have any dev setup documentation? Also, Im on mac but could virtualize Win if required. Thanks

hamster620 commented 2 weeks ago

@acastruc You can just clone this repositary and use master branch to develop. For IDE you can use Visual Studio Code, Rider or Visual Studio (on Windows). And also, macOS is fine to develop and run ULogViewer.

hamster620 commented 2 weeks ago

For core log filtering function, you can refer to DisplayableLogFilter.cs

acastruc commented 1 week ago

@hamster620 ok Ive got something working but I am unclear about the current behaviour of combination mode. See my other post.

acastruc commented 1 week ago

@hamster620 I've got a branch I want to publish for inspection. How should I go about submitting? When I try git push -u origin <mybranchname> I get

remote: Permission to carina-studio/ULogViewer.git denied to acastruc.
fatal: unable to access 'https://github.com/carina-studio/ULogViewer.git/': The requested URL returned error: 403

Edit: also, how do I build Release build locally? Im new to Visual Studio Code. Edit 2: I think I managed to build Release by editing tasks.json, adding

"-c",  "Release",

to the build task args.

hamster620 commented 1 week ago

@acastruc You cannot push change to the repository directly. Please refer to Creating a pull request and create a pull request for merging chang to master branch.

To run and debug ULogViewer in VS Code, you need to edit launch.json and change the program attribute to correct framework: image Currently it should be net8.0 instead of net7.0.

acastruc commented 1 week ago

@hamster620 understood. Done.

acastruc commented 1 hour ago

@hamster620 can you give a rough timeline for when/if the exclude pattern will be supported in a new release? Thanks