2016-01-13 7 views
6

मुझे पता है कि यह sonarqube 5.2 background tasks sometimes fail with no log के समान है - हालांकि मैं कुछ और जानकारी जोड़ने के लिए टिप्पणी नहीं कर सकता (प्रतिष्ठा बिंदुओं की कमी के कारण), इसलिए इस पोस्ट को एक उत्तर के रूप में जोड़ने का प्रयास किया गया था, लेकिन था यह मॉडरेटर द्वारा हटा दिया गया ...सोनारक्यूब 5.3 पृष्ठभूमि कार्य कोई लॉग इन डैशबोर्ड

मुझे SonarQube 5.2, और अब कल अपग्रेड के बाद 5.3 में समस्या हो रही थी। मैंने सर्वर पर TRACE को लॉगिंग करने की कोशिश की है, और प्रोजेक्ट पर sonar.verbose = true को सक्षम किया है।

हालांकि, वहाँ Maven निर्माण से उत्पादन में कोई अतिरिक्त जानकारी है - बस सामान्य:

विश्लेषण सफल, आप का निर्माण लॉग में xxx ब्राउज़ कर सकते हैं।

मुझे सर्वर लॉग फ़ाइलों में एक पोस्ट /api/ce/submit?projectKey=xxxx&projectName=yyyy | time=757ms दिखाई देता है - लेकिन कुछ और नहीं।

मैं भी एक नाम के साथ data\ce\reports में एक ज़िप फ़ाइल को देखने के निर्माण लॉग में आईडी से मेल खाता है: - मैं पृष्ठभूमि कार्य स्क्रीन पर रुक-रुक कर विफलताओं मिलता है - (जैसे AVI19fDPpe3MLWoccJn9.zip)

हालांकि में कोई लॉग लिंक के साथ पृष्ठभूमि कार्य स्क्रीन, और data\ce\logs\reports निर्देशिका में कोई लॉग नहीं बनाया गया।

मैंने 5.3 के लिए स्क्रैच से सोनारक्वे डेटाबेस को फिर से बनाने का सहारा लिया (जैसा कि हमारे पास कोई इतिहास नहीं था) - और त्रुटि अभी भी हो रही थी।

मैं उपयोग कर रहा हूँ:

  • ओरेकल DB एक ताजा sonarqube 5.3 पर
  • प्लगइन्स स्थापित:
    • सोनार-जावा-प्लगइन-3.9
    • सोनार-ldap-प्लगइन-1.5.1
    • सोनार-एसएमएम-पेर्स-प्लगइन-1.3 (हालांकि वर्तमान में sonar.scm.disabled=true है क्योंकि हमें पिछले संस्करण में समस्याएं थीं)
    • सोनार-कोई तिथि नहीं-प्लगइन-4.3 (इस जावा विश्लेषण के लिए प्रासंगिक नहीं)
    • सोनार-SCM-Git-प्लगइन-1.1 (इस विश्लेषण के लिए प्रासंगिक नहीं)
    • सोनार-SCM-svn-प्लगइन-1.2 (नहीं इस विश्लेषण के लिए प्रासंगिक)
  • मैं sonar-jacoco-listeners v 3.2 का उपयोग कर एक Maven परियोजना का निर्माण कर रहा हूँ (यह भी 2.9.1 की कोशिश की है)
+0

जब आप लॉग के लिए "DEBUG" स्तर को सक्रिय करते हैं, तो क्या आप किसी विश्लेषण को चलाने के बाद "लॉग/सोनार.लॉग" फ़ाइल में लिखा गया है (उदाहरण के लिए pastebin.org) उदाहरण के लिए क्या आप पेस्ट-पेस्ट कर सकते हैं? –

+0

लॉग फाइलें यहां हैं: https://gist.github.com/rpynor/d35ed08ecab0a40a4d0a –

+0

इस विशेष विश्लेषण के लिए - AVI6rosFQGlYbPrUc57o.zip नामक डेटा/सीई/रिपोर्ट में बनाई गई ज़िप फ़ाइल थी, और इसमें कोई लॉग फ़ाइल नहीं थी डेटा/ce/लॉग/रिपोर्ट। इसके अतिरिक्त, डैशबोर्ड पृष्ठभूमि को दिखाता है कि 31 एमएस की अवधि के साथ कोई लॉग फ़ाइल लिंक नहीं है –

उत्तर

10

आप एक बहुत अजीब मुद्दा सामना कर रहे हैं। समय-बार

  • एक पृष्ठभूमि कार्य सोनार में किसी भी लॉग बिना संसाधित किया जाता है करने के लिए

    • :

      यह निष्कर्ष निकालने के लिए ऊपर।लॉग इन करें और न ही data/ce/logs निर्देशिका

    • में एक कार्य लॉग कार्य
    • यह एक बहुत ही कम समय
    • रिपोर्ट ज़िप फ़ाइल के लिए भाग गया (वर्ग के यूआई में दिखाई दे के रूप में) में विफल रहा है अभी भी डेटा निर्देशिका में मौजूद है

    केवल समय हम ऐसी स्थिति का सामना करना पड़ा, यह पता चला दो SonarQube उदाहरणों में एक ही डेटाबेस पर चल रहा है और यहां गया है कि क्या हो रहा था:

    • वर्ग ए (एक आप के बारे में पता कर रहे हैं और monitorin जी) रिपोर्ट प्राप्त करता है, ज़िप फ़ाइल को अपनी डेटा निर्देशिका में सहेजता है और डीबी
    • एसक्यू ए और एसक्यू बी दोनों में एक प्रविष्टि (पृष्ठभूमि कार्य) जोड़ता है, एसक्यू ए और एसक्यू बी नियमित रूप से प्रक्रिया के लिए PENDING आइटमों के लिए डीबी को नियमित रूप से मतदान करते हैं। कभी-कभी, एसक्यू बी डीबी से प्रवेश लेने वाला पहला व्यक्ति होगा और इसे संसाधित करना शुरू कर देगा। चूंकि रिपोर्ट इसकी डेटा निर्देशिका में नहीं है, इसलिए प्रसंस्करण बहुत जल्दी विफल हो जाता है और प्रविष्टि को डीबी
    • एसक्यू ए प्रविष्टि को संसाधित करने की कोशिश नहीं करता है, क्योंकि इसके दृष्टिकोण से, यह या तो प्रोसेसिंग (जब एसक्यू बी इस पर काम कर रहा है) या FAILED (जब एसक्यू बी इसके साथ किया जाता है)। केवल आइटम पेंडिंग संसाधित किया जा सकता है। इसलिए, एसक्यू ए के सोनार.लॉग में कोई लॉग कभी दिखाई नहीं देता है और कोई कार्य लॉग भी बनाया जाता है। फिर भी, यूआई में पृष्ठभूमि कार्य विफल होने के रूप में प्रदर्शित होता है क्योंकि यूआई डीबी से जानकारी दिखाता है।

    एक अच्छा संकेत है कि प्रसंस्करण (यानी डीबी में प्रवेश की स्थिति का परिवर्तन) एसक्यू ए द्वारा नहीं किया गया था कि रिपोर्ट ज़िप फ़ाइल अभी भी डेटा निर्देशिका में मौजूद है। असफलता या सफलता के लिए प्रवेश की स्थिति में परिवर्तन ज़िप फ़ाइल को हटाने के साथ कसकर मिलकर है।

    यह केवल एक संकेत है क्योंकि हटाना भी असफल हो सकता है, लेकिन ऐसे मामले में, आपके पास लॉग में त्रुटि होगी।

  • +1

    है शर्मनाक रूप से, ऐसा लगता है कि आप सही हैं।संगठन में किसी और ने सोनारक्यूब के अपने उदाहरण को चलाने के लिए हमारी ऑरैकल स्कीमा को उधार लिया था - मैं उन्हें बेदखल कर दूंगा और आशा करता हूं कि इस मुद्दे को हल किया जाएगा। –

    +0

    इस उत्तर के लिए आपको बहुत बहुत धन्यवाद! मैंने एक ही समस्या का अनुभव किया है और कल्पना नहीं कर सकता कि यह एक दूसरा एसक्यू उदाहरण था। लेकिन कुछ डेटाबेस कनेक्शन लॉगिंग को सक्षम करने के बाद मुझे एक दूसरा मिला - किसी ने मेरे वीएम को एसक्यू चलाना बंद कर दिया और डेटाबेस कनेक्शन को बदलने के लिए भूल गए। आपने मुझे कम से कम कुछ दिनों के बालों को फाड़ दिया: डी – Alex

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