6

वर्तमान में मैं BUILD_LOG_REGEXजेनकिंस ईमेल के माध्यम से त्रुटियों का लॉग प्राप्त करने के लिए संपादन योग्य ईमेल जानकारी का उपयोग कर रहा हूं। लेकिन मुझे बहुत जंक मिलता है और मैं त्रुटियों को फ़िल्टर करना चाहता हूं और मैं त्रुटियों का लॉग पूर्णता में फ़िल्टर करना चाहता हूं। कोई मदद?मैं जेनकींस-ईमेल-एक्सटी, BUILD_LOG_REGEX में केवल त्रुटियों को फ़िल्टर कैसे करूं?

+0

क्या आपके रेगेक्स को आधार देने के लिए त्रुटि लॉग लाइनों में कुछ सामान्य स्ट्रिंग है? यदि नहीं, तो क्या आप एक जोड़ सकते हैं? क्या आप एक उदाहरण प्रदान कर सकते हैं, आप किस प्रकार का रेगेक्स उपयोग कर रहे हैं, किस तरह की लॉग लाइनों को पकड़ा जाना चाहिए और किस तरह का नहीं? –

+0

अरे जुसु, मैं अब एक प्रकार की त्रुटि फ़िल्टर करने में सक्षम हूं। लेकिन मैं एक से अधिक प्रकार की त्रुटि फ़िल्टर करना चाहता हूं। उदाहरण के लिए, एक त्रुटि लॉग प्रारूप त्रुटि का हो सकता है: (या) [त्रुटि] (या) असफल: और इतने पर और आगे। मैं BUILD_LOG_REGEX में कोई शर्त या शर्त कैसे बना सकता हूं? – user1048613

उत्तर

8

आपका प्रश्न गैर-विशिष्ट है। चूंकि जुसु ओहटन ने एक टिप्पणी में नोट किया है, जो आप अत्यधिक करते हैं उस पर निर्भर करता है कि आम तौर पर आपके लॉग में क्या पाया जा सकता है। यहां बताया गया है कि हम अपने काम में से एक में उपयोग करने का एक उदाहरण है, यह नहीं बल्कि सामान्य है (यदि नहीं minimalistic कहने के लिए) है:

${BUILD_LOG_REGEX, regex="^.*?BUILD FAILED.*?$", linesBefore=0, linesAfter=10, maxMatches=5, showTruncatedLines=false, escapeHtml=true} 

मैं निम्नलिखित सुझाव है: एक नौकरी कि कुछ पाठ कि त्रुटियों के प्रकार होते हैं लॉग बनाने जब तक आप वांछित परिणाम प्राप्त नहीं करते हैं, तब तक आप प्लगइन में जावा रेगेक्स पैटर्न - java.util.regex.Pattern - के साथ खेलते हैं, तो आप केवल कुछ टेक्स्ट फ़ाइल को निकाल सकते हैं)। आप केवल अपने आप को :) के लिए नौकरी से ई-मेल भेजने सुनिश्चित करें

कस्टम HTML का उपयोग करने के लिए - यहाँ प्लगइन का सामग्री टोकन संदर्भ से एक उद्धरण है:

${JELLY_SCRIPT, template} - Custom message content generated from a Jelly script 
    template. There are two templates provided: "html" and "text". Custom Jelly templates 
    should be placed in $JENKINS_HOME/email-templates. When using custom templates, the 
    template filename without ".jelly" should be used for the "template" argument. 
    template - the template name. Defaults to "html". 

है कि आप के रूप में उपयोग कर सकते हैं डिफ़ॉल्ट टेम्पलेट आपका शुरुआती बिंदु

$JENKINS_HOME/plugins/email-ext/WEB-INF/classes/hudson/plugins/emailext/templates/html.jelly 
+0

मैं आपको कुछ उदाहरण दे रहा हूं कि मेरी लॉग फाइल कैसा दिखती है। कृपया जाँच निम्न फ़ाइलें - फ़ोल्डर बेमेल: =============== मामला:: 1 त्रुटि ठीक है इस मामले में, केवल त्रुटि लॉग (त्रुटि लॉग के विभिन्न प्रकार के) में ================================================== ============ निकाला गया: \ foo2.cs निकाला गया: \ WorkflowsHighAvailabilityApp \ Application \ WorkflowsHighAvailabilityApp.cs मामला: 2 – user1048613

+0

मेरे हालत इस तरह दिखता है: $ {BUILD_LOG_REGEX, regex = " त्रुटि: ", लाइनों से पहले = 0, रेखाएं = 5, showTruncatedLines = false}। यह फ़िल्टर केवल त्रुटि के साथ लॉग करता है :, लेकिन मैं उस त्रुटि को फ़िल्टर करना चाहता हूं जिसमें कई प्रकार हैं [त्रुटि]/विफल: आदि। कोई सुझाव? – user1048613

+0

BUILD_LOG_REGEX 'java.util.regex.Pattern' नियमित अभिव्यक्तियों का उपयोग करता है: http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html –

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