Мы запускаем определенное приложение на сервере клиента. Приложение запускается в сеансе консоли и в основном управляет некоторой пакетной обработкой. Время от времени мы обнаруживаем, что приложение не работает, и, очевидно, это происходит только после того, как клиент жалуется на то, что работа приложения не выполняется. Причины завершения работы приложения варьируются от внутренней ошибки до преднамеренного отключения до перезапуска сервера. Если последнее, я могу увидеть доказательства в средстве просмотра событий. В других случаях я ищу способ узнать, кто был в системе во время закрытия приложения.
Мне кажется разумным запускать приложение через пакетный файл, и как только приложение будет закрыто, последующие пакетные команды будут перечислять пользователей, вошедших в систему, один из которых, вероятно, отвечает за завершение работы. Проблема в том, что каждый входит на сервер, используя учетные данные сетевого администратора (!), И разные сеансы можно отличить друг от друга только по имени компьютера пользователя.
Стоит отметить, что:
Обновить:: Так что, может быть
netstat -n -a | findstr 3389
это то, что вы ищете.
** Перед обновлением: ** Я думаю, что вы ищете:
query session
query user
Но, в лучшем случае, это пластыри. Вам следует сделать шаг назад и решить эту проблему на более глубоком уровне. может быть служба сторожевого пса или что-то в этом роде.
Возможно, немного нестандартное мышление, но на нескольких наших серверах TS у нас есть сценарий входа в систему, который записывает различную информацию в папку на сервере. Мы делаем это по причинам, совершенно не связанным с вашими, но вы можете легко сделать это, чтобы вести журнал о том, кто входит в систему. В сеансе TS переменная среды CLIENTNAME устанавливается равной имени рабочей станции, выполняющей подключение, поэтому это может быть так просто как:
date /t >>C:\somefolder\%CLIENTNAME%.log
time /t >>C:\somefolder\%CLIENTNAME%.log
echo %USERNAME% >>C:\somefolder\%CLIENTNAME%.log
echo ---------- >>C:\somefolder\%CLIENTNAME%.log
JR
Многие пакеты сетевого мониторинга позволят вам контролировать отдельный процесс и предупреждать вас, когда они останавливаются / перезапускаются и т. Д.
Мы используем JFFNMS (http://www.jffnms.org/) для мониторинга QuarkXpress на нескольких машинах, которые получают задания на них. Время от времени при выполнении задания приложение вылетает из строя, и в этом случае JFFNMS отправляет нам электронное письмо.
Вы можете использовать net session
в Windows, чтобы узнать, кто вошел в систему (как локально, так и удаленно). В настоящее время у меня нет окна Windows, извините, я не могу дать вам всю команду, но net session help
должен ..... помочь? :)