LINUX.ORG.RU

Сообщения ru_core

 

regexp в скрипте expect

Всем привет!

Пишу тестовый скрипт для парсинга ответов от smtp server'a

Инструмент: expect, telnet.

алгоритм: в скрипте expect посылаю запрос на сервер с помощью telnet'a. Получаю ответ. В зависимости от возвращаемого кода ошибки в telnet выхожу из скрипта с тем или иным кодом.

Expect script (пример функции для тестирования посылки сообщения MAIL FROM: <+1234567890>):

proc mail_from {} {
        send "MAIL FROM_%? <+180938592437>\r" #ошибка специально тут
        expect {
                "500*"
                {
                        send_user "test passed \n"
                        exit 0 
                }
                -re "(?!(^500*))" #все ошибки кроме 500 - как правильно составить regexp?
                {
                        send_user "test was not passed \n"
                        exit 1
                }
        }
}

Как видно из скрипта мне надо получить код ошибки «500 + какой-то текст» тогда тест пройден (возвращается 0). Иначе - тест не пройден (возвращается 1).

не получается сделать регулярное выражение для всех возвращаемых кодов ошибок кроме 500. То есть все, когда, кроме 500 - означают, что тест не пройден.

Помогите, пожалуйста, может не учёл какие-то особенности expect.

Спасибо.

 

ru_core
()

MMS сервер аналог MBUNI

Всем привет, подскажите, пожалуйста аналог проекта MBUNI, который бы был написан на С/С++

Спасибо

ru_core
()

настройка простейшего failover-а (Pacemaker + Corosync)

Всем привет.

Есть задача настроить failover.

Исходные данные: Есть некая программа, в случае падения которой надо переключать shared ip. Всё это должно быть настроено параллельно с drbd. CentOS 5.8

Что удалось сделать. 1. Настроил shared ip, drbd. 2. Создал ocf скрипт, чтобы он возвращал мне нужные значения ошибок, реагируя на которые конфигуация crm давала сигнал для переключения shared ip.

Что не удалось: настроить конфигурацию crm, чтобы переключался shared ip в случае падения программы. Под падением программы понимаю, например, исчезновение pid-a соотвествующего процесса.

Привожу конфигурационный скрипт, где «custom_primitive» - примитив для наблюдения (программа, за которой надо следить):

node srv01 \
	attributes standby="off"
node srv02 \
	attributes standby="off"
primitive custom_primitive ocf:heartbeat:custom_primitive_ocf_script \
	op monitor interval="5s"
primitive ClusterDRBD ocf:linbit:drbd \
	params drbd_resource="r0" \
	op monitor interval="5s"
primitive ClusterIP ocf:heartbeat:IPaddr2 \
	params ip="10.0.0.3" cidr_netmask="27" \
	op monitor interval="5s" \
	meta target-role="Started"
primitive fs_ClusterDRBD ocf:heartbeat:Filesystem \
	params device="/dev/drbd1" directory="/mnt/drbd0" fstype="ext3" \
	meta target-role="Started"
ms ms_custom_primitive custom_primitive \
	meta master-max="1" clone-max="2" notify="true" target-role="Started"
ms ms_ClusterDRBD ClusterDRBD \
	meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true" target-role="Started" is-managed="true"
colocation FSwithDRBD inf: ClusterIP fs_ClusterDRBD ms_custom_primitive ms_ClusterDRBD:Master
order FSafterDRBD inf: ms_ClusterDRBD:promote fs_ClusterDRBD:start ms_custom_primitive:promote
property $id="cib-bootstrap-options" \
	dc-version="1.0.12-unknown" \
	cluster-infrastructure="openais" \
	expected-quorum-votes="2" \
	stonith-enabled="false" \
	no-quorum-policy="ignore" \
	default-resource-stickiness="1"

пробовал помещать ocf скрипт в ocf:pacemaker - ничего не получилось. Буду рад любым идеям, подсказкам, решениям. Спасибо.

P.S. Прочитал существующие на форуме темы - ответ на свой вопрос не смог найти.

ru_core
()

как закрыть событие в Zenoss?

всем привет,

допустим на Zenoss пришёл трап с информацией о том, что упала БД. Через какое-то время база данных поднялась.

Как закрыть событие, находящееся в Zenoss о том, что БД упала?

Спасибо.

ru_core
()

Как собрать информацию из двух логов и построить на её основе таблицу в Open Office (Spreadsheet)

Всем привет,

у меня задача - мониторить процесс работы программы (вычислять фиксировать значения определённых переменных) + следить, как программа использует оперативную память и процессор. Для этого решил выводить данные в логи:

1) данные про память и процессор для моей программы с помощью:

while [ true ]; do ps -p $(pidof -s my_application_name) -o %cpu,rss,vsize,etime >> LOG; sleep 0.1; done

В файл данные выводятся в виде: %CPU RSS VSZ TIME 16.0 20768 409972 00:00:01

2) данные про значение переменных в программе вывожу тоже в лог.

В файл данные выводятся в виде: VALUE TIME 15 00:00:01

синхронизирую данные этих двух пунктов по времени запуска программы (поле TIME).

подскажите, пожалуйста, как мне «вытягивать» данные из двух логов и на их основе построить таблицу/диаграмму в SpreadSheet (электронные таблицы из Open Office). Если у кого есть пример, буду очень благодарен.

ru_core
()

Тестирование программы и отслеживание нагрузки процессора и ОЗУ.

Всем привет!

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

Подскажите, пожалуйста, что мне можно выбрать для моих нужд?

Хочется такой софт, чтобы результаты нагрузки на процессор и использования ОЗУ писались в лог.

Спасибо.

ru_core
()

RSS подписка на новые темы