1. Делаем общую папку (например '\\Shared\AdminsForStartPlus') на запись для пользователя, под которым запущены сервера 1С, и на чтение для администраторов.
2. На серверах 1С создаем базы на основе конфигурации ВнешнийРегламент.
- Настраиваем регламент "Получаем данные сервера 1С" (GetInfoServer1C.epf).
- Запускаем с периодичностью час или два.
- Для лучшего управления и внесения изменений в алгоритмы используем один каталог внешних модулей.
3. В файле StartPlus.ini редактируем параметр:<br>PathReports=\\Shared\AdminsForStartPlus.
4. В файле StartPlus-Admins.lst добавляем учетки администраторов, которым можно смотреть отчеты.
5. Запускаем StartPlus, у администраторов появится отдельная вкладка с отчетами по состоянию серверов 1С.
Тестирование проводилось на платформе 8.3.18 и 8.3.22.
Дополниnельно:
Если требуется у всех пользователей заменить ярлык StartPlus на новый путь, надо в старом местоположении заменить содержимое всех Lst файлов на:
[Создать новый ярлык StartPlus]
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -Command "$s=(New-Object -COM WScript.Shell).CreateShortcut('C:\Users\User1\Desktop\StartPlusNew.lnk'); $s.TargetPath='\\server1\StartPlusNew\StartPlus.exe'; $s.WorkingDirectory='\\server1\StartPlusNew'; $s.Save();"
Дополниnельно 2:
Пример файла Default.aspx в IIS для возврата LST файла для текущего пользователя домена.
<%@ Page Language="C#" %>
<script type="text/rocketlazyloadscript" language="C#" runat="Server">
void Page_Load(object sender, EventArgs e)
{
// 1. Очищаем всё, что ASP.NET успел подготовить (теги <html> и т.д.)
Response.Clear();
// 2. Указываем, что передаем обычный текст, а не HTML
Response.ContentType = "text/plain";
Response.ContentEncoding = System.Text.Encoding.GetEncoding(1251); //System.Text.Encoding.UTF8;
if (User.Identity.IsAuthenticated)
{
string fullName = User.Identity.Name; // обычно "DOMAIN\username";
string pfne = "C:\\inetpub\\wwwroot\\StartPlusLst\\"+fullName.Replace("\\","\\StartPlus-")+".lst";
if (System.IO.File.Exists(pfne))
{
// 3. Читаем и записываем содержимое файла напрямую в поток ответа
Response.WriteFile(pfne);
}
// 4. Завершаем ответ, чтобы ASP.NET не добавлял ничего лишнего в конец
Response.End();
}
}
</script>
<html>
</html>
Вступайте в нашу телеграмм-группу Инфостарт