views:

468

answers:

1

Does anyone have a tutorial link or an example on how to use the Logging block to send out error email?

Jack

+2  A: 

You need to set up an EmailTraceListener in the Logging Application Block.

You can use the Enterprise Library UI but the web.config section ends up looking something like this:

<loggingConfiguration name="Logging Application Block" tracingEnabled="true" defaultCategory="Default" logWarningsWhenNoCategoriesMatch="true">
    <listeners>
      <add toAddress="[email protected]" fromAddress="[email protected]"
        subjectLineStarter="" subjectLineEnder="" smtpServer="127.0.0.1"
        smtpPort="25" formatter="" listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.EmailTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        traceOutputOptions="None" filter="All" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.EmailTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        name="Email" />
    </listeners>
    <categorySources>
      <add switchValue="All" name="Default">
        <listeners>
          <add name="Email" />
        </listeners>
      </add>    
    </categorySources>
</loggingConfiguration>

This will work providing your SMTP server is set up correctly. You can use Telnet to check that by sending command line email.

tentonipete
Use the EntLibConfig.exe tool for a friendly UI that will simplify the configuration of the EmailTraceListener (and the rest of Enterprise Library).
spoon16