Zabbix + Pushbullet: рдЕрд▓рд░реНрдЯ рдкреБрд╢ рдХрд░рдиреЗ рдХрд╛ рдЖрд╕рд╛рди рддрд░реАрдХрд╛

рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдореЗрдВ, рдЬрд╝реИрдмрд┐рдХреНрд╕ рдирд┐рдЧрд░рд╛рдиреА рдкреНрд░рдгрд╛рд▓реА рдХреА рдШрдЯрдирд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдореБрдЦреНрдп рддрд░реАрдХрд╛ рдИрдореЗрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реИред рдЬреИрдмрд░ рдиреЗ рдЕрдкрдиреЗ рдХрдо рдкреНрд░рд╕рд╛рд░ рдХреЗ рдХрд╛рд░рдг рдЬрдбрд╝ рдирд╣реАрдВ рд▓реА, рдФрд░ рдПрд╕рдПрдордПрд╕ рдкреБрд░рд╛рдирд╛ рд╣реИ (рдпрджреНрдпрдкрд┐ рдмрд╣реБрдд рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ)ред рдореИрдВ рдПрдХ рдФрд░ рд╡рд┐рдХрд▓реНрдк рдкреЗрд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЬреЛ рдкреБрд╢ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рдмрди рдЧрдпрд╛ред



рдкреБрд╢рдмреБрд▓реЗрдЯ рд╕реЗрд╡рд╛ рдкрд╣рд▓реЗ рд╣реА рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдЕрдкрдиреЗ рд▓рд┐рдП рдПрдХ рдирд╛рдо рдмрдирд╛рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реА рд╣реИ, рдФрд░ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЖрдИрдУрдПрд╕ рдХреЛ рдЬреАрддрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реА рд╣реИред Pushbullet рдлреЛрди рдХреЛ рдкреБрд╢рд┐ рднреЗрдЬ рд╕рдХрддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ ( рдХреНрд░реЛрдо рдФрд░ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ ) рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рднреЗрдЬ рд╕рдХрддрд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдПрдХ рдмрд╣реБрдд рд╣реА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдЙрдкрдпреЛрдЧреА рд╕реЗрд╡рд╛, рдЬреЛ рдПрдХ рдУрдкрди рдПрдкреАрдЖрдИ рд╣реИ ред рдЗрд╕ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рд╣рдо Zabbix рдШрдЯрдирд╛рдУрдВ рдХреЛ рдХрд░реНрдордЪрд╛рд░реА рдлреЛрди рдкрд░ рднреЗрдЬреЗрдВрдЧреЗред







рдЪрд░рдг 1: рдЕрдкрдиреЗ Pushbullet рдПрдкреАрдЖрдИ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ



рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕ рд╕реЗрд╡рд╛ рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЦрд╛рддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдмрд╕ рдЕрдкрдиреА рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рд╕реЗрдЯрд┐рдВрдЧ рдкрд░ рдЬрд╛рдПрдВ ред





рдЪрд░рдг 2: рдПрдХ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ



рд╡рд┐рдХрд▓реНрдк 1: рд╕рднреА рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рд╕рдВрджреЗрд╢ рднреЗрдЬреЗрдВ


рд╕рднреА рдбрд┐рд╡рд╛рдЗрд╕реЛрдВ рдХреЛ рдкреБрд╢ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВред рдЙрд╕реЗ pushbullet-all





 #!/bin/bash API_KEY="$1" SUBJECT="$2" MESSAGE="$3" curl https://api.pushbullet.com/v2/pushes \ -u $1: \ -d type=note \ -d title="$SUBJECT" \ -d body="$MESSAGE" \ -X POST
      
      





рдЬрд╣рд╛рдВ $N



рдЪрд░ рд╣реИрдВред $1



- рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдПрдкреАрдЖрдИ (рдмрд╛рдж рдореЗрдВ рдЬрд╝реИрдмрд┐рдХреНрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ), $2



- рд╣реЗрдбрд░ рд╣реЛрдЧрд╛, $3



- рд╕рдВрджреЗрд╢ рдХрд╛ рдореБрдЦреНрдп рднрд╛рдЧ рдмрди рдЬрд╛рдПрдЧрд╛ред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП Zabbix рдорджрдж рджреЗрдЦреЗрдВред



рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЖрдкрдХреЗ Zabbix рд╕рд░реНрд╡рд░ рдХреЗ alertscripts



рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: /usr/local/share/zabbix/alertscripts



)ред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦреЗрдВ ( chmod +x pushbullet-all



)ред


рд╡рд┐рдХрд▓реНрдк 2: рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рд╕рдВрджреЗрд╢ рднреЗрдЬреЗрдВ


рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж, рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ, рдЙрдиреНрд╣реЛрдВрдиреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЗрд╕ рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рджреЛрдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╕рд╛рде рдореЗрдВ рдЬреЛ рдКрдкрд░ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓рддрд╛ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ рд▓рд┐рдкрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рдирдИ pushbullet-dev



рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдирд╛рдо pushbullet-dev



:

 #!/bin/bash API_KEY="${1%%_*}" DEV_ID="${1#*_}" SUBJECT="$2" MESSAGE="$3" curl https://api.pushbullet.com/v2/pushes \ -u $API_KEY: \ -d device_iden=$DEV_ID \ -d type=note \ -d title="$SUBJECT" \ -d body="$MESSAGE" \ -X POST
      
      





рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЖрдкрдХреЗ Zabbix рд╕рд░реНрд╡рд░ рдХреЗ alertscripts



рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: /usr/local/share/zabbix/alertscripts



)ред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦреЗрдВ ( chmod +x pushbullet-all



)ред


рдЕрдм, "Send to" рдлрд╝реАрд▓реНрдб рдореЗрдВ, рд╣рдо рди рдХреЗрд╡рд▓ API, рдмрд▓реНрдХрд┐ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЛ рднреА рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЖрдк рдирд┐рдореНрди рддрд░реАрдХреЗ рд╕реЗ рдЙрдирдХреА рд╕реВрдЪреА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ:

 curl -u <your api key here>: https://api.pushbullet.com/api/devices
      
      





"Send to" рдлрд╝реАрд▓реНрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ (рд╡рд┐рднрд╛рдЬрдХ " _



"):

 api_dev
      
      





рдЬрд╣рд╛рдБ api



рдЖрдкрдХреА рдПрдкреАрдЖрдИ рдХреБрдВрдЬреА ( api_key



) рд╣реИ рдФрд░ dev



рдЖрдкрдХреА рдбрд┐рд╡рд╛рдЗрд╕ рдЖрдЗрдбреЗрдВрдЯрд┐рдлрд╝рд╛рдпрд░ ( dev_iden



) рд╣реИред



рдиреАрдЪреЗ рд╡рд┐рдХрд▓реНрдк 1 рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рджрд┐рдП рдЧрдП рд╣реИрдВ, рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдмрд╕ рдпрд╣ рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдирд╛рдо pushbullet-dev



, рдФрд░ рдЖрдкрдХреЛ "Send to" рдлрд╝реАрд▓реНрдб рдореЗрдВ API



рдФрд░ ID



рджреЛрдиреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред


рдЪрд░рдг 3: рдЬрд╝реИрдмрд┐рдХреНрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ



рдПрдХ рдирдИ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рд╡рд┐рдзрд┐ рдмрдирд╛рдПрдВ (рдкреНрд░рд╢рд╛рд╕рди - рдЕрд▓рд░реНрдЯ рддрд░реАрдХреЗ)






"рдСрдкрд░реЗрд╢рди" рдЯреИрдм рдкрд░ рдПрдХ рдирдИ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдмрдирд╛рдПрдВ, рдПрдХ рдирдП рдкреНрд░рдХрд╛рд░ рдХреА рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ






рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ, рдЕрдкрдиреА рдПрдкреАрдЖрдИ рдХреБрдВрдЬреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ






рддрджрдиреБрд╕рд╛рд░, рдкреНрд░рддреНрдпреЗрдХ рдЬрд┐рдореНрдореЗрджрд╛рд░ рдХрд░реНрдордЪрд╛рд░реА рдЕрдкрдиреЗ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдПрдкреАрдЖрдИ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕реВрдЪрдирд╛рдПрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред



рдЪрд░рдг 4: рдЖрдирдВрдж рд▓реЗрдВ







UPD_02.08.2014: рд▓реЗрдЦ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ ред рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рднреЗрдЬрдиреЗ рдФрд░ Pushbullet API v2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред



All Articles