Get-DscWinEvent

Gets events from the DSC Windows event log.

Syntax

Get-DscWinEvent [-ComputerName <String[]>] [-ID <Int32>] [-Level <Int32>] [-StartTime <DateTime>] [-EndTime <DateTime>] [<CommonParameters>]
Get-DscWinEvent [-ComputerName <String[]>] [-ID <Int32>] [-Level <Int32>] [-StartTime <DateTime>] [-EndTime <DateTime>] -Wait [-WaitTimeoutSeconds <UInt32>] [<CommonParameters>]

Description

Thie Get-DscWinEvent function gets log entries from the Microsoft-Windows-DSC/Operational event log, where the Local Configuration Manager writes events. By default, entries on the local computer are returned. You can return entries from another computer via the ComputerName parameter.

You can filter the results further with the ID, Level, StartTime and EndTime parameters. ID will get events with the specific ID. Level will get events at the specified level. StartTime will return entries after the given time. EndTime will return entries before the given time.

If no items are found, nothing is returned.

It can take several seconds for event log entries to get written to the log, so you might not get results back. If you want to wait for entries to come back, use the -Wait switch. You can control how long to wait (in seconds) via the WaitTimeoutSeconds parameter. The default is 10 seconds.

When getting errors on a remote computer, that computer must have Remote Event Log Management firewall rules enabled. To enable them, run

Get-FirewallRule -Name '*Remove Event Log Management*' |
    ForEach-Object { netsh advfirewall firewall set rule name= $_.Name new enable=yes }

Get-DscWinEvent is new in Carbon 2.0.

Related Commands

Parameters

Name Type Description Required? Pipeline Input Default Value
ComputerName String[]

The computer whose DSC errors to return.

false false
ID Int32

The event ID. Only events with this ID will be returned.

false false 0
Level Int32

The level. Only events at this level will be returned.

false false 0
StartTime DateTime

Get errors that occurred after this date/time.

false false
EndTime DateTime

Get errors that occurred before this date/time.

false false
Wait SwitchParameter

Wait for entries to appear, as it can sometimes take several seconds for entries to get written to the event log.

true false False
WaitTimeoutSeconds UInt32

The time to wait for entries to appear before giving up. Default is 10 seconds. There is no way to wait an infinite amount of time.

false false 10

Return Values

System.Diagnostics.Eventing.Reader.EventLogRecord.

EXAMPLE 1

Get-DscWinEvent

Demonstrates how to get all the DSC errors from the local computer.

EXAMPLE 2

Get-DscWinEvent -ComputerName 10.1.2.3

Demonstrates how to get all the DSC errors from a specific computer.

EXAMPLE 3

Get-DscWinEvent -StartTime '8/1/2014 0:00'

Demonstrates how to get errors that occurred after a given time.

EXAMPLE 4

Get-DscWinEvent -EndTime '8/30/2014 11:59:59'

Demonstrates how to get errors that occurred before a given time.

EXAMPLE 5

Get-DscWinEvent -StartTime '8/1/2014 2:58 PM' -Wait -WaitTimeoutSeconds 5

Demonstrates how to wait for entries that match the specified criteria to appear in the event log. It can take several seconds between the time a log entry is written to when you can read it.

EXAMPLE 6

Get-DscWinEvent -Level ([Diagnostics.Eventing.Reader.StandardEventLevel]::Error)

Demonstrates how to get events at a specific level, in this case, only error level entries will be returned.

EXAMPLE 7

Get-DscWinEvent -ID 4103

Demonstrates how to get events with a specific ID, in this case 4103.