Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Ruby

AptWatcher की घोषणा

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

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

इसे चलाकर सर्वर पर संकुलों की सूची तैयार की जा सकती है:

$ apt-get upgrade -s | grep ^Inst | awk '{ print $2,$3; }' | tr -d '[]'

यह इस तरह दिखने वाले पैकेजों की एक सूची बनाता है:

libxml2-dev 2.9.1+dfsg1-3ubuntu4.7
libxml2 2.9.1+dfsg1-3ubuntu4.7
libnl-genl-3-200 3.2.21-1ubuntu1.1
libnl-3-200 3.2.21-1ubuntu1.1

और वही सूची AptWatcher के माध्यम से रूट किए जाने पर स्लैक में दिखाई देगी:

AptWatcher की घोषणा

इंस्टॉलेशन

इंस्टालेशन उतना ही सरल है जितना कि रेपो के रीडमे में हेरोकू बटन पर क्लिक करना, और फिर अपने सभी सर्वरों में क्रॉन जॉब जोड़कर AptWatcher को पैकेज परिवर्तन की रिपोर्ट करना। सर्वर से रिपोर्ट आने पर होस्ट रिकॉर्ड स्वचालित रूप से AptWatcher में बन जाएंगे।

हम सभी चीजों को स्वचालित करने के लिए Ansible at Honeybadger का उपयोग करते हैं, इसलिए मैंने apticron को AptWatcher से बदलने के लिए त्वरित और गंदा तरीका अपनाया:

$ ansible all -m apt -a 'pkg=apticron state=removed'
$ ansible all -m cron -a "name='Report pending apt changes' special_time=daily job='apt-get upgrade -s | grep ^Inst | awk \'{ print \$2,\$3; }\' | tr -d \'[]\' | curl -u user:pass --data-binary @- https://our.aptwatcher.url/report/\$(hostname) &> /dev/null'"

एक बार यह हो जाने के बाद, आपको केवल स्लैक में पैकेज रिपोर्ट के प्रदर्शित होने की प्रतीक्षा करनी होगी। आसान-पेसी!


  1. एचटीएमएल सूचियां

    HTML दस्तावेज़ में तीन प्रकार की सूचियाँ मौजूद होती हैं, अर्थात् अनियंत्रित सूची, आदेश दिया गया सूची और विवरण सूची। अनियंत्रित HTML सूची इसे टैग का उपयोग करके परिभाषित किया गया है जहां प्रत्येक सूची आइटम टैग के बीच संलग्न है। सिंटैक्स निम्नलिखित वाक्य रचना है - <ul> <li>List Item&

  1. रूबी में प्रैक्टिकल लिंक्ड लिस्ट

    यह रूबी में प्रैक्टिकल कंप्यूटर साइंस श्रृंखला में तीसरी प्रविष्टि है! आज हम लिंक्ड लिस्ट के बारे में बात करने जा रहे हैं। तो लिंक की गई सूची क्या है? जैसा कि नाम से पता चलता है, एक लिंक की गई सूची डेटा को सूची प्रारूप में संग्रहीत करने का एक तरीका है (धन्यवाद, कप्तान स्पष्ट!)। लिंक्ड भाग इस तथ्य

  1. कलह आदेश सूची

    गेमप्ले के दौरान संवाद करने के लिए गेमर विभिन्न प्रकार के चैट एप्लिकेशन का उपयोग करते हैं, जैसे मम्बल, स्टीम, टीमस्पीक। अगर आपको ऑनलाइन गेम खेलने का शौक है तो आप ये जान सकते हैं। इन दिनों सबसे अधिक उपयोग किए जाने वाले और ट्रेंडी चैट ऐप्स में से एक डिस्कॉर्ड है। डिस्कॉर्ड आपको निजी सर्वर के माध्यम से