рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╣реИ?
рдЬрдм рдкрд░рд┐рд╡рд╛рд░ рдореЗрдВ рдореЛрдмрд╛рдЗрд▓ рдлреЛрди рдХреА рд╕рдВрдЦреНрдпрд╛ 3 рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рд╕рдВрддреБрд▓рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рдЪреЗрддрд╛рд╡рдиреА рдЬрдм рд╕рдВрддреБрд▓рди рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рдХреЗ рдХрд░реАрдм рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ рддрдм рдЙрдарддрд╛ рд╣реИред рд╕рдВрддреБрд▓рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдХрдИ рдЙрдкрдХрд░рдг рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм рдЖрдк рд╣рд╛рде рдореЗрдВ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рдирд╛рдЧреЛрд╕ рд╣реЛрддреЗ рд╣реИрдВ рддреЛ рдПрдХ рдмрдЧреАрдЪреЗ рд╕реЗ рдХреНрдпреЛрдВ рдкрд░реЗрд╢рд╛рди рд╣реЛрддреЗ рд╣реИрдВ (рдРрд╕рд╛ рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдШрд░ рдкрд░ рдореЗрд░рд╛ рдЕрдкрдирд╛ рдирд┐рдЧрд░рд╛рдиреА рд╕рд░реНрд╡рд░ рд╣реИ, рдЗрд╕рдХрд╛ рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдЙрди рд╕рдВрдЧрдардиреЛрдВ рдХреЗ рд╕рд░реНрд╡рд░ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛ рд╣реИ рдЬреЛ рдШрдВрдЯреЛрдВ рдХреЗ рдмрд╛рдж рдкреНрд░рд╢рд╛рд╕рди рдХрд░рддреЗ рд╣реИрдВ)ред рдпрд╣ рд╕рдорд╛рдзрд╛рди рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЦрд╛рддреЗ рдХреЗ рд╕рдВрддреБрд▓рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рднреА рдЙрдкрдпреБрдХреНрдд рд╣реИред
рдЫреЛрдЯрд╛ рд╡рд┐рд╖рдпрд╛рдВрддрд░
рд╣рдо рдореЛрдмрд╛рдЗрд▓ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд╕рд░реНрд╡рд░ рд╕реЗ http / https рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рдЧрд░рд╛рдиреА рдХрд░реЗрдВрдЧреЗред рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЬреБрдбрд╝реЗ рд╣реБрдП рдХрд░реНрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде php рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдирд╛рдЧрд┐рдпреЛрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рд╢реНрд░реАрдорддреАрдЬреА рдХреЛ рд░реЗрдЦрд╛рдВрдХрди рдХреЗ рд▓рд┐рдПред рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рджреЛ рдореЛрдмрд╛рдЗрд▓ рдСрдкрд░реЗрдЯрд░реЛрдВ, рдПрдордЯреАрдПрд╕ рдФрд░ рдмреАрд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдЬреАрдм рддрд░рд╣ рд╕реЗ, рдмреАрд▓рд╛рдЗрди рдХрдо рд╕реЗ рдХрдо рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВ: рд╣рдо рдПрдХ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ, рдлрд┐рд░ рд╣рдо рдПрдХ рд╕рдВрддреБрд▓рди рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ, рдлрд┐рд░ рд╣рдо HTML рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдПрдордЯреАрдПрд╕ рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рдирд┐рдХрд▓рд╛, рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рд╡реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдбреЛрдореЗрди рдирд╛рдо "рдЗрдВрдЯрд░рдиреЗрдЯ рд╕рд╣рд╛рдпрдХ" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдореЗрдВ рдЕрдирд┐рдпреЛрдЬрд┐рдд рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдлреЛрди рдирдВрдмрд░,
рдПрдордЯреАрдЯреА рдЗрдВрдЯрд░рдиреЗрдЯ рд╕рдВрд╕рд╛рдзрди, рдЬреЛ рдЯреЗрд▓рд┐рдлреЛрдиреА рдСрдкрд░реЗрдЯрд░ рдЙрдкрд╕рд░реНрдЧреЛрдВ рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдорджрдж рдХрд░рдХреЗ рдХреНрд╖реЗрддреНрд░ рдХреА рдЧрдгрдирд╛ рдХрд░рдХреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдПрдордЯреАрдПрд╕ рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ
рдЬрд╛рд╡рд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж "рдЗрдВрдЯрд░рдиреЗрдЯ рдЕрд╕рд┐рд╕реНрдЯреЗрдВрдЯ" рдХрд╛ рдбреЛрдореЗрди рдирд╛рдо рдорд┐рд▓рддрд╛ рд╣реИ, рдлрд┐рд░ рдПрдЪрдЯреАрдПрдордПрд▓ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЕрдзрд┐рдХреГрдд рдФрд░ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИред рдЖрдк рдпрд╣рд╛рдВ рдПрдХ рдореЗрдЧрд╛рдлреЛрди рднреА рд╕реНрдХреНрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдирд╣реАрдВред
рддреЛ, рд╕рд┐рджреНрдзрд╛рдВрдд рд╕реЗ рдЕрднреНрдпрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рдореИрдВ Nagios рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣реЗрдмреНрд░ рдХреЗ рдирд┐рд╡рд╛рд╕рд┐рдпреЛрдВ рдХреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рдФрд░ рдореИрдВ рдЖрдЧреЗ рдмрдврд╝реВрдВрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдмреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдмрд╕реЗ рд╕реНрд╡рд╛рджрд┐рд╖реНрдЯред
рдпрд╣рд╛рдВ рд╕реЗ рдирд╡реАрдирддрдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбрд╛рдЙрдирд▓реЛрдб
рдХрд░реЗрдВ , рдЕрдирдкреИрдХ рдХрд░реЗрдВред рд╣рдореЗрдВ 3 рдлрд╛рдЗрд▓реЗрдВ, рдореЛрдмрд╛рдЗрд▓- api.php, nagios-check-mobile-balance.php, mrtg-mobile-balance.php рдорд┐рд▓рддрд╛ рд╣реИред рдирд╛рдо рд╕реЗ, рдлрд╝рд╛рдЗрд▓ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рд╕реНрдкрд╖реНрдЯ рд╣реИрдВ, рдирд╛рдЧреЛрдЗрд╕ рдкреНрд▓рдЧрдЗрди, рдПрдордЖрд░рдЯреАрдЬреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рд╢реЗрд╖ рд░рд╛рд╢рд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ (рдореИрдВрдиреЗ рдЗрд╕реЗ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА)ред
рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ рдФрд░ рдЕрдзрд┐рдХрд╛рд░ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ
cp ./mobile-balance-api.php /usr/local/lib/ cp ./nagios-check-mobile-balance.php /usr/lib/nagios/plugins/check_mobile_balance.php cp ./mrtg-check-mobile-balance.php /usr/lib/mrtg2/check_mobile_balance.php chmod +x /usr/lib/nagios/plugins/check_mobile_balance.php chmod +x /usr/lib/mrtg2/check_mobile_balance.php
рдкреНрд░рджрд░реНрд╢рди рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ /usr/local/lib/mobile-balance-api.php рдореЗрдВ рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
DEFINE("CACHE_PATH", "/var/cache/balance");
рдлрд┐рд░ рдЖрдкрдХреЛ рдлрд╝рд╛рдЗрд▓ /usr/lib/nagios/plugins/check_mobile_balance.php рдореЗрдВ рдирд┐рд░рдВрддрд░ "MOBILE_API" рдореЗрдВ рдкрде рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
DEFINE("MOBILE_API", "/usr/local/lib/mobile-balance-api.php");
рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ "рдЗрдВрдЯрд░рдиреЗрдЯ рд╕рд╣рд╛рдпрдХ" рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рд╕рд╡рд░реНрдб рдирд╣реАрдВ рд╣реИ, рддреЛ рдирд┐рдореНрди рдХрд╛рд░реНрдп рдХрд░реЗрдВ:
- рдПрдордЯреАрдПрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП: рдЕрдкрдиреЗ рдореЛрдмрд╛рдЗрд▓ рдлреЛрди рд╕реЗ (рдпрд╛ рдПрдордЯреАрдПрд╕-рдХрдиреЗрдХреНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ) рдбрд╛рдпрд▓ рдХрд░реЗрдВ: * 111 * 25 # рдпрд╛ 111 5 рдкрд░ рдХреЙрд▓ рдХрд░реЗрдВ (рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╣реЛрдо рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рд╣реИрдВ) рдФрд░ рдСрдЯреЛрдиреЛрдлреЙрд░реНрдорд░ рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВред
- Beeline рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП: рдЕрдкрдиреЗ рдлреЛрди рд╕реЗ рдЯреЛрд▓ рдлреНрд░реА рдирдВрдмрд░ * 110 * 9 # рдкрд░ рдХреЙрд▓ рдХрд░реЗрдВ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдПрдХ рдПрд╕рдПрдордПрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред
рдЯреЗрд╕реНрдЯ рд░рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ
/usr/lib/nagios/plugins/check_mobile_balance.php -w 20 -c 10 -n 9128141111 -p 123456
рдЬрд╡рд╛рдм рд╣реИ
BALANCE OK- +79128141111 = 55 rub
рдпрджрд┐ рдкрд╛рд╕рд╡рд░реНрдб рдЧрд▓рдд рд╣реИ, рдпрд╛ рдПрдордЯреАрдПрд╕ рд╣реЛрд╕реНрдЯ рдбрд╛рдЙрди рд╣реИ (рдпрд╣ рдЕрдХреНрд╕рд░ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдмреАрд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдмреЗрд╣рддрд░ рд╣реИ) рд╕реНрдХреНрд░рд┐рдкреНрдЯ 0 рд╡реЗрдВ рд╢реЗрд╖ рд░рд╛рд╢рд┐ рдХреЛ рд▓реМрдЯрд╛ рджреЗрдЧреАред
Nagios рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░реЗрдВ
рдлрд╝рд╛рдЗрд▓ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ /etc/nagios/objects/commands.cfg, рдПрдХ рдирдпрд╛ рдХрдорд╛рдВрдб рдЬреЛрдбрд╝реЗрдВ "check_mobile_balance"
define command{
command_name check_mobile_balance
command_line $USER1$/check_mobile_balance.php -w 30 -c 10 -n $ARG1$ -p $ARG2$
}
-W 30 рд░реВрдмрд▓ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рджрд╣рд▓реАрдЬ рд╣реИ
-c 10 рд░реВрдмрд▓ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реАрдорд╛ рд╣реИ
рдлрд┐рд░ /etc/nagios/objects/localhost.cfg рдЪреЗрдХ рдЬреЛрдбрд╝реЗрдВ
define service{
use local-service
host_name localhost
service_description Balance +79128141111
check_command check_mobile_balance!9128141111!123456
}
рдЬрд╣рд╛рдВ 9128141111 рдлреЛрди рдирдВрдмрд░ рд╣реИ, 123456 рдореЛрдмрд╛рдЗрд▓ рд╕рд╣рд╛рдпрдХ рдХреЗ рд▓рд┐рдП рдкрд╛рд╕рд╡рд░реНрдб рд╣реИред
рдлрд┐рд░ рд╣рдордиреЗ
service nagios reload
рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрдврд╝рд╛:
service nagios reload
рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдЖрдирдВрдж рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рдЬрд╛рдПрдВ:

рдЧреНрд░рд╛рдлрд┐рдХреНрд╕
рд╕рд╛рдЬрд┐рд╢ рд░рдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ MRTG рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣рд▓реНрдХрд╛, рдЖрд╕рд╛рди рд╣реИред рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдордЖрд░рдЯреАрдЬреА рд╕реНрдерд╛рдкрд┐рдд, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдФрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдлрд╝рд╛рдЗрд▓ /usr/lib/nagios/plugins/check_mobile_balance.php рдореЗрдВ рдирд┐рд░рдВрддрд░ "MOBILE_API" рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ /etc/mrtg/mrtg.cfg рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдЬреЛрдбрд╝реЗрдВ:
Target[mb]: `/usr/lib/mrtg2/check_mobile_balance.php 9128141111 123456`
MaxBytes[mb]: 500
MaxBytes2[mb]: 75
Title[mb]: Mobile balance +79218141111
Options[mb]: unknaszero,gauge,growright,nopercent,transparent,noborder,pngdate,noinfo
AbsMax[mb]: 500
YLegend[mb]: Rub
ShortLegend[mb]: R
Legend1[mb]: Rub
Legend2[mb]: Rub
LegendI[mb]: Rub
LegendO[mb]: Rub
PageTop[mb]: Mobile balance +79218141111
рдкрд░реАрдХреНрд╖рдг рдПрди.рд╡реА.
LANG=C mrtg /etc/mrtg/mrtg.cfg --logging /var/log/mrtg.log > /dev/null 2>&1
рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рд╣реБрдЖред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдмрд╣реБрдд рд╕рд╛рд░реА рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВред рдмрд╕, рдореИрдВ
рдпрд╣рд╛рдБ рдПрдХ рд▓рд┐рдВрдХ рдХреА рдирдХрд▓ рдХрд░реВрдБрдЧрд╛ред
рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдФрд░ рд╡реЗ рди рдХреЗрд╡рд▓ рдореЛрдмрд╛рдЗрд▓ рдлреЛрди рдХреЗ рд╕рдВрддреБрд▓рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╣реЗрдмреНрд░реЗ рдкрд░ рд░рдЯреНрд░реИрдХрд░ рдпрд╛ рдХрд░реНрдо рдкрд░ рд░реЗрдЯрд┐рдВрдЧ рднреАред
рд╣реЛрдмреЗ рдкрд░ рдХрд░реНрдо рдХреА рдирд┐рдЧрд░рд╛рдиреА
рд╣реИрдмрд░ рдкрд░ рдХрд░реНрдо рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ /usr/local/lib/mobile-balance-api.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ $ рдореИрдиреБрдЕрд▓_рдкреЗрдХреНрдЯ рдЪрд░ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ "habrahabr.carma.yozhiks" (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛
yozhiks рдХреЛ
рдмреЗрд╡рдЬрд╣ рд╢реНрд░рджреНрдзрд╛рдВрдЬрд▓рд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛) рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрдВрдЬреАрдХреГрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
$manual_detect = array ( "9128141111" => array("url" => "https://ihelper.ural.mts.ru/SelfCarePda/Security.mvc/LogOn", "operator" => "mts"), "9061971111" => array("url" => "https://uslugi.beeline.ru/loginPage.do|https://uslugi.beeline.ru/vip/prepaid/refreshedPrepaidBalance.jsp", "operator" => "beeline"), "habrahabr.carma.yozhiks" => array("url" => "http://yozhiks.habrahabr.ru", "operator" => "habrahabr.carma") );
рдФрд░ "habrahabr.carma" рдСрдкрд░реЗрдЯрд░ рдХреЛ $ рдСрдкрд░реЗрдЯрд░реНрд╕ рд╡реИрд░рд┐рдПрдмрд▓ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ:
$operators = array( "mts" => array("name" => ' " "', "result" => "<br/>: <strong><strong>|</strong> .< /strong>"), "beeline" => array("name" => ' "-"', "result" => '<td class="tabred">|& nbsp;'), "habrahabr.carma" => array("name" => ' ', "result" => '< span class="mark"><span>|</span></span>') );
рдЬрд╛рдБрдЪ:
/usr/lib/nagios/plugins/nagios-check-mobile-balance.php -w 30 -c 10 -n habrahabr.carma.yozhiks -p 1
рдЙрддреНрддрд░:
BALANCE OK- +7habrahabr.carma.yozhiks = 58 rub
рдмреЗрд╢рдХ, рдРрд╕реА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдереЛрдбрд╝рд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдирд┐рдХрд▓рд╛ред
рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
PS рдЖрдЬ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╕рдордп, MTT рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рдкрд╣рдЪрд╛рди рдХреА рдЧрдИ рдереАред рдЯреЗрдореНрдкреНрд▓реЗрдЯ рджреНрд╡рд╛рд░рд╛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ $ рдореИрдиреБрдЕрд▓_detect рд╡реЗрд░рд┐рдПрдмрд▓ рдкрд░ рд╕рдВрдЦреНрдпрд╛ рд╕реЗрдЯрд┐рдВрдЧ рд▓рд┐рдЦрдХрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП PPS рдиреИрдиреЛ MRTG HowTo
рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд░рд╣рд╛ рд╣реИ:
windows.php.net/download - php 5.3.5
www.activestate.com/store/activeperl/download - perl 5.12.3
oss.oetiker.ch/mrtg/pub - mrtg 2.17
рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ / рдЕрдирдкреИрдХ рдХрд░реЗрдВ:
perl c:\perl
mrtg c:\mrtg
php5 c:\php
mobile-balance-api.php mrtg-check-mobile-balance.php c:\mrtg\bin\
error_reporting = E_ALL & ~E_NOTICE
display_errors = On
рдФрд░
error_reporting = E_ALL & ~E_NOTICE
рдореЗрдВ рддреНрд░реБрдЯрд┐ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдлрд╛рдпрд░рдореИрди рдХреЗ рд▓рд┐рдП
error_reporting = E_ALL & ~E_NOTICE
ред
рд╣рдо рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рд╕рд╣реА рдХрд░рддреЗ рд╣реИрдВ:
рдореЛрдмрд╛рдЗрд▓ рдЕрд╕рдВрддреБрд▓рди-api.php
DEFINE ("CACHE_PATH", "c: \ Tmp");
MRTG рдХреА рдЬрд╛рдВрдЪ-рдореЛрдмрд╛рдЗрд▓-balance.php
DEFINE ("MOBILE_API", "c: \ mrtg \ bin \ mobile-balance-api.php)";
рд╣рдо рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╣реИрдВ:
c:\php\php c:\mrtg\bin\mrtg-check-mobile-balance.php 9128141111 123456
рдпрджрд┐ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реИрдВ, рддреЛ рд╣рдо рдЗрд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВред
MRTG рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ:
mkdir c:\mrtg\www
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ / рдЧ рдмрдирд╛рдПрдБ: \ mrtg \ mrtg.cfg
EnableIPv6: no
WorkDir: c:\mrtg\www
Target[mb]: `c:\php\php c:\mrtg\bin\mrtg-check-mobile-balance.php 9128141111 123456`
MaxBytes[mb]: 500
MaxBytes2[mb]: 75
Title[mb]: Mobile balance +79218141111
Options[mb]: unknaszero,gauge,growright,nopercent,transparent,noborder,pngdate,noinfo
AbsMax[mb]: 500
YLegend[mb]: Rub
ShortLegend[mb]: R
Legend1[mb]: Rub
Legend2[mb]: Rub
LegendI[mb]: Rub
LegendO[mb]: Rub
PageTop[mb]: Mobile balance +79218141111
рд╣рдо рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╣реИрдВ:
c:\perl\bin\perl c:\mrtg\bin\mrtg c:\mrtg\bin\mrtg.cfg
Mb * .png рдФрд░ mb.html рдлрд╝рд╛рдЗрд▓реЗрдВ c: \ mrtg \ www рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреА рдЪрд╛рд╣рд┐рдПред
c:\perl\bin\perl c:\mrtg\bin\mrtg c:\mrtg\bin\mrtg.cfg
рдЯрд╛рд╕реНрдХ рд╢реЗрдбреНрдпреВрд▓рд░ рдореЗрдВ
c:\perl\bin\perl c:\mrtg\bin\mrtg c:\mrtg\bin\mrtg.cfg
ред рд╡рд╣ рд╕рдм рд╣реИред
рдореЗрд░реЗ рдХрд░реНрдо рдХрд╛ PPPS рдЧреНрд░рд╛рдл рдФрд░ MRTG рдкрд░ рд░реЗрдЯрд┐рдВрдЧред рдмреНрд▓реВ рд░реЗрдЯрд┐рдВрдЧ рд╣реИ, рдЧреНрд░реАрди рдХрд░реНрдо рд╣реИред
