2014-04-16 8 views
5

लॉगस्टैश के लिए कॉन्फ़िगरेशन बनाने का प्रयास करना जो मल्टीलाइन स्टैकट्रैस समेत सेलेरी के लॉग प्रारूप को सही ढंग से पार करता है। कुछ बिंदु मैं Grok एकल लाइन उत्पादन को पार्स करने के लिए तैयार हो गया परसेलेरी स्टैकट्रैस के लिए लॉगस्टैश मल्टीलाइन कोडेक

[2014-04-15 15:11:27,350: DEBUG/Worker-4] Doing some work. 
[2014-04-15 15:11:27,362: ERROR/MainProcess] Task core.tasks.sometask[92dc34bd-8139-4f98-b359-d78caf68381d] raised unexpected: ValueError('Foobar',) 
Traceback (most recent call last): 
    File "./venvs/backend-33/lib/python3.4/site-packages/celery/app/trace.py", line 238, in trace_task 
    R = retval = fun(*args, **kwargs) 
    File "./venvs/backend-33/lib/python3.4/site-packages/celery/app/trace.py", line 416, in __protected_call__ 
    return self.run(*args, **kwargs) 
    File "util.py", line 151, in wrapper 
    rv = func(self, *args, **kwargs) 
    File "tasks.py", line 104, in do_something_useful 
    raise ValueError('Foobar') 
ValueError: Foobar 

, लेकिन बहु एक समस्या है: प्रवेश उत्पादन का एक उदाहरण इस प्रकार दिखाई देंगे। यह विन्यास:

input { 
    stdin { 
     codec => multiline { 
      'negate' => true 
      'pattern' => '^\[' 
      'what' => 'previous' 
     } 
    } 
} 

output { 
    stdout { 
     codec => rubydebug 
    } 
} 

बहु कोडेक के लिए Logstash प्रलेखन से सीधे कम या ज्यादा लिया जाता है, जब मैं इसे चलाने के लिए, यह बिल्कुल नहीं उत्पादन पैदा करता है।

मैंने इसके बजाय एक मल्टीलाइन फ़िल्टर का उपयोग करने की कोशिश की, लेकिन यह वही परिणाम मिला, मैंने भी --verbose के साथ लॉगस्टैश चलाने की कोशिश की लेकिन यह कोई उपयोगी जानकारी नहीं दी। यहाँ क्या चल रहा है?

+0

अपने लॉग और विन्यास के साथ, यह logstsash-1.3.3 के साथ मुझ पर काम किया है। –

+0

मैंने केवल लॉगस्टैश-1.4.0 के साथ कोशिश की, फ़ाइल इनपुट के साथ यह एक आकर्षण की तरह काम करता है। – Blubber

+0

मल्टीन फ़िल्टर भूल जाना चाहिए, यह कड़ाई से कोडेक जैसा ही है लेकिन बहु-धागा योग्य नहीं है (यानी: बहुत खराब प्रदर्शन) – yesnault

उत्तर

3

कुछ और गूगलिंग के बाद मुझे जवाब मिला, जाहिर है कि मल्टीलाइन कोडेक stdin इनपुट के साथ अच्छा नहीं खेलता है। फ़ाइल इनपुट का उपयोग करना, और अब यह काम करता है।

देखें: https://logstash.jira.com/browse/LOGSTASH-1629

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