You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Check_MK中PowerShell登录用户检测脚本显示UNKN状态求助

Windows Server登录用户检测脚本在Check_MK中异常问题

问题概述

我有一个基于qwinsta命令的PowerShell脚本,用于检测Windows Server的登录用户。该脚本在Nagios/NRPE环境及Windows服务器本地执行均正常,但部署到Check_MK后无法正常工作。将脚本复制到%ProgramData%\agent\local目录后,Check_MK服务器能扫描到该脚本,但服务状态显示为UNKN(check failed - please submit a crash report!)。

脚本内容

登录用户数据提取逻辑

(qwinsta.exe) | findstr /v Disc | findstr /v Conn | findstr /v Listen | foreach { (($_.trim() -replace "\s+",","))} | ConvertFrom-Csv | findstr.exe USERNAME > C:\temp\users.txt

Nagios输出预处理部分

(Get-Content C:\temp\users.txt) -replace 'USERNAME', '' -replace ':','' | Set-Content C:\temp\users.txt 
$lines = Get-Content C:\Temp\users.txt 
$var=($lines|group|?{$_.count -ge 1}|Select -ExpandProperty Name) -join ","

状态判断与输出模块(怀疑问题根源)

if ($LoggedOnUsers -lt 1){
    $NagiosStatus = "0"
    Write-Host "No users are logged on"
    }
else 
    {
     if (($Today -like "Saturday" -OR $Today -like "Sunday") -AND ($LoggedOnUsers -eq 1)) 
     {
                $NagiosStatus = "2"
                if ($LoggedOnUsers -eq 1) {
                    Write-Host "$LoggedOnUsers user logged on: $var"
                }
                else {
                    Write-Host "$LoggedOnUsers users logged on: $var"
                }
            }
    else 
    {
                if (($now -lt $max) -AND ($now -gt $min)) {
                $NagiosStatus = "1"
                if ($LoggedOnUsers -eq 1) {
                    Write-Host "$LoggedOnUsers user logged on: $var "
                }
                else {
                    Write-Host "$LoggedOnUsers users logged on: $var"
                }
            }
            else {
                $NagiosStatus = "2" 
                if ($LoggedOnUsers -eq 1) {
                    Write-Host "$LoggedOnUsers user logged on: $var"
                    }
                else {
                    Write-Host "$LoggedOnUsers users logged on: $var"
                }
            }
    }
    }
exit $NagiosStatus

求助需求

我不清楚如何编写适配Check_MK的输出格式,恳请提供解决思路。

内容的提问来源于stack exchange,提问作者Daniel D.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 18:12:36