LINUX.ORG.RU
решено ФорумAdmin

php-fpm.sh долго выполняеться.

 , , , ,


0

3

Привет, Лор. Есть скрипт

#!/bin/bash -x

PREFIX='php.fpm'
URL='http://127.0.0.1:8080/status'

CURL='/usr/bin/curl'
TMP='/tmp/php-fpm-ping.tmp'
SENDER='/usr/bin/zabbix_sender'
CONFIG='/etc/zabbix/zabbix_agentd.conf'

if [ ! -x ${CURL} ]
then echo Seems, path to curl is incorrect or not installed. && exit 0
else if [ ! -x ${SENDER} ]
then echo Seems, path to zabbix_sender is incorrect or not installed. && exit 0
else if [ ! -f ${CONFIG} ]
then echo Seems, path to zabbix_agentd.conf is incorrect && exit 0
fi fi fi

(time ${CURL} --no-keepalive -sm3 ${URL}) 2>$TMP | awk -v pr="- ${PREFIX}." '
/^accepted c/ {print pr"accepted_conn "$3}
/^active proc/ {print pr"active_processes "$3}
/^idle proc/ {print pr"idle_processes "$3}
/^listen queue:/ {print pr"listen_queue_len "$3}
/^max children reach/ {print pr"max_children_reached "$4}
/^max listen queue:/ {print pr"max_listen_queue_len "$4}' | ${SENDER} -c ${CONFIG} -i - 2>/dev/null | awk -v t="${TMP}" '/^sent/{if($6==0){print"-0.001";print>t}}'
awk '/real/{split($2,a,"[ms]");print a[1]*60+a[2];}' $TMP
rm $TMP
exit 1

Скрипт проверяет статус php-fpm и отправляет на забб сервер. На всех хостах работает хорошо, дали новый сервер debi 8.6 zab agent 3.0.5 Отрабатывает больше минуты. У заба таймаут на скрипты 30 сек максимум. Спасибо за помощь.


Ответ на: комментарий от Deleted

в агенте UserParameter=php.fpm.ping,/etc/zabbix/php-fpm.sh если из консоли запускать - выполняеться минуту заббикс ответа скрипта не дожидаеться пробовал zabbix get - ZBX_NOTSUPPORTED: Timeout while executing a shell script.

rom100
() автор топика
Ответ на: комментарий от rom100

Что-то мне лень разбираться в скрипте.
Заббикс тут не причем, если у тебя из консоли медленно выполняется.
Запусти bash -x /etc/zabbix/php-fpm.sh посмотри где задержка.

Deleted
()
Ответ на: комментарий от Deleted
+ PREFIX=php.fpm
+ URL=http://127.0.0.1:8080/status
+ CURL=/usr/bin/curl
+ TMP=/tmp/php-fpm-ping.tmp
+ SENDER=/usr/bin/zabbix_sender
+ CONFIG=/etc/zabbix/zabbix_agentd.conf
+ '[' '!' -x /usr/bin/curl ']'
+ '[' '!' -x /usr/bin/zabbix_sender ']'
+ '[' '!' -f /etc/zabbix/zabbix_agentd.conf ']'
+ awk -v 'pr=- php.fpm.' '
/^accepted c/ {print pr"accepted_conn "$3}
/^active proc/ {print pr"active_processes "$3}
/^idle proc/ {print pr"idle_processes "$3}
/^listen queue:/ {print pr"listen_queue_len "$3}
/^max children reach/ {print pr"max_children_reached "$4}
/^max listen queue:/ {print pr"max_listen_queue_len "$4}'
+ /usr/bin/zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -i -
+ awk -v t=/tmp/php-fpm-ping.tmp '/^sent/{if($6==0){print"-0.001";print>t}}'

дальше молчит очень долго

rom100
() автор топика
Ответ на: комментарий от rom100

видать файл очень жирный отправляется в zabbix.
попробуй его не удалять и отправить агентом без awk.

Deleted
()
Ответ на: комментарий от vel
curl -o - http://127.0.0.1:8080/status
pool:                 www
process manager:      dynamic
start time:           10/Nov/2016:15:37:11 +0200
start since:          86972
accepted conn:        7452
listen queue:         0
max listen queue:     0
listen queue len:     0
idle processes:       2
active processes:     1
total processes:      3
max active processes: 4
max children reached: 0
slow requests:        0
rom100
() автор топика
Ответ на: комментарий от rom100

Ты вместо просмотра «кривого зеркала» научился бы отличать ответ на пост от ответа на комментарий, не говоря уж об отладке скриптов.

thesis ★★★★★
()
Ответ на: комментарий от thesis

Извини, пожалуйста. Я знаю что для отладки bash -x делаеться, а вот в awk - не силен. А телевизор я вовсе не смотрю.

rom100
() автор топика
Ответ на: комментарий от vel

в конце скрипта

rm /tmp/php-fpm-ping.tmp
во время его выполнения
-rw-rw-r--  1 zabbix zabbix  107 Nov 11 15:58 php-fpm-ping.tmp

rom100
() автор топика
Ответ на: комментарий от Deleted

Вы думаете проблема с заббикс сендером? Но, на таких же серверах с той же ОС и тем же заббикс агентом я использую точно такие же скрипты и проблем нету.

rom100
() автор топика
Ответ на: комментарий от thesis
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=ip.must.be.here
ListenPort=16666
ListenIP=0.0.0.0
ServerActive=ip.zabbix.server.here:20051
Hostname=name_of_ma_host_nigga
Timeout=30
Include=/etc/zabbix/zabbix_agentd.d/
UserParameter=php.fpm.ping,/etc/zabbix/php-fpm.sh
UserParameter=nginx.handled,/etc/zabbix/nginx_handled.sh
UserParameter=php.fpm.totalproc,/etc/zabbix/php-processes.sh
rom100
() автор топика
Ответ на: комментарий от rom100

дальше молчит очень долго

После awk ... добавьте echo done.

ArcFi
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.