Windows Vista Forums

how to get powershell to write to event log or write a log file?

  1. #1


    scale Guest

    how to get powershell to write to event log or write a log file?

    I have a script using

    remove-item
    and
    copy-item

    I would like to have a TXT file outputed to say that the scrip ran succesfull.

    Something like
    remove-item C:\temp -vervbose
    Echo the file removal was successful | C:\logs\removal.log
    copy-item C:\temp -destination D:\temp
    echo the file copy was successful | C:\logs\copy.log




    All i am trying to do is verify that the date stamps on the copied files
    have changed or that the files are deleted and then are written to the new
    location and that succeeded.

    If i could do this with an eventlog event that would be great as well and
    probably preferred.

    any help?


      My System SpecsSystem Spec

  2. #2


    Chris Dent Guest

    Re: how to get powershell to write to event log or write a log file?


    Would you want to capture any error returned from the two commands? e.g.

    $LogFile = "RemoveItem.log"

    Remove-Item $SomeItem -ErrorVariable "RemoveErr"
    If ($RemoveErr) {
    "Error removing $SomeItem" >> $LogFile
    $RemoveErr >> $LogFile
    } else {
    "Removed $SomeItem" >> $LogFile
    }

    You can write error messages to the Event Log with:

    [Diagnostics.EventLog]::WriteEntry( ... )

    The simplest form of that is:

    [Diagnostics.EventLog]::WriteEntry("Source", "Message")

    Which adds an entry to the Application Event Log.

    See:

    http://msdn.microsoft.com/en-us/libr...riteentry.aspx

    Chris

      My System SpecsSystem Spec

  3. #3


    Alex Guest

    Re: how to get powershell to write to event log or write a log file?

    Another full-blown solution could be using log4net. Once it is
    installed, add this to your profile:

    [Reflection.Assembly]::LoadFrom("log4net.dll") # you may want to
    adjust the path here
    [log4net.Config.XmlConfigurator]::Configure( `
    (new-object System.IO.FileInfo -ArgumentList `
    (ls "log4net_config.xml").FullName `
    ) )
    $global:Log = [log4net.LogManager]::GetLogger("Powershell.PSTest")

    After that, you can use something like $Log.Warn("hello, log")

    Read log4net documentation on how to configure the format and location
    of log files

    Cheers

    On Sep 25, 9:50*am, Chris Dent <ch...@newsgroup> wrote:

    > Would you want to capture any error returned from the two commands? e.g.
    >
    > $LogFile = "RemoveItem.log"
    >
    > Remove-Item $SomeItem -ErrorVariable "RemoveErr"
    > If ($RemoveErr) {
    > * *"Error removing $SomeItem" >> $LogFile
    > * *$RemoveErr >> $LogFile} else {
    >
    > * *"Removed $SomeItem" >> $LogFile
    >
    > }
    >
    > You can write error messages to the Event Log with:
    >
    > [Diagnostics.EventLog]::WriteEntry( ... )
    >
    > The simplest form of that is:
    >
    > [Diagnostics.EventLog]::WriteEntry("Source", "Message")
    >
    > Which adds an entry to the Application Event Log.
    >
    > See:
    >
    > http://msdn.microsoft.com/en-us/libr...ics.eventlog.w...
    >
    > Chris

      My System SpecsSystem Spec

how to get powershell to write to event log or write a log file?

Similar Threads
Thread Forum
allow write to child folder, deny write to parent
is it possible to deny access to create files on the root of a drive and still allow modify access to subfolders?
Server General
Display differences Write-Host and Write-Warning
I'm new to PS, and a little embarrassed I can't find the answer to this on my own... I like to format text literals across multiple lines to...
PowerShell
Write-Error doesn't write anyting
I created a new object using new-object PSObject and added a ScriptMethod. In some cases the method should write error, but it doesn't. Consider...
PowerShell
When using System.IO.FileStream, I write 8 bytes, then seek to the start of the file, does the 8 bytes get flushed on seek and the buffer become a readbuffer at that point instead of being a write buffer?
When using System.IO.FileStream, I write 8 bytes, then seek to the start of the file, does the 8 bytes get flushed on seek and the buffer become a...
.NET General
PowerShell Event Logs (read and write) (Local and Remote)
Just figured I would throw this out there for folks: # query an event (Filter Equal) # you could change the filter to an eventID or Source too...
PowerShell
The disk is write-protected. Remove the write-protection or...
I am migrating from an older PC to a new Vista 64-bit Ultimate PC. In the past, the way I circumvented all the sharing issues of copying files from...
Vista General
newline in Write-Debug or Write-Verbose
I am trying to use a newline with either Write-Debug or Write-Verbose: $VerbosePreference="Continue" $message= "line1" + "`n" + "line2" ...
PowerShell