Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t查询Windows事件日志';转发事件';有日期_Windows_Powershell_Events_Logging_Event Log - Fatal编程技术网

Can';t查询Windows事件日志';转发事件';有日期

Can';t查询Windows事件日志';转发事件';有日期,windows,powershell,events,logging,event-log,Windows,Powershell,Events,Logging,Event Log,我们正在尝试创建PowerShell函数,以查询Windows事件日志中两个日期之间发生的事件。 查询自定义日志或标准日志时,以下代码可以正常工作: $FilterXML = @" <QueryList> <Query Id="0" Path='$LogName'> <Select Path='$LogName'> *[System[TimeCreated[@SystemTime&gt;='2017-04

我们正在尝试创建PowerShell函数,以查询Windows事件日志中两个日期之间发生的事件。 查询自定义日志或标准日志时,以下代码可以正常工作:

$FilterXML = @"
<QueryList>
    <Query Id="0" Path='$LogName'>
        <Select Path='$LogName'>
            *[System[TimeCreated[@SystemTime&gt;='2017-04-17T09:48:24.000Z' and 
            @SystemTime&lt;='2017-04-19T09:50:24.999Z']]]
        </Select>
    </Query>
</QueryList>
"@
Get-WinEvent -FilterXml $FilterXML
在创建事件的源计算机上运行相同的查询时,它可以很好地处理日期。在收集器服务器上,仅选择过去7天或24小时内的事件时,也可以正常工作。因此,我想它与事件的转发和其中的
DateTime
对象有关。我们检查了两台服务器上的区域设置,它们的日期格式是相同的荷兰语(比利时)

无法使用日期的事件示例:

Message              : johofman - Script ended
Id                   : 199
Version              : 
Qualifiers           : 0
Level                : 4
Task                 : 1
Opcode               : 
Keywords             : 36028797018963968
RecordId             : 768
ProviderName         : My script name
ProviderId           : 
LogName              : My log name
ProcessId            : 
ThreadId             : 
MachineName          : SERVER.domain.net
UserId               : 
TimeCreated          : 19/04/2017 16:02:56
ActivityId           : 
RelatedActivityId    : 
ContainerLog         : c:\windows\system32\winevt\logs\forwardedevents.evtx
MatchedQueryIds      : {}
Bookmark             : System.Diagnostics.Eventing.Reader.EventBookmark
LevelDisplayName     : Information
OpcodeDisplayName    : Info
TaskDisplayName      : 
KeywordsDisplayNames : {Classic}
Properties           : {System.Diagnostics.Eventing.Reader.EventProperty}
是否存在这样一个原因,即它适用于所有事件日志,但不适用于转发的事件

已按所述配置事件日志记录


谢谢您的帮助。

试试
-filterHashTable
?例如:

$filter = @{ 
                    Path   = "$env:SystemRoot\System32\Winevt\Logs\ForwardedEvents.evtx"
                    StartTime = get-date '2017-04-17T09:48:24.000Z'
                    EndTime   = get-date '2017-04-19T09:50:24.999Z'                  
                    }
然后


Get-WinEvent-LogName ForwardedEvents?提供了正确的结果,在
-FilterXML
中使用时也是如此,但在添加日期时却没有。恐怕是同一条消息,
没有找到符合指定选择条件的事件。真奇怪。因为不带日期的查询给我提供了事件,我可以在事件中看到正确的日期…你是否尝试过使用日期,即从前一天到第二天?是的,我尝试过的第一件事是。当更改ForwardedEvents的路径时,在远程源服务器上使用相同的日期,但在收集器服务器上不使用相同的日期,它可以正常工作。当24小时前尝试时,这也有效,只是在日期之间无效。更多信息
$filter = @{ 
                    Path   = "$env:SystemRoot\System32\Winevt\Logs\ForwardedEvents.evtx"
                    StartTime = get-date '2017-04-17T09:48:24.000Z'
                    EndTime   = get-date '2017-04-19T09:50:24.999Z'                  
                    }
$events = Get-WinEvent -FilterHashtable $filter