Инструменты пользователя

Инструменты сайта


progs:cons

Консультант

Базы устарели

Нужно посмотреть журнал планировщика, проверить место на диске и посмотреть папку RECEIVE, там должно быть только 2 файла от даты пополнения.

Проверка

# Информация с сервера Консультанта
$t = get-date
$session = New-CimSession server-cons1
$lastRec = import-csv '\\server-cons1\k$\RECEIVE\LAST_REC.TXT' -Header 'Код базы','Имя базы','Номер 1','Номер 2','Дата','Хост' -Encoding Default
$lastRecDate = $lastRec.Дата |% {$_ -as [datetime]} |sort |select -Last 1
$taskName = 'cons_update_new2'
$task = Get-ScheduledTaskInfo $taskName -CimSession $session
$taskResult = $task.LastTaskResult
$taskDate = $task.LastRunTime
$taskDaysAgo = ($t - $taskDate).days
Remove-CimSession $session
 
# Нерабочие дни
$calFile = "$env:TEMP/cal.csv"
curl "http://xmlcalendar.ru/data/ru/$($t.Year)/calendar.csv" -O $calFile
$cal = Import-Csv $calFile -Encoding utf8
$notWorkingDays = $cal.($t.tostring('MMMM')).split(',') -match '\d$|\+'
 
# Письма
$scriptInfo = "<p><i>Отчёт сформирован скриптом $($PSScriptRoot + '\' + $MyInvocation.MyCommand) на компьютере $($env:COMPUTERNAME).</i></p>"
$mailParameters = @{
    SmtpServer = 'mail.example.com'
    From = 'skynet@example.com'
    To = 'admin@example.com'
    Encoding = 'UTF8'
    BodyAsHtml = $true
}
 
# Если старше суток и если вчера не было нерабочего дня (по выходным Консультант не обновляется)
if ($lastRecDate -lt $t.Date.AddDays(-1) -and $t.AddDays(-1).Day -notin $notWorkingDays) {
    $mail = "<p>Дата последнего обновления - $($lastRecDate.ToLongDateString())</p>"
    $mail += $scriptInfo
    Send-MailMessage -Subject "Консультант - базы устарели" -Body $mail @mailParameters
}
 
# Проверка задачи в планировщике
if ($taskDaysAgo -gt 1 -or $taskResult -ne 0) {
    $mail = "<p>Код завершения задачи обновления <b>$TaskName</b>: $taskResult<p>"
    $mail += "<p>Дата последнего выполнения: $($taskDate.tostring())<p>"
    $mail += $scriptInfo
    Send-MailMessage -Subject "Консультант - что-то с обновлением" -Body $mail @mailParameters
}

Не зарегистрирована система

Когда запускаешь Консультант с ключом /ADM, он выдаёт сообщения типа

Решение:

  1. На сервере Консультанта запустить CONS.EXE /reg с правами админа, нажать там кнопку «Сохранить все параметры в файл» и «Закрыть».
  2. Зайти в папку SEND и выслать самый свежий файл .QR по адресу обслуживающей конторы.
  3. В ответе будет содержаться файл .AR, его нужно положить в каталог RECEIVE и запустить CONS.EXE /adm с правами админа.
progs/cons.txt · Последнее изменение: 31.03.2023 11:32 — viacheslav

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki