logbox categories - what am i missing

I'm using coldbox 3.m5 with coldfusion 8.

I'm trying to have a module loaded into coldbox have its logger log
into a different file. So I have setup two Appenders, one for the
main coldbox app and one for the module, i have the root logging to
the main log file - working great!

Now I'm trying to add a category to log only a certain model in a
module, directly below... The category i got from tracing the
#getMetadata(this).name# out within the model.

logBox.categories["sandbox.cbTestModule.model.model11"] = { levelMin =
"DEBUG", levelMax = "FATAL", appenders="cbTestModuleLog"};

Unfortunately, the module's logger is still logging to the main sites
log or appender "cbTestSiteLog"..

Am I missing something?

** FULL logBoxConfig **
  logBox = {
    appenders = {
      cbTestSiteLog = {
        class="coldbox.system.logging.appenders.AsyncRollingFileAppender",
        properties={
          filePath="/#appMapping#/logs",
          autoExpand="true",
          fileMaxSize="3000",
          fileMaxArchives="5",
          fileName="cbTestSiteLog"
        }
      },
      cbTestModuleLog = {
        class="coldbox.system.logging.appenders.AsyncRollingFileAppender",
        properties={
          filePath="/#appMapping#/logs",
          autoExpand="true",
          fileMaxSize="3000",
          fileMaxArchives="5",
          fileName="cbTestModuleLog"
        }
      },
      ColdBoxTracerAppender = {
        class="coldbox.system.logging.appenders.ColdBoxTracerAppender"
      }
    },
    root = {
      levelMin="FATAL",
      levelMax="DEBUG",
      appenders="cbTestSiteLog"
    }
  };
  logBox.categories = StructNew();
  logBox.categories["coldbox.system"] = { levelMin = "OFF", levelMax =
"OFF"};
  logBox.categories["sandbox.cbTestModule.model.model11"] = { levelMin
= "DEBUG", levelMax = "FATAL", appenders="cbTestModuleLog"};

More information.

I'm injecting the logger into the MODEL with
<cfproperty name="logger" type="coldbox:plugin:logger"
scope="instance">

and when i trace the following inside my model where logger is
injected
<cfset
variables.instance.logger.tracer("#variables.instance.logger.getLogger().getCategory()#") /

i get "cbTestSite"

any ideas?

Hmm, it should work like that, as long as the category class matches the class path. How are you getting the logger in your model?

Luis F. Majano
President
Ortus Solutions, Corp

ColdBox Platform: http://www.coldbox.org
Linked In: http://www.linkedin.com/pub/3/731/483
Blog: http://www.luismajano.com
IECFUG Manager: http://www.iecfug.com