एक वेबसाइट पर Nagios निगरानी पाठ


10

मैं सोच रहा था कि क्या मुझे किसी वेबसाइट पर निगरानी पाठ के साथ कुछ मदद मिल सकती है। IE यदि मैं "गोपनीयता" पाठ के लिए google.com की निगरानी करना चाहता था, तो मुझे लगा कि मैं निम्नलिखित आदेश का उपयोग करूंगा:

check_http -H google.com -u http://www.google.com -s "Privacy"

लेकिन यह काम नहीं कर रहा है। मुझे "ओके" मिलता है चाहे मैं किसी भी उद्धरण में रखूं। मैं स्पष्ट रूप से गलत कमांड या गलत विकल्प का उपयोग कर रहा हूं। कृपया मदद कीजिए।

जवाबों:


7

पु-पु को छोड़ने की कोशिश करें। -u पुनर्प्राप्त करने के लिए पथ (पृष्ठ) देता है, डिफ़ॉल्ट "/" है, यह संपूर्ण URL नहीं लेता है। जब मैं इसे छोड़ता हूं तो यहां मेरा आउटपुट होता है।

$ ./check_http -H www.google.com -s "Privacy"
HTTP OK HTTP/1.0 200 OK - 0.041 second response time |time=0.040579s;;;0.000000 size=5257B;;;0
$ ./check_http -H www.google.com -s "Privacyblahdibla"
HTTP CRITICAL - string not found|time=0.048169s;;;0.000000 size=5257B;;;0

यदि आप एक विशिष्ट पृष्ठ प्राप्त करना चाहते हैं, तो -u का उपयोग करें

$ ./check_http -H www.google.com -u "/ig" -s "Privacy"
HTTP OK HTTP/1.0 200 OK - 0.166 second response time |time=0.165896s;;;0.000000 size=87843B;;;0

मुझे अभी भी अपनी वास्तविक वेबसाइट से समस्या है कि मैं मॉनिटर करने का प्रयास कर रहा हूं, यही मुझे मिलता है ।/check_http -H mysite.myschool.edu -u "/ cp / home / displaylogin" -s "dsklajfdl" HTTP OK - HTTP / 1.1 302 मिला - 0.003 दूसरी प्रतिक्रिया समय | समय = 0.003486s ;;; 0.000000 आकार = 104B
;;

या एक अन्य उदाहरण है ।/check_http -H mysite.myschool.edu -u "/index.html" -s "dsklajfdl" HTTP OK - HTTP / 1.1 302 मिला - 0.003 सेकंड का रिस्पांस टाइम। समय = 0.003466s ;; 0.000000 आकार; = 94B ;; 0
IOTAMAN

हां, ऐसा लगता है कि यदि कोई रीडायरेक्ट (301 या 302) प्रतिक्रिया है तो चेक सर्च स्ट्रिंग को अनदेखा कर देता है, जो संभवतः सही है। इसका उत्तर उस सटीक url को ढूंढना है जिसे आप पुनः निर्देशित किया जा रहा है। आपको ब्राउज़र में पेज पर जाकर ऐसा करने में सक्षम होना चाहिए। यदि वह काम नहीं करता है, तो यह देखने के लिए टेलनेट के माध्यम से उस तक पहुंचने का प्रयास करें कि स्थान क्या है: हेडर मान।
पैलियोरस

1

एक अन्य विकल्प यह है कि checkexchange.org से check_curl का उपयोग किया जाए। वास्तव में यह एक ऐसी खाई है जो आप करने की कोशिश कर रहे हैं, लेकिन मैंने पाया है कि जब वेबसाइट से डेटा प्राप्त करने और इनपुट डालने के लिए आपको इसकी आवश्यकता होती है, तो इसकी कार्यक्षमता बढ़ जाती है।

नीचे मेरे अनुकूलित गैर-चर check_curl की सामग्री:

 #!/bin/bash
 PROG=/usr/local/bin/curl
 FILE=/tmp/check_curl
 HALT=PRIVACY

 $PROG -k -s http://www.google.com > $FILE

 STATUS=`grep Error $FILE | awk '{ print $0 }'`

 grep -w $HALT $FILE > /dev/null
 if [ $? -eq 0 ]
    then
      WORKING=`grep Privacy $FILE | awk '{ print $5 }'`
      echo "Works, Returns data of $WORKING"
      rm $FILE
 else echo "Doesn't return $WORKING"| $STATUS"
      exit 2
  fi


0

हमने विशेष स्ट्रिंग के लिए खोज करने के लिए LWP और HTML :: ट्री का उपयोग करते हुए एक कस्टम पर्ल स्क्रिप्ट लिखी। हम कुछ पृष्ठों को सिर्फ md5sum भी करते हैं जहाँ सामग्री परिवर्तित नहीं होती है।


1
मैं खुद check_http से खुश हूं, लेकिन अगर आप इस तरीके को एक उपाय के रूप में सुझा रहे हैं, तो शायद पर्ल स्क्रिप्ट प्रदान करें?
प्राइस

0

अगर मुझे check_http प्लगइन के साथ इस तरह की समस्या मिलती है, तो मैं आमतौर पर उस URL को भूल जाता हूं जिसे मैं पाठ के लिए देख रहा हूं और फिर आउटपुट की जांच करता हूं।

यदि आप ऐसा कुछ चाहते हैं जो check_http से थोड़ा अधिक हो, जैसे कि वेब साइट में लॉग इन करना या एक से अधिक स्ट्रिंग की जाँच करना, WebInject पर एक नज़र - यह एक अच्छा प्लगइन है।


0

वांछित प्रभाव के -eलिए आपको विकल्प के विकल्प को निर्दिष्ट -sकरने की आवश्यकता है:

$ ./check_http -H "www.eurocarparts.com" -u / -s "no such string"
OK - HTTP/1.1 302 Found - 0.476 second response time |time=0.475776s;;;0.000000 size=17701B;;;0

$ ./check_http -H "www.eurocarparts.com" -u / -s "no such string" -e 302
CRITICAL - string not found|time=1.633004s;;;0.000000 size=17701B;;;0

$ ./check_http -H "www.eurocarparts.com" -u / -s "0870" -e 302
HTTP OK HTTP/1.1 302 Found - 4.032 second response time |time=4.032120s;;;0.000000 size=17701B;;;0

0

यहाँ कुछ जाँचें हैं जिनका मैं उपयोग करता हूँ।

पहला पाठ के लिए लग रहा है CCServerServiceऔर एक त्रुटि रिपोर्ट अगर यह नहीं देखता है:

define command {
    command_name  check_cc_v5
    command_line  /usr/local/nagios/libexec/check_http -H $HOSTADDRESS$ -p 8080 -u /CCServer/CCServer --regex=CCServerService -w 3 -c 5 -t 10
}

दूसरा पाठ के लिए जाँच करता है errorऔर एक त्रुटि की रिपोर्ट करता है यदि वह इसे देखता है:

define command {
    command_name  check_wb_pps
    command_line  /usr/local/nagios/libexec/check_http -S -H $HOSTADDRESS$ -u /onlinestore/booking.php --regex=error --invert-regex -w 30 -c 60 -t 90
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.