1C v8: Узнать максимальное число пользователей с запущенной 1С.
Дано: Терминальный сервер с ломаной 1с-кой.
Задача: Узнать максимальное количество пользователей одновременно использующих 1С, тем самым определив сколько нужно купить лицензий для легализации.
Решение: Простенький powershell-скрипт, который сохраняет в файл количество пользователей с запущенным процессом 1с. Скрипт работает на powershell версии 5 и выше. Как обновлять написано здесь: Windows Server 2008 R2: Обновить версию Powershell.
Скрипт раз в 30 минут сохраняет в файл запись вида:
дата/время.
текущее количество пользователей с 1с-кой.
максимальное количество пользователей с 1с-кой.
Оставляем скрипт запущенным на денек-другой и смотрим сколько пользователей одновременно работают с 1с.
Текст скрипта:
$max=0; $curr=0
$file_out = "F:\Backup\proc.txt" # Имя файла логов.
While ($true)
{
Get-Date -Format u >>$file_out
$curr=(Get-Process -Name 1cv8* -IncludeUserName | select UserName -Unique | Measure-Object).count
"Количество пользователей: " + $curr >> $file_out
if ($max -le $curr) {$max = $curr}
"Максимальное количество пользователей: " + $max >> $file_out
Start-Sleep -s 1800 # Таймаут в секундах.
}
Скачать скрипт можно отсюда.