如何轻松查看每次 Windows Server 重新启动或关闭的历史记录以及原因,包括用户启动、系统启动和系统崩溃?
Windows 事件日志是一个显而易见的答案,但我应该查看的完整事件列表是什么?
我发现这些帖子部分回答了我的问题:
但那些并没有涵盖所有场景 AFAIK 并且信息很难理解,因为它分布在多个答案中。
我有多个版本的 Windows Server,因此一个至少适用于 2008、2008 R2、2012 和 2012 R2 版本的解决方案将是理想的。
windows-server-2008 windows-event-log windows-server-2008-r2 windows-server-2012 windows-server-2012-r2
我刚刚为现有的 ASP.NET MVC3 站点部署了一个更新(它已经配置)并且我收到 IIS 蓝屏死机说明
HTTP 错误 500.0 - 内部服务器错误
由于发生内部服务器错误,无法显示页面。
然而; 应用程序事件日志中没有显示任何内容,我希望在其中看到条目的(更)详细描述。
我该如何诊断这个问题?
我们运行一些将错误消息记录到系统日志的金融系统。我需要找出我们是否可以从 PCI DSS 的角度清除这些错误消息。
我对以下问题的答案特别感兴趣:
是否可以在 Windows Server 2000/2003/2008 机器上查看哪个用户重新启动了服务器?
我在系统事件日志中发现了关机事件,但它没有显示哪个用户启动了重启。
我需要第三方工具吗?
我被要求查明上周用户何时登录系统。现在 Windows 中的审计日志应该包含我需要的所有信息。我想如果我使用特定的 AD 用户和登录类型 2(交互式登录)搜索事件 ID 4624(登录成功),它应该为我提供所需的信息,但在我的一生中,我无法弄清楚如何实际过滤事件日志以获取此信息。是否可以在事件查看器内部使用,或者您是否需要使用外部工具将其解析到此级别?
我发现http://nerdsknowbest.blogspot.com.au/2013/03/filter-security-event-logs-by-user-in.html这似乎是我需要的一部分。我稍微修改了一下,只给了我最后 7 天的价值。下面是我试过的 XML。
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">*[System[(EventID=4624) and TimeCreated[timediff(@SystemTime) <= 604800000]]]</Select>
<Select Path="Security">*[EventData[Data[@Name='Logon Type']='2']]</Select>
<Select Path="Security">*[EventData[Data[@Name='subjectUsername']='Domain\Username']]</Select>
</Query>
</QueryList>
Run Code Online (Sandbox Code Playgroud)
它只给了我最后 7 天,但其余时间都不起作用。
任何人都可以帮助我吗?
编辑
感谢Lucky Luke的建议,我一直在进步。下面是我当前的查询,尽管我将解释它没有返回任何结果。
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">
*[System[(EventID='4624')]
and
System[TimeCreated[timediff(@SystemTime) <= 604800000]]
and
EventData[Data[@Name='TargetUserName']='john.doe']
and
EventData[Data[@Name='LogonType']='2']
]
</Select>
</Query>
</QueryList>
Run Code Online (Sandbox Code Playgroud)
正如我所提到的,它没有返回任何结果,所以我一直在弄乱它。在我添加 LogonType 行之前,我可以让它正确产生结果。之后,它不返回任何结果。知道为什么会这样吗?
编辑 2
我将 LogonType 行更新为以下内容:
EventData[Data[@Name='LogonType'] and (Data='2' or Data='7')]
Run Code Online (Sandbox Code Playgroud)
这应该捕获工作站登录以及工作站解锁,但我仍然一无所获。然后我修改它以搜索其他登录类型,如 3 或 8,它找到了很多。这让我相信查询工作正常,但由于某种原因,事件日志中没有登录类型等于 2 的条目,这对我来说毫无意义。是否可以关闭此功能?
如何远程监视 Windows 事件日志,以便在发生某些事件时自动通知我?
有很多主动监控解决方案,但它们需要人工关注或持续轮询。我需要一个被动的解决方案,它只会在发生特定事件时生成通知。
这里显示的是什么时区?
格林威治标准时间?系统时区?当我导出日志并在第二台机器上查看时会发生什么。它使用第一个系统的时区还是第二个?
谢谢!
Server 2008 的新功能之一是能够将任务附加到事件日志中的特定事件。可用的操作之一是通过 SMTP 服务器发送电子邮件。
这很好用,但是如果在消息正文中可以放置事件内容,那将是理想的。我曾尝试使用 $eventdescription 和 %eventdescription%,但这些只是在黑暗中拍摄。任何数量的谷歌搜索都不会产生任何结果。
有谁知道这是否可能?
更新:下面 Sparks 的建议是我认为朝着正确方向迈出的一步,但是该方法似乎不适用于所有值。例如,我可以如图所示提取 RecordID、Severity 和 Channel,但是我不能使用相同的方法来检索 EventID,或者最重要的是描述。
这是来自一个事件的原始 XML:
[Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"]
[System]
[Provider Name="DFSR" /]
[EventID Qualifiers="16384"]4412[/EventID]
[Level]4[/Level]
[Task]0[/Task]
[Keywords]0x80000000000000[/Keywords]
[TimeCreated SystemTime="2009-05-14T18:18:09.000Z" /]
[EventRecordID]45692[/EventRecordID]
[Channel]DFS Replication[/Channel]
[Computer]servername.domain.com[/Computer]
[Security /]
[/System]
[EventData]
[Data]9046C3F4-843E-4A53-B941-4B20764072E5[/Data]
[Data]D:\departments\Geomatics\Plan Quality\Data Processing\CG3533017 2009-05-13 KT FIXED[/Data]
[Data]D:\departments[/Data]
[Data]{26D5F604-E603-4F87-8EC3-DE9A945DA8FD}-v927199[/Data]
[Data]Departments[/Data]
[Data]domain.ca\files\departments[/Data]
[Data]B8242CE2-F5EB-47DA-BA5B-1DD2F7EE3AB9[/Data]
[Data]DFAA7A54-66CB-4C31-81A0-0F861382C32C[/Data]
[Data]CG3533017 2009-05-13-{26D5F604-E603-4F87-8EC3-DE9A945DA8FD}-v927199[/Data]
[/EventData]
[/Event]
Run Code Online (Sandbox Code Playgroud)
我曾尝试对 EventData 使用 ValueQuery,但它不返回任何数据。
在 3 个独立的系统中,域控制器服务器上多次记录以下事件(每天 30 到 4,000 次,具体取决于系统):
An account failed to log on.
Subject:
Security ID: SYSTEM
Account Name: %domainControllerHostname%$
Account Domain: %NetBIOSDomainName%
Logon ID: 0x3E7
Logon Type: 3
Account For Which Logon Failed:
Security ID: NULL SID
Account Name:
Account Domain:
Failure Information:
Failure Reason: Unknown user name or bad password.
Status: 0xc000006d
Sub Status: 0xc0000064
Process Information:
Caller Process ID: 0x1ec
Caller Process Name: C:\Windows\System32\lsass.exe
Network Information:
Workstation Name: %domainControllerHostname%
Source Network Address: -
Source Port: -
Detailed …Run Code Online (Sandbox Code Playgroud) security audit windows-event-log windows-sbs-2011 windows-server-2012-r2
windows ×4
eventviewer ×2
security ×2
500-error ×1
asp.net-mvc ×1
audit ×1
boot ×1
iis-7.5 ×1
log-files ×1
logging ×1
monitoring ×1
snmp ×1
timezone ×1