Jump to content

дата последнего запуска/финиша задачи в терминале linux


Recommended Posts

Как узнать дату последнего запуска/финиша задачи в терминале linux?
(агент администрирования НЕ подходит)


Необходима стастистика работы ODS-задачи.

Просмотрел весь kesl-control, кроме как kesl-control --app-info, где есть:
...
Дата последнего запуска задачи Scan_My_Computer:...

не нашел :(
И моя задача - не "Scan_My_Computer" 

Подскажите кто знает как.

Link to comment
Share on other sites

  • 2 weeks later...

Добрый день!

Я пока смог найти только вариант чтения событий:

echo "select Date from events where TaskName = 'Scan_My_Computer' and TaskState = '6' order by Date;" | sqlite3 /var/opt/kaspersky/kesl/private/storage/events.db

И вот такой:

date -d @$(echo "select valuelob from storage where keylob like 'lfs.PersistentStorageProvider';" | sqlite3 /var/opt/kaspersky/kesl/private/storage/kvdb/kesl_storage.kvdb | xmllint --xpath "string(/root/TaskManager/LfsTaskInfoList/Scan_My_Computer/@lastStartTime)" -)

Но вот по какому принципу сбрасываются значения для меня загадка.

Link to comment
Share on other sites

Спасибо.
Но я забыл уточнить: винда.
Я нашел в ней такое C:\ProgramData\Kaspersky Lab\KES.21.16\Data\reports.db
С отключенной самозащитой открывается: 203 таблицы.
Поможете разобраться в какой есть даты запуска ODS?

Link to comment
Share on other sites

Добрый день!

Проще из реестра читать:

$ZeroTime = New-Object -Type DateTime -ArgumentList 1970, 1, 1, 0, 0, 0, 0

$isWOW64 = if($env:PROCESSOR_ARCHITECTURE -eq "AMD64") { "WOW6432Node\" } else { "\" }
$KES_Ver = [string](Get-ItemProperty "HKLM:\\SOFTWARE\$($isWOW64)KasperskyLab\protected\KES" -ErrorAction Ignore)."(default)"

"LastStart", "NeedReboot", "LastSuccessfulFullScanStart" | %{
     Write-Host "$_ : " $ZeroTime.AddSeconds( [string]"$( (Get-ItemProperty "HKLM:\\SOFTWARE\$($isWOW64)KasperskyLab\protected\$KES_Ver\Data" -ErrorAction Ignore)."$_")" )
}

 

Link to comment
Share on other sites

Posted (edited)

LINUX
 

В 06.05.2024 в 18:19, Erael сказал:
echo "select Date from events where TaskName = 'Scan_My_Computer' and TaskState = '6' order by Date;" | sqlite3 /var/opt/kaspersky/kesl/private/storage/events.db


это (как и почти все команды sqlite3 и даже без "where") выдает:
Error: near line 1: malformed database schema (Events$RuntimeTaskId) - near "WHERE": syntax error

я потыкался в sqlite3 в поисках названия полей таблицы events - ответ почти всегда "ошибка возле where"
:(

В 06.05.2024 в 18:19, Erael сказал:
date -d @$(echo "select valuelob from storage where keylob like 'lfs.PersistentStorageProvider';" | sqlite3 /var/opt/kaspersky/kesl/private/storage/kvdb/kesl_storage.kvdb | xmllint --xpath "string(/root/TaskManager/LfsTaskInfoList/Scan_My_Computer/@lastStartTime)" -)

эта выдает правильное дату/время на задачу Scan_My_Computer:
Ср апр 24 15:47:55 MSK 2024

, а вот когда меняю на имя "своей" задачи, PROVERKA:
date -d @$(echo "select valuelob from storage where keylob like 'lfs.PersistentStorageProvider';" | sqlite3 /var/opt/kaspersky/kesl/private/storage/kvdb/kesl_storage.kvdb | xmllint --xpath "string(/root/TaskManager/LfsTaskInfoList/PROVERKA/@lastStartTime)" -)

, выдает одно и то же время:
Чт янв  1 03:00:00 MSK 1970

Я проверил - на другое имя задачи выдает ошибку:
date: неверная дата «@»

, т.е. задача правильная, а вот что за дата - непонятно, похожа на зеро-тайм..

---------------------------------------------------------------------------
WINDOWS

 (если это скрипт Powershell) вот:
D:\TMP>powershell.exe 1.ps1
Неверная числовая константа: 1..
строка:1 знак:3
+ 1. <<<< ps1
    + CategoryInfo          : ParserError: (1.:String) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : BadNumericConstant
 

В 13.05.2024 в 14:44, Erael сказал:

Проще из реестра читать:

$ZeroTime = New-Object -Type....

А где конкретное имя ODS-задачи? По ключевым "LastStart", "NeedReboot", "LastSuccessfulFullScanStart"?
Так не устроит 😞
--------
ЗЫ что за форум такой....аскетичный? Я не могу удалить и отредактировать собственные посты.

Edited by skol
Link to comment
Share on other sites

Linux

Scan_My_Computer не нужно менять. И использовать тот файл в котором наиболее актуальная информация.
 

Windows

Если не получается выполнять скрипты powershell на рабочем месте. Воспользуйтесь стандартной утилитой
 

kescli --opswat GetLastScanTime

 

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


×
×
  • Create New...