我刚刚开始使用以下模板来监控我的 Windows 计划任务: https://share.zabbix.com/operating-s...hes-planifices
因此,它运行完美,但唯一的问题是它不会提取计划任务状态(已禁用或已启用)。现在,我尝试自己编辑与模板关联的 PowerShell 脚本,并添加以下几行:
switch ($ITEM) {
"TaskStatus" {
[string] $name = $ID
$name1 = $name.replace('â','â').replace('à','à ').replace('ç','ç').replace('é','é') .replace('è','è').replace('ê','ê')
$pathtask = Get-ScheduledTask -TaskPath "*" -TaskName "$name1"
$pathtask1 = $pathtask.Taskpath
$taskResult = Get-ScheduledTask -TaskPath "$pathtask1" -TaskName "$name1" | Select State
Write-Output ($taskResult.Status)
但它似乎不起作用,当我尝试执行该项目时出现以下错误:
Value of type "string" is not suitable for value type "Numeric (unsigned)". Value ""
由于某种原因,我得到了空值,有人能帮助我吗?:P
谢谢!标签:无
答案1
在这里找到了解决方案: https://github.com/Iakim/Zabbix-ScheduledTask
他将 TaskState 添加到他的 powershell 脚本中并且它可以运行。