Hi Jürgen, Thanks! I'll try that out.
Darryl On Fri, 2007-11-23 at 11:00 +0100, Jürgen Kartnaller wrote: > In your buildout you do : > > [instance] > recipe = zc.zope3recipes:instance > application = app > address = 8080 > zope.conf = > > <product-config my-config-name> > storagedir ${buildout:directory}/parts/log > </product-config> > > > If you need the log dir precreated you do : > > [extfiledir] > recipe = lovely.recipe:mkdir > path = parts/log > > > To access the product config from python : > > from zope.app.appsetup.product import getProductConfiguration > > config = getProductConfiguration('my-config-name') > if config is not None: > path = config.get('logpath') > > > Use your utility name as "my-config-name". > > > Jürgen > > Darryl Cousins wrote: > > Hi, > > > > I have a custom logger in a package registered with utility > > > > <zope:utility factory=".logger.MyLogger" name="logger" /> > > > > In the code it sets itself a logfile to write to, up to now that has > > been in a 'log' directory in the package itself. > > > > Now I want to use a log file which is in the buildout of the > > application. How could I go about finding that directory from python > > code in the package? > > > > The only route that I have come up with so far is to write a > > meta:directive which I can use to register the logging utility with a > > file path. Something like: > > > > <meta:directive > > namespace="http://namespaces.zope.org/rdb" > > name="provideLogger" > > schema=".zcml.IProvideLoggerDirective" > > handler=".zcml.loggerhandler" > > /> > > > > Which I could use like > > > > <provideLogger component=".logger.MyLogger" > > log="/path/to/log/file" /> > > > > But there may be a better/easier way. Suggestions? > > > > Regards, > > Darryl > > _______________________________________________ > Zope3-users mailing list > Zope3-users@zope.org > http://mail.zope.org/mailman/listinfo/zope3-users _______________________________________________ Zope3-users mailing list Zope3-users@zope.org http://mail.zope.org/mailman/listinfo/zope3-users