Uploaded image for project: 'Daffodil'
  1. Daffodil
  2. DFDL-226

Enhance logger to allow selective logging by package and class

XMLWordPrintableJSON

    • Icon: Improvement Improvement
    • Resolution: Won't Fix
    • Icon: Major Major
    • parser-tier-1
    • None
    • Back End
    • None

      New logger is nice, but you either see all Debug messages, nor none.

      We need an API by which one can tell it to log selectively.

      I suggest there is a global mutable set of package/class specifiers, and when a logging call is made, a check is done
      (1) is any logging enabled for this loglevel?
      (2) if so, is selective logging enabled at all?
      (3) if so, is this class or its package in the set of selected loggers?

      This would allow code module by code-module control over what debug messages one wants, by making some sort of api call like

      log.enableSelective(this) // on a class where you want to see the log calls

      Logger.enableSelective(daffodil.dsom) // e.g., a whole package

      The specific name of the functions is not the issue here, it's that there's a couple of different idioms for establishing what is selected.

      Oh, and these calls probably need the LogLevel specified as well. I.e., I want debug logging from package X, and Info logging from package y, and only errors and warnings from everything else.

      These can be embedded in the code, or called from outside (as options to the compile/runtime API.

              Unassigned Unassigned
              mbeckerle.dfdl Mike Beckerle
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: