मैं एक पिलोन ऐप पर काम कर रहा हूं जो अपाचे के शीर्ष पर mod_wsgi के साथ चलता है। मैं लॉगिंग संदेश भेजना चाहता हूं कि मेरा ऐप अपाचे के लॉग के बजाय, मेरे ऐप की निर्देशिका में फ़ाइलों को जेनरेट करता है। इसके अलावा, मैं एक सापेक्ष पथ के माध्यम से लॉगफाइल का स्थान निर्दिष्ट करना चाहता हूं ताकि मेरे ऐप को अन्य लोगों के सर्वर पर तैनात करना आसान हो जाएगा। अभी मैं फाइलों पर लॉग इन कर सकता हूं, लेकिन केवल एक नाजुक पूर्ण पथ के माध्यम से।फ़ाइलों को लॉग इन करने के लिए सापेक्ष पथ का उपयोग करना Pylons 'develop.ini
# Logging configuration
[loggers]
keys = root, routes, myapp, sqlalchemy, debugging-logger
[handlers]
keys = console, debugging-logger-file
[formatters]
keys = generic
[logger_debugging-logger]
level = DEBUG
handlers = debugging-logger-file
qualname = myapp.controllers.logging-test-controller.debugging-logger
[handler_debugging-logger-file]
class = FileHandler
args = ('/var/pylons/myapp/logs/myapp-debugging-errors.log', 'a')
level = DEBUG
formatter = generic
हालांकि .ini सहायक में% (यहाँ)% (यहाँ) का उपयोग वर्तमान पथ का उल्लेख करने के है, s का उपयोग करके सलाह देता है:
यहाँ मेरी development.ini फ़ाइल के प्रासंगिक हिस्सा है "args = ('foo')" त्रुटि हैंडलर की रेखा उस तरीके से व्यवहार नहीं करती जिसकी मैं अपेक्षा करता हूं। इस आईएनआई फ़ाइल का सिंटैक्स documented on the Paste Deploy site है, लेकिन यह निर्दिष्ट नहीं करता है कि उद्धृत तारों के संबंध में% (यहां) का उपयोग कैसे किया जा सकता है।
वर्तमान पथ निर्दिष्ट करने के लिए "args = ('foo')" पंक्ति में मुझे किस वाक्यविन्यास का उपयोग करना चाहिए?
आह, जो मुझे मस्तिष्क-कार्य कूल्हे पर मिला। धन्यवाद। मैं अब के लिए पहला विकल्प उपयोग कर रहा हूं - यह कम से कम मुझे गैर-DRY होने से रोकता है, क्योंकि मैं कुछ अलग लॉग फ़ाइलों में संदेशों को विभाजित कर रहा हूं। –