I'm working to restore all the menu items that were nuked, and the
prior LogUI/LogPanel functionality allowing config import.

It's a big task, and will likely result in some of the recent
LogUI/LogPanel refactoring being reverted, but will do what I can to
minimize the impact.

Scott

On 10/2/23, Christian Grobmeier <grobme...@apache.org> wrote:
> On Mon, Oct 2, 2023, at 16:15, Robert Middleton wrote:
>> At least two reasons I can think of:
>> 1. Xstream doesn’t work on all java versions as you saw
>> 2. Simplify by using the commons config instead of rolling our own.
>>
>> Each tab should now have just one config file, the idea being that you
>> can
>> now share config files between people.  Before each tab had at least
>> two(maybe three) files.  One was the xml config, one was a java
>> serialized
>> map.  Removing the java serialization is important.
>
> OK. Do you think something based on Jackson would be good? It's JSON
> though.
>
> From an example:
>
> ObjectMapper objectMapper = new ObjectMapper();
> Car car = new Car("yellow", "renault");
> objectMapper.writeValue(new File("target/car.json"), car);
>
> We could wrap this in some kind of class and make it accessible per "tab"
> (or whatever).
>
>
>>
>> -Robert Middleton
>>
>> On Mon, Oct 2, 2023 at 6:12 AM Christian Grobmeier <grobme...@apache.org>
>> wrote:
>>
>>>
>>> On Mon, Oct 2, 2023, at 02:55, Robert Middleton wrote:
>>> > Some(most?) of the settings should be saved:
>>> >
>>> https://github.com/apache/logging-chainsaw/blob/5ccb3c8e55dffd4361c549c3bcdac3f3675f79e5/src/main/java/org/apache/log4j/chainsaw/prefs/SettingsManager.java#L191
>>> >
>>> > The stuff that is commented out should just be the old saving code
>>> > that
>>> > used XStream to save the data out.
>>>
>>> You made it using this commit (thank you, its easy to track):
>>>
>>> https://github.com/apache/logging-chainsaw/commit/75bedf98665188eef4d13e4bfbb4b0dae456f65e
>>>
>>> One question: why did we remove Xstream? it seem there was an update
>>> late
>>> 2022 to address some security.
>>> Should we just re-enable it or was there other reasons too?
>>>
>>>
>>>
>>>
>>> >
>>> > -Robert Middleton
>>> >
>>> > On Sun, Oct 1, 2023 at 3:39 PM Christian Grobmeier
>>> > <grobme...@apache.org
>>> >
>>> > wrote:
>>> >
>>> >>
>>> >> On Sun, Oct 1, 2023, at 21:28, Scott Deboy wrote:
>>> >> > The ability to route events to tabs is a core feature in the code -
>>> >> > that's how Chainsaw log messages end up in a Chainsaw-specific tab
>>> >> > -
>>> >> > but the ability to control that routing via a 'routing expression'
>>> >> > was
>>> >> > nuked from app-wide preferences - another thing we should bring
>>> >> > back.
>>> >> >
>>> >> > It looks like we lost a lot of prefs, both panel-level and app-wide
>>> >> prefs.
>>> >>
>>> >> Yes, I think all prefs are somehow gone. At least everything that is
>>> >> writes to a file seems to be commented.
>>> >> I didn't remove those things yet, as they seemed to big and I didn't
>>> >> understand well how they'd work or how I would test (I lack the
>>> knowledge
>>> >> of how the UI should operate but only see what is there now)
>>> >>
>>> >>
>>> >> >
>>> >> > Scott
>>> >> >
>>> >> > On 10/1/23, Robert Middleton <rmiddle...@apache.org> wrote:
>>> >> >> I would say the saving/loading of settings is probably the main
>>> thing to
>>> >> >> fix - if I remember correctly, it kinda works at the moment.  Part
>>> >> >> of
>>> >> the
>>> >> >> issue with what it did before was that the settings were scattered
>>> among
>>> >> >> several different files with no apparent rhyme or reason, and
>>> converting
>>> >> >> them to one file I'm not sure if everything works.
>>> >> >>
>>> >> >> The one feature that I'm pretty sure doesn't exist is the ability
>>> >> >> to
>>> >> have
>>> >> >> multiple log messages go to one tab, but I don't think that is
>>> critical
>>> >> for
>>> >> >> release.  In order to properly support that I think requires a bit
>>> more
>>> >> >> planning on both the UI side(so you can know how things are
>>> >> >> routed)
>>> and
>>> >> on
>>> >> >> the back-end side(to do the actual routing).
>>> >> >>
>>> >> >> -Robert Middleton
>>> >> >>
>>> >> >> On Sun, Oct 1, 2023 at 3:14 PM Christian Grobmeier <
>>> >> grobme...@apache.org>
>>> >> >> wrote:
>>> >> >>
>>> >> >>> On Sun, Oct 1, 2023, at 20:59, Scott Deboy wrote:
>>> >> >>> > It's great to see the contribution, thanks Christian!
>>> >> >>> >
>>> >> >>> > I pulled down latest master and it looks like there are some UI
>>> >> >>> > glitches we should fix - for example, resizing the logger tree
>>> pane
>>> >> >>> > doesn't render correctly.
>>> >> >>> >
>>> >> >>> > As I mentioned before, I assume there are a bunch of features
>>> >> >>> > we
>>> lost
>>> >> >>> > when we moved from log4j1 - some may not be critical, but I
>>> >> >>> > think
>>> >> >>> > persisting 'default' tab settings is pretty important if it's
>>> >> >>> > not
>>> >> >>> >
>>> >> >>> > I'd like us to at least support the log4j2 zeroconf
>>> >> >>> > functionality
>>> as
>>> >> >>> > well as VFSLogFilePatternReceiver.
>>> >> >>> >
>>> >> >>> > I'm happy to dig in - will look at latest master and
>>> >> >>> > contribute.
>>> >> >>>
>>> >> >>> I would be more than glad if you could take some kind of a lead
>>> here.
>>> >> My
>>> >> >>> Swing-foo is long time gone and so far I just tried to clean a
>>> >> >>> few
>>> >> things
>>> >> >>> or make the code more comprehensible.
>>> >> >>>
>>> >> >>> I will keep trying to extracting things, making classes a bit
>>> smaller
>>> >> if
>>> >> >>> possible. I will closely follow what you are doing and try to
>>> >> >>> learn
>>> >> from
>>> >> >>> it.
>>> >> >>>
>>> >> >>> Maybe, once we can persist tab settings and then release it, no
>>> matter
>>> >> >>> how
>>> >> >>> the rest of the cleanup is.
>>> >> >>>
>>> >> >>>
>>> >> >>> >
>>> >> >>> > Scott
>>> >> >>> >
>>> >> >>> > On 10/1/23, Christian Grobmeier <grobme...@apache.org> wrote:
>>> >> >>> >> Hello,
>>> >> >>> >>
>>> >> >>> >> I am moving things around a lot. There is much refactoring
>>> >> >>> >> that
>>> is
>>> >> >>> necessary
>>> >> >>> >> alone LogPanel had ~4500 lines of code. I believe this lot of
>>> LOCs
>>> >> is
>>> >> >>> >> so
>>> >> >>> >> complicated to understand that it prevents people from
>>> contributing
>>> >> -
>>> >> >>> let
>>> >> >>> >> alone Swing, but we can't change that.
>>> >> >>> >>
>>> >> >>> >> Apart from usual refactorings, I wonder what should be the
>>> >> >>> >> goal
>>> of
>>> >> >>> >> 2.2?
>>> >> >>> >>
>>> >> >>> >> I have already upgraded some dependencies that have security
>>> flaws.
>>> >> 2
>>> >> >>> more
>>> >> >>> >> are in the pom, but they have no patched versions so far.
>>> >> >>> >>
>>> >> >>> >> Should we add at least one feature? Is there maybe one already
>>> >> >>> >> in
>>> >> that
>>> >> >>> >> I
>>> >> >>> >> missed?
>>> >> >>> >>
>>> >> >>> >> I would appreciate it if one of the more experienced
>>> >> >>> >> Swing-devs
>>> here
>>> >> >>> could
>>> >> >>> >> advise or maybe contribute some code so we can justify a
>>> >> >>> >> release.
>>> >> >>> >>
>>> >> >>> >> The next question would be:
>>> >> >>> >> How is chainsaw released at all?
>>> >> >>> >>
>>> >> >>> >> Kind regards,
>>> >> >>> >> Christian
>>> >> >>> >>
>>> >> >>>
>>> >> >>
>>> >>
>>>
>

Reply via email to