2016-03-09 6 views
14

हम एक Django सर्वर चला रहे हैं और अपवादों को पकड़ने के लिए सेंट्री का उपयोग कर रहे हैं। जब हम संतरी कॉन्फ़िगर हम RAVEN_CONFIG हमारे विभिन्न settings.py फ़ाइलें जोड़:आप अपवाद भेजने और अभी भी काम करने के लिए एक विकास वातावरण में एक सेंट्री रेवेन क्लाइंट को कैसे कॉन्फ़िगर करते हैं?

INSTALLED_APPS = (
    'raven.contrib.django.raven_compat' 
) 

RAVEN_CONFIG = { 
    'dsn': 'https://*****@app.getsentry.com/PORT_NUMBER', 
} 

हम here कि हम सिर्फ एक खाली स्ट्रिंग DSN संपत्ति का उपयोग कर सकते पढ़ें। हालांकि जब हम चलाने python manage.py raven test दर्शाया here के रूप में हम पाते हैं:

raven.exceptions.InvalidDsn: Unsupported Sentry DSN scheme: () 

सबसे अच्छा समाधान होगा कि हम हमेशा एक रेवेन ग्राहक और सेटिंग्स फ़ाइल इस्तेमाल कर सकते हैं परिभाषित करेगा कि क्या अपवाद या नहीं भेजे जाते।

एक और आवश्यकता यह है कि हम Client मॉड्यूल का उपयोग करना और अपवादों को कैप्चर करना चाहते हैं। इस we have to set के लिए कुछ DSN मूल्य:

from raven import Client 
client = Client('https://<key>:<secret>@app.getsentry.com/<project>') 

तो एक DSN मान सेट नहीं

उत्तर

7

प्रलेखन नहीं कहा मेंDSN मान सेट करने के लिए यह सेट करने के लिए एक उदाहरण है।

In [1]: from raven import Client 

In [2]: client = Client() 
Raven is not configured (logging is disabled). Please see the documentation for more information. 

In [3]: client.captureMessage('hello') # it's a noop - no error, no capture. 

यह ध्यान रखें कि आप None पास करना चाहिए (या कुछ भी नहीं) DSN पैरामीटर और नहीं रिक्त स्ट्रिंग के रूप में महत्वपूर्ण है, अन्यथा यह InvalidDsn: Unsupported Sentry DSN scheme को जन्म देती है।

इसके अलावा, अगर आप अपने लॉग में है कि Raven is not configured (logging is disabled)... पसंद नहीं है, आप यह बहुत की तरह मूक कर सकते हैं:

>>> import logging 
>>> logging.getLogger('raven').setLevel(logging.WARNING) 
11

हम यहाँ पढ़ा है कि हम सिर्फ एक खाली स्ट्रिंग DSN संपत्ति का उपयोग कर सकते संभव नहीं है।

आप एक रिक्त स्ट्रिंग पर DSN नहीं की स्थापना की जानी चाहिए, लेकिन इसके बजाय अपने विकास सेटिंग विन्यास में DSN पहली जगह में की स्थापना का उल्लेख नहीं करते:

RAVEN_CONFIG = {} 
+0

उसे संपादित सवाल समझाने के लिए क्यों यह संभव नहीं है। टीएल; डीआर - हम पाइथन रेवेन क्लाइंट मॉड्यूल का उपयोग करना चाहते हैं जिसके लिए प्रारंभिक पर डीएसएन की आवश्यकता होती है –

संबंधित मुद्दे

 संबंधित मुद्दे