Включение журнала сервера из командной строки

Михаил Захаров

Для того, чтобы включить журнал сервера DocsVision, можно воспользоваться консолью настройки. Но мне удобнее это делать из командной строки. Для этих целей были написаны следующие скрипты.

Внимание. Скрипты написаны для версии DocsVision 4.1. Для других версий нужно изменить путь к ключу реестра "HKLM:\SOFTWARE\DocsVision\Platform\4.1\Server"

1. Включение журнала сервера DocsVision (StorageServer)

Function is64
{
$os=Get-WMIObject win32_operatingsystem
if ($os.OSArchitecture -eq "64-bit") {
return $true
}
else {
return $false
}
}

if ($args)
{
$FilePath=$args[0]
}
else
{
write-host ("Please enter a full log file path")
break
}

if (is64 -eq $true)
{
#64bit
$path="HKLM:\SOFTWARE\Wow6432Node\DocsVision\Platform\4.1\Server"
}
else
{
#32bit
$path="HKLM:\SOFTWARE\DocsVision\Platform\4.1\Server"
}

Set-itemproperty -Path $path -Name "LogFile" -type "String" -value $FilePath

Итак, как известно 32 битные приложения работая в 64 битной операционной системе хранят ключи реестра в подветке \Software\Wow6432Node. Поэтому в сценарии реализована ф-ция "Is64", которая проверяет, является ли ОС 64разрядной.

Пример использования скрипта. Например, скрипт сохранен в файл enable-serverlog.ps1.
Для включения журнала запустите скрипт с параметром - путь к файлу журнала.
>enable-serverlog C:\Logs\Server.log

2. Отключение журнала

Function is64
{
$os=Get-WMIObject win32_operatingsystem
if ($os.OSArchitecture -eq "64-bit") {
return $true
}
else {
return $false
}
}

if (is64 -eq $true)
{
#64bit
$path="HKLM:\SOFTWARE\Wow6432Node\DocsVision\Platform\4.1\Server"
}
else
{
#32bit
$path="HKLM:\SOFTWARE\DocsVision\Platform\4.1\Server"
}

Set-itemproperty -Path $path -Name "LogFile" -type "String" -value $null

Пример использования. Например, скрипт сохранен в файл disable-serverlog.ps1.
>disable-serverlog

 

Страница сайта http://www.interface.ru
Оригинал находится по адресу http://www.interface.ru/home.asp?artId=20057