Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
  • Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Веб Мониторинг для крона

programmeraxel

Старожил
Баллы
103
Кому нужно и так понятно, но если что подскажу в комментариях

Код:
save='/www/index.html'
savep='/tmp/mon.tmp'
 
 
echo '<html>' >$savep
echo '<head>' >>$savep
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">' >>$savep
echo '<link rel="stylesheet" href="style.css" type="text/css" media="screen, projection, tv">' >>$savep
echo '<title>Page title</title>' >>$savep
echo '</head>' >>$savep
echo '<body>' >>$savep
echo '<div class="status-block">' >>$savep
echo '<div class="status-title">' >>$savep
 
 
for servers in site.ru:25565:0:'offline name' ip:25566:0:'offline name'
do
err=0
server=`echo $servers | awk -F ":" '{print $1}'`
port=`echo $servers | awk -F ":" '{print $2}'`
iconid=`echo $servers | awk -F ":" '{print $3}'`
sname=`echo $servers | awk -F ":" '{print $4}'`
if exec 3<>/dev/tcp/$server/$port; then
  echo -e "\xFE">&3
  if data=`cat <&3`
    then
      echo good
    else
      err=1
  fi
 
  if [ -n "$data" ]
    then
      echo good
    else
      err=1
  fi
 
  if [ "$err" == 1 ]
    then
      echo bad
    else
      echo good
      servername=`echo $data | awk -F"\xA7" '{print $1}' | awk -F"\x14" '{print $2}'`
      loginu=`echo $data | awk -F"\xA7" '{print $2}'`
      allu=`echo $data | awk -F"\xA7" '{print $3}'`
      let "bar = loginu % allu"
  fi
else
  err=1
fi
 
if [ "$err" == 1 ]
then
  echo '<div class="status-holder">' >>$savep
  echo '<div class="status-text">Offline</div>' >>$savep
  echo '<div class="status-name">'$sname'</div>' >>$savep
  echo '<div class="status-offline" style="width:200px">' >>$savep
  echo '<div class="status-trail" style="width:100%"></div>' >>$savep
else
  echo '<div class="status-holder">' >>$savep
  echo '<div class="status-text">'$loginu'/'$allu'</div>' >>$savep
  echo '<div class="status-name">'$servername'</div>' >>$savep
  echo '<div class="status-online" style="width:200px">' >>$savep
  echo '<div class="status-trail" style="width:'$bar'%"></div>' >>$savep
fi
echo '</div>' >>$savep
echo '</div>' >>$savep
 
done
echo '</div>' >>$savep
echo '</div>' >>$savep
echo '</body>' >>$savep
echo '</html>' >>$savep
cp "$savep" "$save"
 

Вложения:

  • mon.zip
    mon.zip
    Размер файла
    7 КБ
    Просмотров
    230
Нехрена уже не понятно)
насколько я помню крон это команда
причем тут мониторинг, не могу понять, и чем мониторинг для крона отличает от обычного?
 
крон это демон во первых, во вторых каждый раз когда у тебя пользователь смотрит статистику у тебя дергается сервер что не есть гуд, когда мониторинг работает через крон такой проблемы нет.
 
Так это не полоска мониторинга? Значит я не там...=(
 
это полоска мониторинга но если ты совсем не понимаеш зачем именно так делать то такой мониторинг тебе не нужен.
 
а если кроном писать статус сервера в простой текстовый файл в две строки
0:10
1:100
а потом скриптом который выводит инфу просто читать его и выводить "онлайн 10/100"
как мне кажется нагрузка плевая и работать это будет быстро
 
а если кроном писать статус сервера в простой текстовый файл в две строки
0:10
1:100
а потом скриптом который выводит инфу просто читать его и выводить "онлайн 10/100"
как мне кажется нагрузка плевая и работать это будет быстро
ты бы хоть на скрипт глянул что ли...
 
ты бы хоть на скрипт глянул что ли...
мне лень скачивать архив
а тот код что под спойлером как бы ваааааааащпе ниочем не говорит, вам так не кажется?

И если я хоть немного его понял, то считаю глупым сохранение целого html документа вместо всего 2 строк.
 
мне лень скачивать архив
а тот код что под спойлером как бы ваааааааащпе ниочем не говорит, вам так не кажется?

И если я хоть немного его понял, то считаю глупым сохранение целого html документа вместо всего 2 строк.
если то что под спойлером ни о чем не говорит то ты ошибся темой.

целый html документ это текст генерируемый за 3мс зато такой формат позволяет не разделять логику отображения и логику получения.
 
ДЛЯ ТЕХ, КТО НИПАНЯЛ! Это скрипт для линукса, который сохраняет сгенерированный файл в опр. папку. *см. начала скрипта*, а дальше вы его как хотите насилуете, я бы посоветовал через аякс.
Но и скрипт нужно тоже запустить. Не забывайте.
 
можна его на сайте запустить? просто залив на ftp и настроив?
 
@programmeraxel,у меня хост есть под сайт, может знаете ihc и крона я там не находил, думал через Putty как то можна но не нашел. Не подскажите где в общех черта обыно он находится?
 
@programmeraxel,подскажите еще кое что, вот эту строчку
for servers in site.ru:25565:0:'offline name' ip:25566:0:'offline name'
во втором я прописал ip сервера, а что в первом писать не поиму, написанно сайт + Ip + порт
И еще, если у меня ваш мониторинг находится по пути
Код:
/www/site.ru/m
правельно я указал путь куда генерировать index файл?
Код:
save='/index.html'
savep='/mon.tmp'
Хотел чтоб в туже папку со скриптом.
 
@programmeraxel,подскажите еще кое что, вот эту строчку
for servers in site.ru:25565:0:'offline name' ip:25566:0:'offline name'
во втором я прописал ip сервера, а что в первом писать не поиму, написанно сайт + Ip + порт
И еще, если у меня ваш мониторинг находится по пути
Код:
/www/site.ru/m
правельно я указал путь куда генерировать index файл?
Код:
save='/index.html'
savep='/mon.tmp'
Хотел чтоб в туже папку со скриптом.
1) ip:рort:имя
2)
save='index.html'
savep='mon.tmp'
В ту же папку
 
Не хочет работать.
Безымянный.png
Код:
save='index.html'
savep='mon.tmp'
 
0-59 * * * * echo
echo '<html>' >$savep
echo '<head>' >>$savep
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">' >>$savep
echo '<link rel="stylesheet" href="style.css" type="text/css" media="screen, projection, tv">' >>$savep
echo '<title>Page title</title>' >>$savep
echo '</head>' >>$savep
echo '<body>' >>$savep
echo '<div class="status-block">' >>$savep
echo '<div class="status-title">' >>$savep
 
 
for servers in 85.238.98.243:25580 'Erelis classic' 85.238.98.243:25580 'Erelis classic 1'
do
err=0
server=`echo $servers | awk -F ":" '{print $1}'`
port=`echo $servers | awk -F ":" '{print $2}'`
iconid=`echo $servers | awk -F ":" '{print $3}'`
sname=`echo $servers | awk -F ":" '{print $4}'`
if exec 3<>/dev/tcp/$server/$port; then
  echo -e "\xFE">&3
  if data=`cat <&3`
    then
      echo good
    else
      err=1
  fi
 
  if [ -n "$data" ]
    then
      echo good
    else
      err=1
  fi
 
  if [ "$err" == 1 ]
    then
      echo bad
    else
      echo good
      servername=`echo $data | awk -F"\xA7" '{print $1}' | awk -F"\x14" '{print $2}'`
      loginu=`echo $data | awk -F"\xA7" '{print $2}'`
      allu=`echo $data | awk -F"\xA7" '{print $3}'`
      let "bar = loginu % allu"
  fi
else
  err=1
fi
 
if [ "$err" == 1 ]
then
  echo '<div class="status-holder">' >>$savep
  echo '<div class="status-text">Offline</div>' >>$savep
  echo '<div class="status-name">'$sname'</div>' >>$savep
  echo '<div class="status-offline" style="width:200px">' >>$savep
  echo '<div class="status-trail" style="width:100%"></div>' >>$savep
else
  echo '<div class="status-holder">' >>$savep
  echo '<div class="status-text">'$loginu'/'$allu'</div>' >>$savep
  echo '<div class="status-name">'$servername'</div>' >>$savep
  echo '<div class="status-online" style="width:200px">' >>$savep
  echo '<div class="status-trail" style="width:'$bar'%"></div>' >>$savep
fi
echo '</div>' >>$savep
echo '</div>' >>$savep
 
done
echo '</div>' >>$savep
echo '</div>' >>$savep
echo '</body>' >>$savep
echo '</html>' >>$savep
cp "$savep" "$save"
 
Код:
save='index.html'
savep='mon.tmp'
 
0-59 * * * * echo
echo '<html>' >$savep
echo '<head>' >>$savep
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">' >>$savep
echo '<link rel="stylesheet" href="style.css" type="text/css" media="screen, projection, tv">' >>$savep
echo '<title>Page title</title>' >>$savep
echo '</head>' >>$savep
echo '<body>' >>$savep
echo '<div class="status-block">' >>$savep
echo '<div class="status-title">' >>$savep
 
 
for servers in 85.238.98.243:25580:'server 1' 85.238.98.243:25580:'server 2'
do
err=0
server=`echo $servers | awk -F ":" '{print $1}'`
port=`echo $servers | awk -F ":" '{print $2}'`
iconid=`echo $servers | awk -F ":" '{print $3}'`
sname=`echo $servers | awk -F ":" '{print $4}'`
if exec 3<>/dev/tcp/$server/$port; then
  echo -e "\xFE">&3
  if data=`cat <&3`
    then
      echo good
    else
      err=1
  fi
 
  if [ -n "$data" ]
    then
      echo good
    else
      err=1
  fi
 
  if [ "$err" == 1 ]
    then
      echo bad
    else
      echo good
      servername=`echo $data | awk -F"\xA7" '{print $1}' | awk -F"\x14" '{print $2}'`
      loginu=`echo $data | awk -F"\xA7" '{print $2}'`
      allu=`echo $data | awk -F"\xA7" '{print $3}'`
      let "bar = loginu % allu"
  fi
else
  err=1
fi
 
if [ "$err" == 1 ]
then
  echo '<div class="status-holder">' >>$savep
  echo '<div class="status-text">Offline</div>' >>$savep
  echo '<div class="status-name">'$sname'</div>' >>$savep
  echo '<div class="status-offline" style="width:200px">' >>$savep
  echo '<div class="status-trail" style="width:100%"></div>' >>$savep
else
  echo '<div class="status-holder">' >>$savep
  echo '<div class="status-text">'$loginu'/'$allu'</div>' >>$savep
  echo '<div class="status-name">'$servername'</div>' >>$savep
  echo '<div class="status-online" style="width:200px">' >>$savep
  echo '<div class="status-trail" style="width:'$bar'%"></div>' >>$savep
fi
echo '</div>' >>$savep
echo '</div>' >>$savep
 
done
echo '</div>' >>$savep
echo '</div>' >>$savep
echo '</body>' >>$savep
echo '</html>' >>$savep
cp "$savep" "$save"
 

Поделиться этой страницей

Назад
Верх