Logback Beagle: first impression

Hi together, here my comments on Logback Beagle Release 1.0.0: 1. "git tag" missing for version 1.0.0 2. convert context menu (MenuBuilder,OnMenuSelectionAction) to Eclipse commands 3. migrate functionality from TableMediator to BeagleView and remove TableMediator 4. Introduce LabelProvider and ContentProvider for virtual table (BeagleView) 5. ITableItemStub#getText() and #getImage() --> LabelProvider 6. Remove VistaManager 7. Remove ITableItemStubs (incl. subclasses) --> ContentProvider 8. remove System.out.println (many occurences in source code) 9. ResourceUtil#IMAGE_MAP -> use instead ImageRegistry (see also http://www.eclipse.org/articles/Article-Using%20Images%20In%20Eclipse/Using%...) Regards Christian

Comments inline. On 13.07.2012 22:53, Christian Trutz wrote:
Hi together,
He, he.
here my comments on Logback Beagle Release 1.0.0:
1. "git tag" missing for version 1.0.0
done
2. convert context menu (MenuBuilder,OnMenuSelectionAction) to Eclipse commands
Let's talk about item 2 at a later stage.
3. migrate functionality from TableMediator to BeagleView and remove TableMediator
For the time being, I am keen on being able to launch tests without a view. Moving TableMediator functionality to BeagleView would remove that capability.
4. Introduce LabelProvider and ContentProvider for virtual table (BeagleView) 5. ITableItemStub#getText() and #getImage() --> LabelProvider
See my answer to item 7 below.
6. Remove VistaManager
Indeed. It's unused at the moment. It was introduced in order to be able to log to different tables. We currently do not offer this feature. So we can remove VistaManager.
7. Remove ITableItemStubs (incl. subclasses) --> ContentProvider
I looked at ContentProvider and LabelProvider briefly a while ago. These work with JFace tables (TableViewer) whereas logback-beagle uses a plain-old SWT Table at the moment. Refactoring the code to use ContentProvider instead of ITableItemStubs would be a *big* undertaking. Wouldn't it? Nevertheless, I would be happy if you took a shot at it. In the mean time, I'll read up on ContentProvider.
8. remove System.out.println (many occurences in source code)
Sure.
9. ResourceUtil#IMAGE_MAP -> use instead ImageRegistry (see also http://www.eclipse.org/articles/Article-Using%20Images%20In%20Eclipse/Using%...)
I assume you's use a ImageDescriptor. Cool. I suggest we start with this last item since it appears to be the easiest non-trivial item. -- Ceki http://tinyurl.com/proLogback

On 13.07.2012 22:53, Christian Trutz wrote:
Hi together,
here my comments on Logback Beagle Release 1.0.0:
4. Introduce LabelProvider and ContentProvider for virtual table (BeagleView) 5. ITableItemStub#getText() and #getImage() --> LabelProvider 7. Remove ITableItemStubs (incl. subclasses) --> ContentProvider
Currently, logback-beagle displays its output in table with a single column. The user experience is likely to be improved by displaying output on multiple columns, say, one column per event field. With multiple columns the user would be able to resize columns which could improve readability of the logs. WDYT?
Regards Christian -- Ceki http://tinyurl.com/proLogback

Displaying each field in a separate columns is nice idea but I forgot about stack trace lines. Stack trace lines have to be displayed on cells spanning multiple (if not all) columns. The regular SWT Table does not offer this capability. Fortunately, the Nebula Grid widget [1] does. I could easily install it via its p2 repository. Cheers, [1] http://www.eclipse.org/nebula/widgets/grid/grid.php On 15.07.2012 16:09, ceki wrote:
On 13.07.2012 22:53, Christian Trutz wrote:
Hi together,
here my comments on Logback Beagle Release 1.0.0:
4. Introduce LabelProvider and ContentProvider for virtual table (BeagleView) 5. ITableItemStub#getText() and #getImage() --> LabelProvider 7. Remove ITableItemStubs (incl. subclasses) --> ContentProvider
Currently, logback-beagle displays its output in table with a single column. The user experience is likely to be improved by displaying output on multiple columns, say, one column per event field. With multiple columns the user would be able to resize columns which could improve readability of the logs.
WDYT?
Regards Christian
-- Ceki http://tinyurl.com/proLogback

Hi Ceki, +1 for using multiple columns and for Nebula grid table (although I've been using it ever ...) Christian 2012/7/15 ceki <ceki@qos.ch>:
Displaying each field in a separate columns is nice idea but I forgot about stack trace lines. Stack trace lines have to be displayed on cells spanning multiple (if not all) columns. The regular SWT Table does not offer this capability. Fortunately, the Nebula Grid widget [1] does. I could easily install it via its p2 repository.
Cheers,
[1] http://www.eclipse.org/nebula/widgets/grid/grid.php
On 15.07.2012 16:09, ceki wrote:
On 13.07.2012 22:53, Christian Trutz wrote:
Hi together,
here my comments on Logback Beagle Release 1.0.0:
4. Introduce LabelProvider and ContentProvider for virtual table (BeagleView) 5. ITableItemStub#getText() and #getImage() --> LabelProvider 7. Remove ITableItemStubs (incl. subclasses) --> ContentProvider
Currently, logback-beagle displays its output in table with a single column. The user experience is likely to be improved by displaying output on multiple columns, say, one column per event field. With multiple columns the user would be able to resize columns which could improve readability of the logs.
WDYT?
Regards Christian
-- Ceki http://tinyurl.com/proLogback
_______________________________________________ logback-dev mailing list logback-dev@qos.ch http://mailman.qos.ch/mailman/listinfo/logback-dev
-- Christian Trutz Von-Flotow-Straße 24 D-45772 Marl Festnetz (privat): +49 (0)2365 3840327 E-Mail: christian.trutz@gmail.com

Hi Christian, In a branch called 'nebula', I've migrated logback-beagle code to use a nebula Grid instead of a plain-old Table without adding any new features. There have been a few regressions as a result. 1) slower performance This should be mitigated by a slower update cycle but in batches. I'd like to move to producer/consumer model where the grid is updated at most every 500 ms in batches. 2) the alignment of the WARN ERROR flag is different This will be fixed as we move to multiple columns. 3) It is no longer possible to select rows by scrolling outside the Table/Grid window. However, it is possible to select rows by moving the arrow keys on the keyword. The next step is to display multiple columns with stack traces spanning the entire row. I'll keep the list posted. Cheers, -- Ceki http://tinyurl.com/proLogback On 16.07.2012 10:18, Christian Trutz wrote:
Hi Ceki,
+1 for using multiple columns and for Nebula grid table (although I've been using it ever ...)
Christian
2012/7/15 ceki <ceki@qos.ch>:
Displaying each field in a separate columns is nice idea but I forgot about stack trace lines. Stack trace lines have to be displayed on cells spanning multiple (if not all) columns. The regular SWT Table does not offer this capability. Fortunately, the Nebula Grid widget [1] does. I could easily install it via its p2 repository.
Cheers,
[1] http://www.eclipse.org/nebula/widgets/grid/grid.php
On 15.07.2012 16:09, ceki wrote:
On 13.07.2012 22:53, Christian Trutz wrote:
Hi together,
here my comments on Logback Beagle Release 1.0.0:
4. Introduce LabelProvider and ContentProvider for virtual table (BeagleView) 5. ITableItemStub#getText() and #getImage() --> LabelProvider 7. Remove ITableItemStubs (incl. subclasses) --> ContentProvider
Currently, logback-beagle displays its output in table with a single column. The user experience is likely to be improved by displaying output on multiple columns, say, one column per event field. With multiple columns the user would be able to resize columns which could improve readability of the logs.
WDYT?
Regards Christian
-- Ceki http://tinyurl.com/proLogback

Hi Ceki, please push nebula branch also to github. Christian 2012/7/16 ceki <ceki@qos.ch>:
Hi Christian,
In a branch called 'nebula', I've migrated logback-beagle code to use a nebula Grid instead of a plain-old Table without adding any new features. There have been a few regressions as a result.
1) slower performance
This should be mitigated by a slower update cycle but in batches. I'd like to move to producer/consumer model where the grid is updated at most every 500 ms in batches.
2) the alignment of the WARN ERROR flag is different
This will be fixed as we move to multiple columns.
3) It is no longer possible to select rows by scrolling outside the Table/Grid window. However, it is possible to select rows by moving the arrow keys on the keyword.
The next step is to display multiple columns with stack traces spanning the entire row. I'll keep the list posted.
Cheers,
-- Ceki http://tinyurl.com/proLogback
On 16.07.2012 10:18, Christian Trutz wrote:
Hi Ceki,
+1 for using multiple columns and for Nebula grid table (although I've been using it ever ...)
Christian
2012/7/15 ceki <ceki@qos.ch>:
Displaying each field in a separate columns is nice idea but I forgot about stack trace lines. Stack trace lines have to be displayed on cells spanning multiple (if not all) columns. The regular SWT Table does not offer this capability. Fortunately, the Nebula Grid widget [1] does. I could easily install it via its p2 repository.
Cheers,
[1] http://www.eclipse.org/nebula/widgets/grid/grid.php
On 15.07.2012 16:09, ceki wrote:
On 13.07.2012 22:53, Christian Trutz wrote:
Hi together,
here my comments on Logback Beagle Release 1.0.0:
4. Introduce LabelProvider and ContentProvider for virtual table (BeagleView) 5. ITableItemStub#getText() and #getImage() --> LabelProvider 7. Remove ITableItemStubs (incl. subclasses) --> ContentProvider
Currently, logback-beagle displays its output in table with a single column. The user experience is likely to be improved by displaying output on multiple columns, say, one column per event field. With multiple columns the user would be able to resize columns which could improve readability of the logs.
WDYT?
Regards Christian
-- Ceki http://tinyurl.com/proLogback
_______________________________________________ logback-dev mailing list logback-dev@qos.ch http://mailman.qos.ch/mailman/listinfo/logback-dev
-- Christian Trutz Von-Flotow-Straße 24 D-45772 Marl Festnetz (privat): +49 (0)2365 3840327 E-Mail: christian.trutz@gmail.com
participants (3)
-
ceki
-
Christian Trutz
-
Christian Trutz