Программа для мониторинга состояния АРМ, сетевых серверов «ОИК Диспетчер НТ», а также других устройств в локальной сети.
Программа может работать как внешняя задача Сервера «ОИК Диспетчер НТ» или автономно на любом удаленном компьютера.
При запуске автономно требуется указать следующие параметры командной строки:
Iface.Oik.ArmStatus сервер_динамических_данных компьютер имя_пользователя пароль
Например:
Iface.Oik.ArmStatus TMS 10.0.0.69 admin password
Конфигурация каждого экземпляра обработчика хранится в папке configs
в отдельном файле с расширением .json, при этом общее количество файлов не ограничено (один обработчик может быть задействован в нескольких конфигурациях, например, для контроля нескольких АРМ).
Для конфигурации файлов используется распространенный формат JSON.
Структура файла выглядит примерно так:
{
"Worker": "имя_обработчика",
"Options": {
...
}
}
На данный момент доступны следующие обработчики:
-
PingWorker
определяет, запущен ли компьютер (или другое устройство) -
PortWorker
определяет, отвечает ли компьютер (или другое устройство) по заданному порту -
TmClientWorker
определяет, запущен ли в данный момент «Клиент ОИК Диспетчер НТ» у заданного пользователя -
TmServerWorker
определяет, запущен ли в данный момент заданный сетевой сервер «ОИК Диспетчер НТ» (например, RBS)
Каждый обработчик имеет свой набор опций для работы
Host - IP-адрес или имя компьютера - обязатлеьно
Пример:
"options": {
}
Пример:
"options": {
}
Пример:
"options" : {
}
Пример:
"options": {
}
Примеры конфигураций доступны в каталоге sample_configs
в архиве установки.
Исходные коды программы являются открытыми, лицензия MIT.
Для расширения функционала программы можно легко самостоятельно добавить свой обработчик.
Для этого следует клонировать проект, добавить свой класс обработчика (унаследовав его от базового класса Worker
). Регистрировать новый обработчик нигде не нужно, список обработчиков определяется автоматически при запуске программы с помощью рефлексии.
Обязательным для реализации является метод обработки действия:
protected override async Task DoWork()
{
...
}
Дополнительно можно переопределить метод конфигурирования обработчика:
public override void Configure(JObject options)
{
...
}
Если ваш обработчик мог бы пригодиться другим людям, и вы готовы бы им поделиться, мы будем рады пулл-реквесту 😀