问题
Does anyone have a tutorial link or an example on how to use the Logging block to send out error email?
Jack
回答1:
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="admin@company.com" fromAddress="fromemail@company.com"
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.
来源:https://stackoverflow.com/questions/627557/enterprise-library-logging-block-and-email