Graphite 1.1 - Graphite-web’s local_settings.py

ग्रेफाइट-वेब के local_settings.py




graphite

ग्रेफाइट-वेब के local_settings.py

ग्रेफाइट-वेब webapp settings.py मॉड्यूल से एक local_settings.py फ़ाइल आयात करने के सम्मेलन का उपयोग करता है। यह वह जगह है जहाँ ग्रेफाइट-वेब के रनटाइम कॉन्फ़िगरेशन को लोड किया जाता है। इसके अलावा वैकल्पिक स्थानीय सेटिंग्स मॉड्यूल सेट किया जा सकता है (नीचे देखें)। यह बहु-आवृत्ति परिनियोजन के लिए उपयोग करने योग्य हो सकता है।

फ़ाइल स्थान कॉन्फ़िगर करें

डिफ़ॉल्ट सेटिंग मॉड्यूल के द्वारा local_settings.py और यह आमतौर पर मुख्य graphite मॉड्यूल के भीतर स्थित होता है जहां local_settings.py का कोड रहता है। डिफ़ॉल्ट स्थापना लेआउट में यह /opt/graphite/webapp/graphite/local_settings.py । वैकल्पिक स्थानों का उपयोग इस पथ पर सहानुभूति करके किया जा सकता है या यह सुनिश्चित करके किया जा सकता है कि मॉड्यूल पायथन मॉड्यूल खोज पथ के भीतर पाया जा सकता है।

यह GRAPHITE_SETTINGS_MODULE परिवेश चर सेट करके बदला जा सकता है। उदाहरण के लिए wsgi फ़ाइल में।

सामान्य सेटिंग्स

URL_PREFIX

चूक: /

गैर-रूट स्थान पर ग्रेफाइट-वेब को तैनात करते समय URL_PREFIX सेट करें।

SECRET_KEY

डिफ़ॉल्ट: UNSAFE_DEFAULT

इस कुंजी का उपयोग ऑक्टेन टोकन, CRSF मिडलवेयर, कुकी स्टोरेज आदि में उपयोग की जाने वाली हैश की सलामी के लिए किया जाता है। इसे सभी नोड्स के बीच पहचान योग्य रूप से सेट किया जाना चाहिए यदि लोड बैलेंसर के पीछे उपयोग किया जाता है।

ALLOWED_HOSTS

चूक: *

Django में 1.5+ उन मेजबानों की सूची सेट करें जहां से आपके ग्रेफाइट के उदाहरण सुलभ हैं। देखें: https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-ALLOWED_HOSTS

समय क्षेत्र

डिफ़ॉल्ट: अमेरिका / शिकागो

अपना स्थानीय समय क्षेत्र निर्धारित करें। समय क्षेत्र ज़ोनॉन्फो नामों का उपयोग करके निर्दिष्ट किया गया है।

डेटा प्रारूप

डिफ़ॉल्ट:% m /% d

डिफ़ॉल्ट लघु दिनांक स्वरूप सेट करें। समर्थित दृश्यों के लिए स्ट्रैपटाइम (3) देखें।

DOCUMENTATION_URL

डिफ़ॉल्ट: http://graphite.readthedocs.io/

ग्रेफाइट कम्पोज़र के हेडर में उपयोग किए गए डॉक्यूमेंटेशन लिंक को ओवरराइड करता है।

LOG_RENDERING_PERFORMANCE

डिफ़ॉल्ट: गलत

rendering.log के निर्माण को ट्रिगर करता है। जो रेंडर URL API पर कॉल के लिए टाइमिंग लॉग करता है

LOG_CACHE_PERFORMANCE

डिफ़ॉल्ट: गलत

कैश के निर्माण को ट्रिगर करता है। जो कार्बन-कैश के लिए दूरस्थ कॉल के साथ-साथ रिक्वेस्ट कैश (मेमकेच्ड) हिट और मिस करता है।

DEBUG = सच

डिफ़ॉल्ट: गलत

विस्तृत Django त्रुटि पृष्ठों की पीढ़ी को सक्षम करता है। विवरण के लिए Django के दस्तावेज़ देखें।

FLUSHRRDCACHED

डिफ़ॉल्ट: <परेशान>

यदि सेट किया जाता है, तो rrdtool flushcached फ़ाइलों से डेटा लाने से पहले rrdtool flushcached निष्पादित किया जाता है। Rrdcached डेमॉन के पते या सॉकेट पर सेट करें। Ex: unix:/var/run/rrdcached.sock

MEMCACHE_HOSTS

चूक: []

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

इसे सेट किए गए मेजबानों की सूची में सेट करें। Ex: ['10.10.10.10:11211', '10.10.10.11:11211', '10.10.10.12:11211']

MEMCACHE_KEY_PREFIX

डिफ़ॉल्ट: ग्रेफाइट

ग्रेफाइट कुंजियों के लिए पूर्वनिर्मित उपसर्ग।

MEMCACHE_OPTIONS

चूक: {}

स्वीकृत विकल्प मेमकेच्ड कार्यान्वयन और Django संस्करण पर निर्भर करते हैं। Django 1.10 तक, विकल्प केवल pylibmc के लिए उपयोग किए जाते हैं। 1.11 से शुरू, विकल्प का उपयोग अजगर-मेम्केच्ड और पाइलिब्मक दोनों के लिए किया जाता है।

DEFAULT_CACHE_DURATION

डिफ़ॉल्ट: 60

कैश्ड डेटा और छवियों की डिफ़ॉल्ट समाप्ति।

DEFAULT_CACHE_POLICY

चूक: []

डिफ़ॉल्ट रूप से मीट्रिक डेटा और ग्राफ़ एक मिनट के लिए कैश किए जाते हैं। यदि परिभाषित किया गया है, तो DEFAULT_CACHE_POLICY परिणामों के लिए कैश अवधि तक मैप किए गए न्यूनतम क्वेरी समय के tuples की एक सूची है। इससे बड़ी क्वेरीज़ को लंबे समय तक कैश किया जा सकता है। सभी समय सेकंड में हैं। एक उदाहरण विन्यास:

DEFAULT_CACHE_POLICY = [(0, 60), # default is 60 seconds
                        (7200, 120), # >= 2 hour queries are cached 2 minutes
                        (21600, 180)] # >= 6 hour queries are cached 3 minutes

यह 0 सेकंड और 2 घंटे के बीच 1 मिनट के लिए किसी भी क्वेरी को कैश करेगा, 2 मिनट के लिए 2 से 6 घंटे के बीच कोई भी क्वेरी, और 3 मिनट के लिए 6 घंटे से अधिक कुछ भी। यदि नीति रिक्त या अपरिभाषित है, तो DEFAULT_CACHE_DURATION के लिए सब कुछ कैश किया जाएगा।

AUTO_REFRESH_INTERVAL

डिफ़ॉल्ट: 60

कम्पोज़र में ऑटो-रिफ्रेश फ़ीचर के लिए अंतराल, सेकंड में मापा जाता है।

MAX_TAG_LENGTH

डिफ़ॉल्ट: 50

ग्रेफाइट घटनाओं में टैग का समर्थन करने के लिए Django टैगिंग का उपयोग करता है। डिफ़ॉल्ट रूप से प्रत्येक टैग 50 वर्णों तक सीमित है।

फाइलसिस्टम पथ

ये सेटिंग्स ग्रेफाइट-वेब की अतिरिक्त कॉन्फ़िगरेशन फ़ाइलों, स्थिर सामग्री और डेटा के स्थान को कॉन्फ़िगर करती हैं। यदि ग्रेफाइट-वेब डिफ़ॉल्ट इंस्टॉलेशन लेआउट के बाहर स्थापित है, तो इन्हें समायोजित करने की आवश्यकता है।

GRAPHITE_ROOT
डिफ़ॉल्ट: / ऑप्ट / ग्रेफाइट ग्रेफाइट इंस्टॉल के लिए आधार निर्देशिका। इस सेटिंग का उपयोग डिफॉल्ट बेस डायरेक्टरी से ग्रेफाइट इनस्टॉल को शिफ्ट करने के लिए किया जाता है जो डिफॉल्ट लेआउट को बनाए रखता है। इस सेटिंग से निकले रास्तों को व्यक्तिगत रूप से भी ओवरराइड किया जा सकता है।
CONF_DIR
डिफ़ॉल्ट: GRAPHITE_ROOT / conf अतिरिक्त ग्रेफाइट-वेब कॉन्फ़िगरेशन फ़ाइलों का स्थान।
STORAGE_DIR
डिफ़ॉल्ट: GRAPHITE_ROOT / संग्रहण आधार निर्देशिका जिसमें से WHISPER_DIR, RRD_DIR, CERES_DIR, LOG_DIR और INDEX_FILE डिफ़ॉल्ट पथ संदर्भित किए जाते हैं।
STATIC_ROOT

डिफ़ॉल्ट: नीचे देखें ग्रेफाइट-वेब की स्थिर सामग्री का स्थान। यह static/ तीन मूल निर्देशिकाओं को सेटिंगफ्रेम से settings.py डिफ़ॉल्ट लेआउट में यह /opt/graphite/static

ग्रेफाइट स्थापित करने के बाद यह निर्देशिका मौजूद नहीं है। इसे निम्नलिखित कमांड के साथ आबाद करने की आवश्यकता है:

PYTHONPATH=$GRAPHITE_ROOT/webapp django-admin.py collectstatic --noinput --settings=graphite.settings

यह ग्रेफाइट-वेब और बाहरी एप्लिकेशन (अर्थात्, Django व्यवस्थापक ऐप) के लिए स्थिर फ़ाइलों को इकट्ठा करता है और उन्हें एक निर्देशिका में रखता है जिसे आपके वेब सर्वर के /static/ URL के तहत उपलब्ध होने की आवश्यकता होती है। अपाचे को कॉन्फ़िगर करने के लिए:

Alias /static/ "/opt/graphite/static"

Nginx के लिए:

location /static/ {
    alias /opt/graphite/static/;
}

वैकल्पिक रूप से, यदि आप whitenoise पाइथन पैकेज स्थापित करते हैं, तो स्टैटिक फाइल्स को सीधे ग्रेफाइट वेबैप द्वारा परोसा जा सकता है।

DASHBOARD_CONF
डिफ़ॉल्ट: CONF_DIR / डैशबोर्ड.फिन ग्रेफाइट-वेब डैशबोर्ड कॉन्फ़िगरेशन का स्थान।
GRAPHTEMPLATES_CONF
डिफ़ॉल्ट: CONF_DIR / graphTemplates.conf ग्रेफाइट-वेब ग्राफ टेम्पलेट कॉन्फ़िगरेशन का स्थान।
WHISPER_DIR
डिफ़ॉल्ट: / ऑप्ट / ग्रेफाइट / भंडारण / कानाफूसी Whisper डेटा फ़ाइलों का स्थान।
CERES_DIR
डिफ़ॉल्ट: / ऑप्ट / ग्रेफाइट / भंडारण / सेरेस सेरेस डेटा फ़ाइलों का स्थान।
RRD_DIR
डिफ़ॉल्ट: / ऑप्ट / ग्रेफाइट / भंडारण / आरआरडी डेटा फ़ाइलों का स्थान।
STANDARD_DIRS
डिफ़ॉल्ट: [WHISPER_DIR, RRD_DIR] डेटा फ़ाइलों के लिए खोजी गई निर्देशिकाओं की सूची। डिफ़ॉल्ट रूप से, यह WHISPER_DIR और RRD_DIR का मान है (यदि कठोर समर्थन का पता चला है)। यदि यह सेटिंग परिभाषित है, तो WHISPER_DIR, CERES_DIR और RRD_DIR सेटिंग्स का कोई प्रभाव नहीं होता है।
LOG_DIR
डिफ़ॉल्ट: STORAGE_DIR / log / webapp ग्रेफाइट-वेब की लॉग फ़ाइलों को लिखने के लिए निर्देशिका। इस निर्देशिका को ग्रेफाइट-वेब वेबैप चलाने वाले उपयोगकर्ता द्वारा लिखित होना चाहिए।
INDEX_FILE
डिफ़ॉल्ट: / ऑप्ट / ग्रेफाइट / भंडारण / सूचकांक खोज सूचकांक फ़ाइल का स्थान। यह फ़ाइल बिल्ड-index.sh स्क्रिप्ट द्वारा बनाई गई है और ग्रेफाइट-वेब वेबैप चलाने वाले उपयोगकर्ता द्वारा लिखित होना चाहिए।
STORAGE_FINDERS
डिफ़ॉल्ट: () विशिष्ट आवश्यकताओं को समायोजित करने के लिए, डिफ़ॉल्ट कानाफूसी की तुलना में वैकल्पिक भंडारण परत का उपयोग करना संभव है। देखें: http://graphite.readthedocs.io/en/latest/storage-backends.html
FETCH_TIMEOUT

डिफ़ॉल्ट: 6

सेकंड में डेटा के लिए टाइमआउट।

FIND_TIMEOUT

डिफ़ॉल्ट: 3

सेकंड में अनुरोध (मीट्रिक ब्राउज़िंग) खोजने के लिए समय समाप्त।

TAGDB
डिफ़ॉल्ट: 'graphite.tags.localdatabase.LocalDatabaseTagDB' टैग डेटाबेस ड्राइवर का उपयोग करने के लिए, अन्य विकल्पों में graphite.tags.redis.RedisTagDB शामिल हैं
TAGDB_REDIS_HOST
डिफ़ॉल्ट: 'लोकलहोस्ट' रेडिस होस्ट TAGDB के साथ उपयोग करने के लिए = 'graphite.tags.redis.RedisTagDB'
TAGDB_REDIS_PORT
डिफ़ॉल्ट: 6379 रेडिस पोर्ट TAGDB के साथ उपयोग करने के लिए = 'graphite.tags.redis.RedisTagDB'
TAGDB_REDIS_DB
डिफ़ॉल्ट: 0 रेडिस डेटाबेस TAGDB के साथ उपयोग करने के लिए = 'graphite.tags.redis.RedisTagDB'

कॉन्फ़िगर वेबसर्वर (Apache)

ग्रेफाइट वेब स्रोत कोड के उदाहरण निर्देशिका में एक उदाहरण example-graphite-vhost.conf फ़ाइल है। आप अपाचे को कॉन्फ़िगर करने के लिए इसका उपयोग कर सकते हैं। विभिन्न वितरणों में अपाचे को कॉन्फ़िगर करने के विभिन्न तरीके हैं। कृपया विषय पर अपने वितरण के दस्तावेज़ देखें।

उदाहरण के लिए, उबंटू उपयोग करता है /etc/apache2/sites-available और sites-enabled/ इसे संभालने के लिए ( sites-enabled/ sites-available/ साइटमैप sites-available/ फ़ाइल को साइट्स में उपलब्ध रखने के बाद उपयोग किया जाएगा /)।

अन्य लोग इस तरह httpd.conf फ़ाइल में एक निर्देश शामिल करें:

# This goes in httpd.conf
Include /usr/local/apache2/conf/vhosts.d/*.conf

कॉन्फ़िगरेशन फ़ाइलों को तब /usr/local/apache2/conf/vhosts.d/ जोड़ा जाना चाहिए। फिर भी अन्य लोग इसे संभालने में मदद नहीं कर सकते हैं और आपको सीधे अपनी http.conf फ़ाइल में कॉन्फ़िगरेशन जोड़ना होगा।

ग्रेफाइट आपके वेबसर्वर के DocumentRoot में होगा, और आपको उप-विन्यास के बिना सादे-HTML तक पहुँच प्राप्त करने की अनुमति नहीं देगा। आप पोर्ट नंबरों को बदलने या अन्य निर्देशिकाओं तक पहुंच की अनुमति देने के लिए अतिरिक्त "SetHandler None" निर्देशों का उपयोग करने के example-graphite-vhost.conf फ़ाइल को संपादित करना चाह सकते हैं।

sudo /etc/init.d/apache2 reload या sudo /etc/init.d/httpd reload sudo /etc/init.d/apache2 reload करके अपने अपाचे कॉन्फ़िगरेशन को पुनः लोड करना सुनिश्चित करें।

ईमेल कॉन्फ़िगरेशन

ये सेटिंग्स Django की ईमेल कार्यक्षमता को कॉन्फ़िगर करती हैं जिसका उपयोग रेंडर किए गए ग्राफ़ को ईमेल करने के लिए किया जाता है। इन सेटिंग्स पर आगे विस्तार के लिए Django प्रलेखन देखें।

EMAIL_BACKEND
डिफ़ॉल्ट: django.core.mail.backends.smtp.EmailBackend फर्श पर ईमेल छोड़ने के लिए django.core.mail.backends.dummy.EmailBackend पर सेट करें और प्रभावी ढंग से ईमेल सुविधाओं को अक्षम करें।
EMAIL_HOST
डिफ़ॉल्ट: लोकलहोस्ट
EMAIL_PORT
डिफ़ॉल्ट: 25
EMAIL_HOST_USER
चूक: ''
EMAIL_HOST_PASSWORD
चूक: ''
EMAIL_USE_TLS
डिफ़ॉल्ट: गलत

प्रमाणीकरण विन्यास

ये सेटिंग्स AUTHENTICATION_BACKENDS और MIDDLEWARE सेटिंग में अतिरिक्त बैकएंड सम्मिलित करती हैं । इन सूचियों में सीधे हेरफेर करके अतिरिक्त प्रमाणीकरण योजनाएं संभव हैं।

एलडीएपी

ये सेटिंग्स ग्रेफाइट द्वारा प्रदान किए गए एक कस्टम LDAP प्रमाणीकरण बैकएंड को कॉन्फ़िगर करती हैं। नीचे दी गई अतिरिक्त सेटिंग ldap.set_option का उपयोग करके LDAP मॉड्यूल के वैश्विक विकल्पों को कॉन्फ़िगर करने ldap.set_option । अधिक विवरण के लिए मॉड्यूल प्रलेखन देखें।

# SSL Example
import ldap
ldap.set_option(ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_ALLOW)
ldap.set_option(ldap.OPT_X_TLS_CACERTDIR, "/etc/ssl/ca")
ldap.set_option(ldap.OPT_X_TLS_CERTFILE, "/etc/ssl/mycert.pem")
ldap.set_option(ldap.OPT_X_TLS_KEYFILE, "/etc/ssl/mykey.pem")
USE_LDAP_AUTH
डिफ़ॉल्ट: गलत
LDAP_SERVER

चूक: ''

LDAP सर्वर को यहाँ या वैकल्पिक रूप से LDAP_URI में LDAP_URI

LDAP_PORT

डिफ़ॉल्ट: 389

LDAP सर्वर पोर्ट को यहाँ या वैकल्पिक रूप से LDAP_URI में LDAP_URI

LDAP_URI

डिफ़ॉल्ट: कोई नहीं

LDAP सर्वर URI सेट करता है। जैसे ldaps://ldap.mycompany.com:636

LDAP_SEARCH_BASE

चूक: ''

LDAP खोज आधार सेट करता है। जैसे OU=users,DC=mycompany,DC=com

LDAP_BASE_USER

चूक: ''

सर्वर के साथ बाइंड करने के लिए आधार LDAP उपयोगकर्ता सेट करता है। जैसे CN=some_readonly_account,DC=mycompany,DC=com

LDAP_BASE_PASS

चूक: ''

आधार LDAP उपयोगकर्ता के पासवर्ड को सर्वर के साथ बाँधने के लिए सेट करता है।

LDAP_USER_QUERY

चूक: ''

उपयोगकर्ता ऑब्जेक्ट के साथ %s प्रतिस्थापित करने के लिए LDAP क्वेरी सेट करता है जहां उपयोगकर्ता आईडी। जैसे (username=%s) या (sAMAccountName=%s) (सक्रिय निर्देशिका)।

LDAP_USER_DN_TEMPLATE:

चूक: ''

उस खाता के लिए एक हार्डकोड उपयोगकर्ता नाम और पासवर्ड का उपयोग करने के बजाय, जो LDAP सर्वर से बांधता है, आप उस उपयोगकर्ता के क्रेडेंशियल्स का उपयोग कर सकते हैं जो ग्रेफाइट में लॉग इन करने की कोशिश करता है। यह वह टेम्पलेट है जो पूर्ण डीएन को बांधने के लिए बनाता है।

अन्य प्रमाणीकरण

USE_REMOTE_USER_AUTHENTICATION

डिफ़ॉल्ट: गलत

Django RemoteUserBackend प्रमाणीकरण बैकएंड के उपयोग को सक्षम करता है। अधिक जानकारी के लिए Django प्रलेखन देखें।

REMOTE_USER_BACKEND

डिफ़ॉल्ट: "django.contrib.auth.middleware.RemoteUserBackend"

वैकल्पिक दूरस्थ प्रमाणीकरण बैकएंड के उपयोग को सक्षम करता है।

REMOTE_USER_MIDDLEWARE

डिफ़ॉल्ट: "django.contrib.auth.middleware.RemoteUserMiddleware"

वैकल्पिक दूरस्थ प्रमाणीकरण मिडलवेयर के उपयोग को सक्षम करता है।

LOGIN_URL

डिफ़ॉल्ट: / खाता / लॉगिन

कंपोज़र इंटरफ़ेस में लॉगिन लिंक में लिंक किए गए URL को संशोधित करता है। यह उपयोगकर्ताओं को बाहरी प्रमाणीकरण लिंक जैसे कि दूरस्थ उपयोगकर्ता प्रमाणीकरण या बैकेंड जैसे django_openid_auth लिए निर्देशित करने के लिए उपयोगी है।

डैशबोर्ड प्राधिकरण कॉन्फ़िगरेशन

ये सेटिंग नियंत्रित करती हैं जिन्हें डैशबोर्ड को सहेजने और हटाने की अनुमति है। डिफ़ॉल्ट रूप से कोई भी इन क्रियाओं को कर सकता है, लेकिन DASHBOARD_REQUIRE_AUTHENTICATION सेट करके, उपयोगकर्ताओं को कम से कम ऐसा करने के लिए लॉग इन होना चाहिए। अन्य दो सेटिंग्स आगे प्रतिबंध लगाने की अनुमति देती हैं जो इन कार्यों को करने में सक्षम हैं। जो उपयोगकर्ता उपयुक्त रूप से अधिकृत नहीं हैं, वे अभी भी डैशबोर्ड का उपयोग और परिवर्तन कर सकेंगे, लेकिन डैशबोर्ड में परिवर्तन सहेजने या हटाने में सक्षम नहीं होंगे।

DASHBOARD_REQUIRE_AUTHENTICATION

डिफ़ॉल्ट: गलत

यदि सही पर सेट किया गया है, तो डैशबोर्ड को केवल उपयोगकर्ताओं द्वारा लॉग इन करके बचाया और हटाया जा सकता है।

DASHBOARD_REQUIRE_EDIT_GROUP

डिफ़ॉल्ट: कोई नहीं

यदि उपयोगकर्ता समूह के नाम पर सेट किया गया है, तो डैशबोर्ड को केवल लॉग-इन उपयोगकर्ताओं द्वारा सहेजा और हटाया जा सकता है, जो इस समूह के सदस्य हैं। समूह Django व्यवस्थापक ऐप या LDAP में सेट किए जा सकते हैं।

ध्यान दें कि DASHBOARD_REQUIRE_AUTHENTICATION को सत्य पर सेट किया जाना चाहिए - यदि नहीं, तो इस सेटिंग को अनदेखा कर दिया जाता है।

DASHBOARD_REQUIRE_PERMISSIONS

डिफ़ॉल्ट: गलत

यदि सही पर सेट किया गया है, तो डैशबोर्ड को केवल उपयुक्त (परिवर्तन या हटाएं) अनुमति वाले उपयोगकर्ताओं द्वारा बचाया या हटाया जा सकता है (जैसा कि Django एडमिन ऐप में सेट किया गया है)। ये अनुमतियाँ उपयोगकर्ता या समूह स्तर पर सेट की जा सकती हैं। ध्यान दें कि Django की 'ऐड' अनुमति का उपयोग नहीं किया गया है।

ध्यान दें कि DASHBOARD_REQUIRE_AUTHENTICATION को सत्य पर सेट किया जाना चाहिए - यदि नहीं, तो इस सेटिंग को अनदेखा कर दिया जाता है।

डेटाबेस कॉन्फ़िगरेशन

निम्न Django डेटाबेस सेटिंग्स कॉन्फ़िगर करता है। ग्रेफाइट डेटाबेस का उपयोग उपयोगकर्ता प्रोफाइल, डैशबोर्ड और ईवेंट कार्यक्षमता के लिए करता है। ग्रेफाइट डिफ़ॉल्ट रूप से STORAGE_DIR/graphite.db पर स्थित एक SQLite डेटाबेस फ़ाइल का उपयोग करता है। यदि कई ग्रेफाइट-वेब इंस्टेंसेस चल रहे हैं, तो PostgreSQL या MySQL जैसे डेटाबेस की आवश्यकता होती है ताकि सभी इंस्टेंस समान डेटा स्रोत साझा कर सकें।

ध्यान दें

Django 1.2 के रूप में, डेटाबेस कॉन्फ़िगरेशन पुराने DATABASE_* प्रारूप के बजाय DATABASES शब्दकोश द्वारा निर्दिष्ट किया गया है। उपयोगकर्ता के पास एक कार्यशील डेटाबेस रखने के लिए नए विनिर्देशन का उपयोग करना चाहिए।

DATABASES सेटिंग के पूर्ण प्रलेखन के लिए Django प्रलेखन देखें।

ध्यान दें

याद रखें, एक नया डेटाबेस PYTHONPATH=$GRAPHITE_ROOT/webapp django-admin.py migrate --settings=graphite.settings --run-syncdb करने के लिए प्रारंभिक स्कीमा बनाने के लिए PYTHONPATH=$GRAPHITE_ROOT/webapp django-admin.py migrate --settings=graphite.settings --run-syncdb चलाने की आवश्यकता होती है।

ध्यान दें

यदि आप एक कस्टम डेटाबेस बैकएंड (SQLite के अलावा) का उपयोग कर रहे हैं, तो आपको पहले एक $ GRAPHITE_ROOT / webapp / ग्रेफाइट / local_settings.py फ़ाइल बनाना होगा जो डेटाबेस से संबंधित सेटिंग्स सेटिंग्स से ओवरराइड करता है। $ GRAPHITE_ROOT / webapp / ग्रेफाइट / local_settings.py.example को एक टेम्पलेट के रूप में उपयोग करें।

यदि आप समस्याओं का सामना कर रहे हैं, तो /opt/graphite/webapp/graphite/local_settings.py में निम्न पंक्ति को अनलाइक करें:

# DEBUG = True

और अपने वेब लॉग्स की समीक्षा करें। यदि आप डिफ़ॉल्ट ग्रेफाइट-उदाहरण-vhost.conf का उपयोग कर रहे हैं, तो आपके लॉग / ऑप्ट / ग्रेफाइट / स्टोरेज / लॉग / वेबएप / में मिल जाएंगे।

यदि आप डिफ़ॉल्ट SQLite डेटाबेस का उपयोग कर रहे हैं, तो आपके वेबसर्वर को डेटाबेस फ़ाइल को पढ़ने और लिखने के लिए अनुमतियों की आवश्यकता होगी। इसलिए, उदाहरण के लिए, यदि आपका वेब एप 'कोई नहीं' उपयोगकर्ता के रूप में अपाचे में चल रहा है, तो आपको इस तरह की अनुमतियों को ठीक करना होगा:

sudo chown nobody:nobody /opt/graphite/storage/graphite.db

क्लस्टर कॉन्फ़िगरेशन

ये सेटिंग्स क्लस्टर किए गए उपयोग के लिए ग्रेफाइट वेब को कॉन्फ़िगर करती हैं। जब CLUSTER_SERVERS सेट होता है, तो मीट्रिक ब्राउज़ और रेंडर अनुरोधों के कारण मैट्रिक्स मिलान करने के लिए CLUSTER_SERVERS में अन्य webapps को क्वेरी करने के लिए webapp का कारण होगा। यदि एक से अधिक क्लस्टर सर्वर एक ही श्रृंखला लौटाते हैं तो ग्रेफाइट या तो प्रतिक्रियाओं को मर्ज कर सकता है या सबसे अच्छी प्रतिक्रिया चुन सकता है।

CLUSTER_SERVERS

चूक: []

एक क्लस्टर में दूरस्थ ग्रेफाइट वेब के आईपी पते और बंदरगाहों की सूची। इन सर्वरों में से प्रत्येक को सेवा करने के लिए मीट्रिक डेटा तक स्थानीय पहुंच होनी चाहिए। Ex: ["10.0.2.2:80", " http://10.0.2.3:80?format=pickle&local=1 "]

क्लस्टर सर्वर परिभाषाएँ वैकल्पिक रूप से एक प्रोटोकॉल ( http:// या http:// ) और / या अतिरिक्त कॉन्फ़िगरेशन पैरामीटर शामिल कर सकती हैं।

फॉर्मेट पैरामीटर को इंट्रा-क्लस्टर खोजने और अनुरोधों को प्रस्तुत करने के लिए उपयोग किए गए एन्कोडिंग को नियंत्रित करने के लिए अचार (डिफ़ॉल्ट) या मेसपैक पर सेट किया जा सकता है।

स्थानीय पैरामीटर को 1 (डिफ़ॉल्ट) या 0 पर सेट करने के लिए सेट किया जा सकता है, यह नियंत्रित करने के लिए कि क्या क्लस्टर सर्वर केवल स्थानीय खोजकर्ताओं से परिणाम लौटाएं, या उनके दूरस्थ खोजकर्ताओं के अनुरोध को प्रशंसक बनाएं।

USE_WORKER_POOL

डिफ़ॉल्ट: सच है

वर्कर थ्रेड्स का एक पूल बनाता है जिससे कार्यों को भेजा जा सकता है। इसका मतलब यह है कि अगर कई CLUSTER_SERVERS और / या STORAGE_FINDERS हैं, क्योंकि तब उनके साथ संचार को समानांतर किया जा सकता है। थ्रेड्स की संख्या के बराबर है: मिनट (खोजने वालों की संख्या, POOL_MAX_WORKERS)

थ्रेड्स की संख्या में वृद्धि करते समय सावधान रहें, विशेष रूप से यदि आपकी कई ग्रेफाइट-वेब प्रक्रियाएं (uwsgi या समान के साथ) शुरू होती हैं, क्योंकि इससे मेमोरी की खपत बढ़ जाएगी (और कनेक्शन के लिए कनेक्शन की संख्या)।

POOL_MAX_WORKERS

डिफ़ॉल्ट: 10

कार्यकर्ता सूत्र की अधिकतम संख्या जो बनाई जानी चाहिए।
REMOTE_RETRY_DELAY

डिफ़ॉल्ट: 60

समय समाप्त होने के अनुरोध के बाद वेबएप को ब्लैकलिस्ट करने के लिए सेकंड में समय।

FIND_CACHE_DURATION

डिफ़ॉल्ट: 300

दूरस्थ मीट्रिक को कैश करने का समय सेकंड में परिणाम पाता है।

MAX_FETCH_RETRIES

डिफ़ॉल्ट: 2

एक विशिष्ट दूरस्थ डेटा लाने के लिए रिट्रीट की संख्या।

FIND_TOLERANCE

डिफ़ॉल्ट: FIND_TOLERANCE = 2 * FIND_CACHE_DURATION

यदि क्वेरी पूरी तरह से FIND_TOLERANCE विंडो के भीतर नहीं आती है तो हम विंडो की उपेक्षा करते हैं। यह कार्बन के कैश स्केच नोड.इन्टरवाइस के कारण होने वाले अनावश्यक रिमोट फ़िंच को रोकता है, यह दिखाते हुए कि रिमोट सिस्टम में हमारे पास स्थानीय स्तर पर डेटा नहीं है, जो हम शायद करते हैं।

REMOTE_STORE_MERGE_RESULTS

डिफ़ॉल्ट: सच है

एक सुसंगत हैश क्लस्टर के पुनर्संतुलन के दौरान, प्रतिकृति> 1 क्लस्टर पर विभाजन की घटना के बाद या अन्य मामलों में हमें एक मीट्रिक कुंजी के लिए कई TimeSeries डेटा प्राप्त हो सकता है। "सबसे पूर्ण" एक (प्री-0.9.14 व्यवहार) चुनने के बजाय उन्हें एक साथ मिलाएं।

REMOTE_STORE_USE_POST

डिफ़ॉल्ट: गलत

यह सेटिंग दूरस्थ अनुरोधों के लिए GET के बजाय POST प्रश्नों को सक्षम करती है।

REMOTE_STORE_FORWARD_HEADERS

चूक: []

CLUSTER_SERVERS में दूरस्थ वेबएप सर्वर के लिए अनुरोध करते समय इस होस्ट से आगे आने वाले HTTP हेडर की एक सूची प्रदान करें।

REMOTE_EXCLUDE_LOCAL

डिफ़ॉल्ट: गलत

यह पता लगाने की कोशिश करें कि क्लस्टर सर्वर लोकलहोस्ट है और क्वेरीज़ को फॉरवर्ड नहीं करते हैं

REMOTE_RENDERING

डिफ़ॉल्ट: गलत

दूरस्थ ग्रेफाइट वेबप पर चित्र और डेटा (JSON, et al।) के दूरस्थ प्रतिपादन को सक्षम करें। यदि यह सक्षम है, तो RENDERING_HOSTS को भी इसके अनुसार सक्षम और कॉन्फ़िगर किया जाना चाहिए।

RENDERING_HOSTS

चूक: []

रेंडरिंग करने के लिए उपयोग किए जाने वाले आईपी पते और दूरस्थ ग्रेफाइट वेबैप के बंदरगाहों की सूची। प्रत्येक वेबऐप में ग्रेफाइट वेबप के समान डेटा का उपयोग होना चाहिए जो साझा स्थानीय भंडारण के माध्यम से या CLUSTER_SERVERS माध्यम से इस सेटिंग का उपयोग करता है। Ex: ["10.0.2.4:80", "10.0.2.5:80"]

REMOTE_RENDER_CONNECT_TIMEOUT

डिफ़ॉल्ट: 1.0

सेकंड में दूरस्थ रेंडरिंग अनुरोध के लिए कनेक्शन टाइमआउट।

CARBONLINK_HOSTS

डिफ़ॉल्ट: [127.0.0.1:7002]

यदि इस मशीन पर कई कार्बन-कैश चल रहे हैं, तो प्रत्येक को यहां सूचीबद्ध किया जाना चाहिए, ताकि ग्रेफाइट वेब डेटा के लिए कैश को क्वेरी कर सके जो अभी तक कायम नहीं है। मल्टी-होस्ट क्लस्टर सेटअप में दूरस्थ कार्बन-कैश इंस्टेंसेस को यहां सूचीबद्ध नहीं किया जाना चाहिए। उदाहरण नामों को लागू के रूप में सूचीबद्ध किया जाना चाहिए। Ex: ['127.0.0.1.17002:a','127.0.0.1:7102:b', '127.0.0.1:7202:c']

CARBONLINK_TIMEOUT

डिफ़ॉल्ट: 1.0

कार्बन-कैश कैश प्रश्नों के लिए सेकंड में टाइमआउट।

CARBONLINK_HASHING_TYPE

डिफ़ॉल्ट: carbon_ch

संभावित मान: carbon_ch, fnv1a_ch

डिफ़ॉल्ट कार्बन_च ग्रेफाइट का पारंपरिक सुसंगत-हैशिंग कार्यान्वयन है। वैकल्पिक रूप से, आप fnv1a_ch का उपयोग कर सकते हैं, जो कार्बन-सी-रिले रिले परियोजना द्वारा की पेशकश फाउलर- नो -वो हैश फ़ंक्शन (FNV-1a) हैश कार्यान्वयन का समर्थन करता है।

CARBON_METRIC_PREFIX:

डिफ़ॉल्ट: कार्बन

आंतरिक कार्बन सांख्यिकी के लिए उपसर्ग।

INTRACLUSTER_HTTPS

डिफ़ॉल्ट: गलत

यह सेटिंग नियंत्रित करती है कि क्या https का उपयोग क्लस्टर सदस्यों के बीच संवाद करने के लिए किया जाता है जिसमें स्पष्ट प्रोटोकॉल निर्दिष्ट नहीं है।

अतिरिक्त Django सेटिंग्स

Django के आगे अनुकूलन की अनुमति देने के लिए नाम स्थान में ग्रेफाइट-वेब आयात app_settings.py साथ भेज दिया गया app_settings.py । यह मानक Django सेटिंग्स की स्थापना या अनुकूलन और अतिरिक्त middleware की स्थापना और कॉन्फ़िगरेशन की अनुमति देता है।

इन सेटिंग्स में हेरफेर करने के लिए, सुनिश्चित करें कि app_settings.py इस तरह से आयात किया जाता है:

from graphite.app_settings import *

हेरफेर करने के लिए सबसे आम सेटिंग्स INSTALLED_APPS , MIDDLEWARE और AUTHENTICATION_BACKENDS