从源启动的 Windows 事件转发中删除 PC?

从源启动的 Windows 事件转发中删除 PC?

我已经在 Google 上搜索过这个问题,但没有找到任何答案。

(是的,我也在 TechNet 上发布了有关此内容的帖子)

我有几个工作站已停用并显示为“非活动”。我想将它们从订阅中移除,以尽量减少出现错误。

答案这里用于收集器启动的设置,(这需要您运行 C++ 代码??)。

有没有人找到简单的方法来删除源头发起件?

答案1

查看“注册表大小”说明这一页

对于连接到 WEF 订阅的每个唯一设备,都会创建一个注册表项(对应于 WEF 客户端的 FQDN)来存储书签和源心跳信息。如果不对其进行修剪以删除不活动的客户端,这组注册表项可能会随着时间的推移增长到无法管理的大小。

这就像删除 Windows 事件收集器服务器上的注册表项一样简单。您可以编写一个脚本来将注册表中的客户端列表与活动目录中的活动客户端列表进行比较。然后删除 AD 中不存在或一段时间未进行身份验证的客户端的密钥。

这些密钥位于您的每个 Windows 事件收集器服务器上:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\EventCollector\Subscriptions\<SubscriptionName>

答案2

有一个 Windows 命令用于管理订阅,wecutil.exe。

https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/wecutil

wecutil ss "Event subscription name" /res /esa:eventsourcecomputername.domain.com  

答案3

尝试这个:

Get-ChildItem HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\EventCollector\Subscriptions\your-subscription-name-here\EventSources|%{
    try{
        $path=$_.Name.Replace("HKEY_LOCAL_MACHINE","HKLM:")
        $bookmark=Get-ItemPropertyValue -Path $path -Name bookmark
        if ($bookmark.length -eq 0){
            Remove-Item -Path $path
            }
        }
    catch{
        Remove-Item -Path $path
        }

相关内容