Я разрабатываю сценарий, который отслеживает службу на предмет сбоя и запускает другое действие в зависимости от того, присутствует ли сбой или нет.
Мне требуется сценарий python для отслеживания выходных данных программы python "monitor-services" и анализа результатов поиска вхождения слова "fail". Если он присутствует, сценарий должен возвращаться с истинным значением и работать в течение максимум 30 секунд, возвращая ложное значение, если не происходит «сбоя».
Пример вывода, возвращенный из "monitor-services":
{Device} [/device/xxx] Networks = dbus.Array([dbus.ObjectPath('/device/xxx/xxx'), dbus.ObjectPath('/device/00242b2e41b6/hidden')], signature=dbus.Signature('o'), variant_level=1)
{Service} [/profile/default/wifi_xxx_managed_wep] State = association
{Profile} [/profile/default] Services = dbus.Array([dbus.ObjectPath('/profile/default/wifi_xxx_managed_wep'), dbus.ObjectPath('/profile/default/wifi_xxx_managed_rsn')], signature=dbus.Signature('o'), variant_level=1)
{Manager} [/] Services = dbus.Array([dbus.ObjectPath('/profile/default/wifi_xxx_managed_wep'), dbus.ObjectPath('/profile/default/wifi_xxx_managed_rsn')], signature=dbus.Signature('o'), variant_level=1)
{Service} [/profile/default/wifi_xxx_managed_wep] **failure**
{Service} [/profile/default/wifi_xxx_managed_wep] State = idle
Любая помощь будет оценена.
[править] Скорее всего, сбой произойдет примерно через 30 секунд действия, запускающего скрипт, поэтому скрипт должен завершиться через 30 секунд. [/ Править]