Today i have strange split-brain…
Technologies
osTicket JSON for Asterisk
if [ $localnum = 'noanswer' ]; then
state=mysql --default-character-set=utf8 -h$dbh -u$dbu -p$dbp $dbd -Nse "select concat(_user__cdata.phone,';',_user__cdata.account,';',_user.name) from _user__cdata join _user on user_id=id where phone=$callnum limit 1;"
#первый параметр показывает телефон, второй лицевой счет, третий ФИО абонента (вывод разделен ";" для того, чтобы подставить ФИО с пробелами в переменную bash)
echo $state| while IFS=";" read -r tel acc name; do
#если лицевой счет найден, подставим в email с суффиксом @e-yugansk.ru чтобы тикет смог создасться через API от звонящего пользователя
if [ "$acc" != '' ]; then
echo \ {
echo \ \"alert\": true,
echo \ \"autorespond\": true,
echo \ \"source\": \"API\",
echo \ \"assignee\": \"Техническая Поддержка\",
echo \ \"name\": \"$name\",
echo \ \"email\": \"$acc@e-yugansk.ru\",
echo \ \"phone\": \"$callnum\",
echo \ \"subject\": \"Телефонная заявка от $name\",
echo \ \"ip\": \"10.232.2.98\",
echo \ \"message\": \"data:text\/html\;charset=utf-8\,Входящий звонок $callnum: Лицевой Счет $acc\",
echo \ \"assignId\": \"t2\",
echo \ \"attachments\": [
echo \ ]
echo \ }
#если лицевой счет не найден, подставим в email почту технической поддержки support@e-yugansk.ru
else
echo \ {
echo \ \"alert\": true,
echo \ \"autorespond\": true,
echo \ \"source\": \"API\",
echo \ \"assignee\": \"Техническая\ Поддержка\",
echo \ \"name\": \"Неизвестный\ звонок\",
echo \ \"email\": \"support@e-yugansk.ru\",
echo \ \"phone\": \"$callnum\",
echo \ \"subject\": \"Телефонная\ заявка\",
echo \ \"ip\": \"10.232.2.98\",
echo \ \"message\": \"data:text\/html\;charset=utf-8\,Входящий звонок $callnum\",
echo \ \"assignId\": \"t2\",
echo \ \"attachments\": [
echo \ ]
echo \ }
fi
done
fi
if [ $localnum != noanswer ]; then
state=mysql --default-character-set=utf8 -h$dbh -u$dbu -p$dbp $dbd -Nse "select concat(_user__cdata.phone,';',_user__cdata.account,';',_user.name) from _user__cdata join _user on user_id=id where phone=$callnum limit 1;"
#определяем ID оператора, ответившего на звонок
sid=mysql --default-character-set=utf8 -h$dbh -u$dbu -p$dbp $dbd -Nse "select staff_id from _staff where phone_ext=$localnum limit 1;"
#первый параметр определяет телефон, второй лицевой счет, третий ФИО абонента (вывод разделен ";" для того, чтобы подставить ФИО с пробелами в переменную bash)
echo $state| while IFS=";" read -r tel acc name; do
#если лицевой счет найден, подставим в email с суффиксом @e-yugansk.ru чтобы тикет смог создасться через API от звонящего пользователя
if [ "$acc" != '' ]; then
echo \ {
echo \ \"alert\": true,
echo \ \"autorespond\": true,
echo \ \"source\": \"API\",
echo \ \"assignee\": \"Техническая Поддержка\",
echo \ \"name\": \"$name\",
echo \ \"email\": \"$acc@e-yugansk.ru\",
echo \ \"phone\": \"$callnum\",
echo \ \"subject\": \"Телефонная заявка от $name\",
echo \ \"ip\": \"10.232.2.98\",
echo \ \"message\": \"data:text\/html\;charset=utf-8\,Входящий звонок $callnum: Лицевой Счет $acc\",
echo \ \"assignId\": \"s$sid\",
echo \ \"attachments\": [
echo \ ]
echo \ }
#если лицевой счет не найден, подставим в email почту технической поддержки support@e-yugansk.ru
else
echo \ {
echo \ \"alert\": true,
echo \ \"autorespond\": true,
echo \ \"source\": \"API\",
echo \ \"assignee\": \"Техническая\ Поддержка\",
echo \ \"name\": \"Неизвестный\ звонок\",
echo \ \"email\": \"support@e-yugansk.ru\",
echo \ \"phone\": \"$callnum\",
echo \ \"subject\": \"Телефонная\ заявка\",
echo \ \"ip\": \"10.232.2.98\",
echo \ \"message\": \"data:text\/html\;charset=utf-8\,Входящий звонок $callnum\",
echo \ \"assignId\": \"s$sid\",
echo \ \"attachments\": [
echo \ ]
echo \ }
fi
done
fi
trash
mv /var/run/vdsm/storage/8cf12007-1ae3-4f33-9637-3afc8811e5dd/268c5660-b1b5-4046-9022-f2fc4e26725b/7692fe83-13cc-4a24-b4b1-75ec6ad73f2a ~/
mv /var/run/vdsm/storage/8cf12007-1ae3-4f33-9637-3afc8811e5dd/fb96fab2-23be-49be-a83f-a23390f7bd9f/d94bb7f6-9f66-41e0-bc92-55252650e52b ~/
mv /gluster/engine/brick/8cf12007-1ae3-4f33-9637-3afc8811e5dd/ha_agent/hosted-engine.lockspace ~/
mv /gluster/engine/brick/8cf12007-1ae3-4f33-9637-3afc8811e5dd/ha_agent/hosted-engine.metadata ~/
mv ~/hosted-engine.lockspace /gluster/engine/brick/8cf12007-1ae3-4f33-9637-3afc8811e5dd/ha_agent/hosted-engine.lockspace
mv ~/7692fe83-13cc-4a24-b4b1-75ec6ad73f2a /var/run/vdsm/storage/8cf12007-1ae3-4f33-9637-3afc8811e5dd/268c5660-b1b5-4046-9022-f2fc4e26725b/7692fe83-13cc-4a24-b4b1-75ec6ad73f2a
mv /root/d94bb7f6-9f66-41e0-bc92-55252650e52b /var/run/vdsm/storage/8cf12007-1ae3-4f33-9637-3afc8811e5dd/fb96fab2-23be-49be-a83f-a23390f7bd9f/d94bb7f6-9f66-41e0-bc92-55252650e52b
some note
Neighbourhoods
java for any kvm :)
Zabbix array and disk discovering MegaCLI
Hi All!
Today im completed works with Zabbix array and disk discovering with MegaCli.
Next we should thinking about “PREPROCESSING” Zabbix function for monitoring disks via smartmontools.
Okay, posting script
New Life!
MySQL each database from full b/fackup :)
#!/bin/bash
db=`find /var/lib/mysql -maxdepth 1 -type d|awk -F '/' '{print$5}'|grep -Ev 'mysql|perfomance_schema|^$'|sed 's/\@002d/-/g'`
#echo "$db"
echo "$db" | while read a; do
echo $a
sed -n "/^-- Current Database: \`"$a"\`/,/^-- Current Database: \`/p" /home/hosting_2017-10-03.sql > /home/backup/$a.sql
done