I've skimmed the docs at both TG and Pylons websites and I'm just not
getting it apparently....

I get all sorts of good logging and tracing when I run my app from
paster server development.ini, but as soon as it's deployed via apache/
modwsgi, it's all lost. I've tried enabling the WSGIErrorsHandler as
per the directions and ultimately, I'd like to be using the chainsaw
log viewer as outlined 
http://pylonshq.com/docs/en/0.9.7/logging/#logging-to-wsgi-errors
but if I can't seem to even get the normal messages to show in the
apache logs I figure I'm sunk before I even begin.

Is there something obvious I'm missing?? I can't find the access.log
file anywhere. I can connect with Chainsaw for the chainsaw handler,
but receive nothing. The only funny thing I can think of with my
config is that it's being served over SSL.

Here's my development.ini
#
# pylotengine - Pylons development environment configuration
#
# The %(here)s variable will be replaced with the parent directory of
this file
#
# This file is for deployment specific config options -- other
configuration
# that is always required for the app is done in the config
directory,
# and generally should not be modified by end users.

[DEFAULT]
debug = false
# Uncomment and replace with the address which should receive any
error reports
#email_to = supp...@mecom
smtp_server = localhost
error_email_from = pa...@localhost

[server:main]
use = egg:Paste#http
host = 0.0.0.0
port = 8500

[app:main]
use = egg:pylotengine
full_stack = true
#lang = ru
cache_dir = %(here)s/data
beaker.session.key = pylotengine
beaker.session.secret = somesecret
handle_status_codes = []

# If you'd like to fine-tune the individual locations of the cache
data dirs
# for the Cache data, or the Session saves, un-comment the desired
settings
# here:
#beaker.cache.data_dir = %(here)s/data/cache
#beaker.session.data_dir = %(here)s/data/sessions

#echo shouldn't be used together with the logging module.
sqlalchemy.echo = false
sqlalchemy.echo_pool = false
sqlalchemy.pool_recycle = 3600

# if you are using Mako and want to be able to reload
# the mako template from disk during the development phase
# you should say 'true' here
# This option is only used for mako templating engine
# WARNING: if you want to deploy your application using a zipped egg
# (ie: if your application's setup.py defines zip-safe=True, then you
# MUST put "false" for the production environment because there will
# be no disk and real files to compare time with.
# On the contrary if your application defines zip-safe=False and is
# deployed in an unzipped manner, then you can leave this option to
true
templating.mako.reloadfromdisk = true

# the compiled template dir is a directory that must be readable by
your
# webserver. It will be used to store the resulting templates once
compiled
# by the TemplateLookup system.
# During development you generally don't need this option since
paste's HTTP
# server will have access to you development directories, but in
production
# you'll most certainly want to have apache or nginx to write in a
directory
# that does not contain any source code in any form for obvious
security reasons.
#
#templating.mako.compiled_templates_dir = /some/dir/where/webserver/
has/access

# WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION
ENVIRONMENT*
# Debug mode will enable the interactive debugging tool, allowing
ANYONE to
# execute malicious code after an exception is raised.
#set debug = false

# Logging configuration
# Add additional loggers, handlers, formatters here
# Uses python's logging config file format
# http://docs.python.org/lib/logging-config-fileformat.html

use = config:app.ini

filter-with = translogger

[filter:translogger]
use - egg:Paste#translogger
setup_console_handler = False

[loggers]
keys = root, pylotengine, sqlalchemy, auth, wsgi

[handlers]
keys = console, chainsaw

[formatters]
keys = generic, xmllayout, accesslog

# If you create additional loggers, add them as a key to [loggers]
[logger_root]
level = NOTSET
handlers = console, chainsaw

[logger_wsgi]
level = INFO
handlers = handler_accesslog
qualname = wsgi
propagate = 0

[logger_pylotengine]
level = DEBUG
handlers =
qualname = pylotengine

[logger_sqlalchemy]
level = DEBUG
handlers =
qualname = sqlalchemy.engine
# "level = INFO" logs SQL queries.
# "level = DEBUG" logs SQL queries and results.
# "level = WARN" logs neither.  (Recommended for production systems.)


# A logger for authentication, identification and authorization --
this is
# repoze.who and repoze.what:
[logger_auth]
level = WARN
handlers =
qualname = auth

# If you create additional handlers, add them as a key to [handlers]
[handler_console]
class = StreamHandler
args = (sys.stderr,)
level = INFO
formatter = generic

[handler_accesslog]
class = FileHandler
args = ('access.log','a')
level = INFO
formatter = accesslog

[handler_chainsaw]
class = xmllayout.RawSocketHandler
args = ('localhost', 4448)
level = NOTSET
formatter = xmllayout

# If you create additional formatters, add them as a key to
[formatters]
[formatter_generic]
format = %(asctime)s,%(msecs)03d %(levelname)-5.5s [%(name)s] %
(message)s
datefmt = %H:%M:%S

[formatter_xmllayout]
class = xmllayout.XMLLayout

[formatter_accesslog]
format = %(message)s

-- 
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/turbogears?hl=en.

Reply via email to