我的 Zabbix 监视器一直在抱怨,尽管已设置为自动启动,但状态存储库服务 (StateRepository) 并未在我的一台 Windows 2022 Server Core 机器上运行。查看系统日志,该服务似乎每天运行几分钟(每台机器上的时间不同),然后在一系列不太有用的日志消息之后再次停止,但没有错误。
我确信这不是一个真正的问题,Zabbix 项目只是错误地假设该服务需要持续运行,但我想弄清楚到底是怎么回事。据我从互联网上了解到,这项服务主要用于存储 Edge(浏览器)的状态。为什么它甚至会安装在 Server Core 上?它有什么用处吗?我可以安全地禁用它吗?最相关的Microsoft 文档我发现只是说“无指导”(虽然这是针对具有桌面体验的 Server 2016),所以我最倾向于禁用检查并保留该服务,但如果有人对这项服务有更多的了解,任何指导都将不胜感激。
答案1
(这不完全是对问题的回答,而是对你所描述的情况的回答。可能对面临同样问题的其他人有用):
ZABBIX 使用标准 Windows 操作系统模板开箱即用的功能是,为所有设置为自动启动的 Windows 服务创建项目和触发器(通过自动发现),然后在它们未运行时触发问题。
因此,这是微软利用一些特殊的 Windows 服务进行语义上可疑操作的一个例子。(顺便说一句,Windows 2022 Server(非核心)上也发生了同样的情况。
对于这些间歇运行的服务(例如 StateRepositoryService、edgeupdate、cbdhsvc_.+),您通常会将它们包含在服务的正则表达式中,以从自动发现中排除。
在模板中,在名为 的发现规则中Windows services discovery
,有一些过滤器。其中之一是:
{#SERVICE.NAME}
不匹配 {$SERVICE.NAME.NOT_MATCHES}
前者是发现的服务宏,后者是在模板本身上定义的“常规”主机宏。
因此,要从监控中排除这些不持续运行的自动启动服务,请将它们包含在{$SERVICE.NAME.NOT_MATCHES}
宏中(在模板->宏列表中找到)。