[vtk-developers] [EXTERNAL] Support for logging

Scott, W Alan wascott at sandia.gov
Tue Aug 7 12:38:06 EDT 2018


Great idea.  For someone that doesn't know where to place breakpoints, but has to try to debug datasets that cannot be sent to Kitware, this would be incredibly valuable.

Alan

________________________________________
From: vtk-developers <vtk-developers-bounces at public.kitware.com> on behalf of Utkarsh Ayachit <utkarsh.ayachit at kitware.com>
Sent: Tuesday, August 7, 2018 8:29 AM
To: vtk-developers at vtk.org
Subject: [EXTERNAL] [vtk-developers] Support for logging

Folks,

Of late I've been finding myself needing some sort of logging support
when debugging complex issues in ParaView and the more I thought about
it, the more I realized it should really be in VTK too and hence this
email.

I wonder what folks thought about adding support for generating logs
to VTK. This goes beyond the vtkTimerLog we currently have.
vtkTimerLog is great to log filter execution times etc. but it lacks
features like levels of verbosity, among others that are needed in a
general purpose logging infrastructure. We could potentially make
vtkTImerLog use the chosen logging infrastructure under the covers,
but that's a separate discussion and not entirely relevant to the
topic at hand.

To illustrate a case where this is useful in VTK: has anyone ever
tried to debug why a filter is re-executing? One often ends up in the
weeds of vtkExecutive and subclass and is fraught with frustration.
Now, imagine that the vtkExecutive subclass just generated a log
indicate which pipeline pass it's executing, and why -- things would
be so easy! The log could be added only at higher levels of verbosity,
thus not pollute application logs with internal details, but would be
easily generate-able/accessible when needed. Same is true for
rendering pipelines, determining if the VBOs, for example, are being
regenerated and why can be easily logged and aid tracking down
performance issues.

If we are convinced of the need for a logging support, then the
question becomes which logging library to use? I have been using for
loguru[1] with great success for a multi-threaded app. I love it's
output generation style, plus how well it handles logs from multiple
threads. It's C++ friendly, header only, minimal external
dependencies.

Thoughts? Suggestions?

Utkarsh


[1] https://github.com/emilk/loguru
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://public.kitware.com/mailman/listinfo/vtk-developers



More information about the vtk-developers mailing list