看起来这个工具不支持,但我们计划在未来的项目中使用它(日志记录、异常处理等)。它仍然得到支持吗?我没有看到像以前那样围绕这个工具的活动。
我们已经有了NewRelic,所以也很有帮助知道是否NewRelic可以完成日志记录/异常处理。例如,我是否可以创建自定义日志或异常并在New Relic仪表板上查看它们?
看起来这个工具不支持,但我们计划在未来的项目中使用它(日志记录、异常处理等)。它仍然得到支持吗?我没有看到像以前那样围绕这个工具的活动。
我们已经有了NewRelic,所以也很有帮助知道是否NewRelic可以完成日志记录/异常处理。例如,我是否可以创建自定义日志或异常并在New Relic仪表板上查看它们?
可以。 您可以通过Nuget将Enterprise Library 6添加到您的项目中。以下是示例应用程序。
using System;
using System.Diagnostics;
using Microsoft.Practices.EnterpriseLibrary.Logging;
using Microsoft.Practices.EnterpriseLibrary.Logging.Formatters;
using Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners;
namespace Practice.Logging
{
internal class Program
{
public static void Main(string[] args)
{
LoggingConfiguration loggingConfiguration = BuildProgrammaticConfig();
var defaultWriter = new LogWriter(loggingConfiguration);
// Check if logging is enabled before creating log entries.
if (defaultWriter.IsLoggingEnabled())
{
defaultWriter.Write("Log entry created using the simplest overload.");
defaultWriter.Write("Log entry with a single category.", "General");
defaultWriter.Write("Log entry with a category, priority, and event ID.", "General", 6, 9001);
defaultWriter.Write("Log entry with a category, priority, event ID, " + "and severity.", "General", 5, 9002, TraceEventType.Warning);
defaultWriter.Write("Log entry with a category, priority, event ID, " + "severity, and title.", "General", 8, 9003, TraceEventType.Warning, "Logging Block Examples");
}
else
{
Console.WriteLine("Logging is disabled in the configuration.");
}
}
private static LoggingConfiguration BuildProgrammaticConfig()
{
// Formatter
var formatter = new TextFormatter();
// Trace Listeners
var eventLog = new EventLog("Application", ".", "StackOverflow #24309323");
var eventLogTraceListener = new FormattedEventLogTraceListener(eventLog, formatter);
// Build Configuration
var config = new LoggingConfiguration();
config.AddLogSource("General", SourceLevels.All, true)
.AddTraceListener(eventLogTraceListener);
config.IsTracingEnabled = true;
return config;
}
}
}
您可以在日志应用程序块(Logging Application Block)中找到更多详细信息。
若要将该扩展安装到Visual Studio 2013中,请按照以下解决方法步骤进行操作。
VSIX文件是使用Open Packaging Convention的ZIP文件。 您可以将.VSIX扩展名重命名为.ZIP,并使用任何ZIP浏览器 (包括Windows文件浏览器)浏览其内容。
<SupportedProducts>
<VisualStudio Version="11.0">
<Edition>Ultimate</Edition>
<Edition>Premium</Edition>
<Edition>Pro</Edition>
</VisualStudio>
</SupportedProducts>
<SupportedProducts>
<VisualStudio Version="11.0">
<Edition>Ultimate</Edition>
<Edition>Premium</Edition>
<Edition>Pro</Edition>
</VisualStudio>
<VisualStudio Version="12.0"> <!-- VS2013 -->
<Edition>Ultimate</Edition>
<Edition>Premium</Edition>
<Edition>Pro</Edition>
</VisualStudio>
<VisualStudio Version="14.0"> <!-- VS2015 -->
<Edition>Ultimate</Edition>
<Edition>Premium</Edition>
<Edition>Pro</Edition>
</VisualStudio>
</SupportedProducts>
ZIP
文件VSIX
技术上与@cilerler所建议的相同,但这是一个可立即下载和使用的解决方案。
Visual Studio 2013: Microsoft.Practices.EnterpriseLibrary.ConfigConsole.V6.VS2013.vsix (源码) Visual Studio 2015: Microsoft.Practices.EnterpriseLibrary.ConfigConsole.V6.VS2015.vsix (源码)
•Microsoft.Practices.EnterpriseLibrary.Common.dll
•Microsoft.Practices.EnterpriseLibrary.Configuration.DesignTime.dll
•Microsoft.Practices.EnterpriseLibrary.Configuration.Design.HostAdapterV5.dll
•Microsoft.Practices.EnterpriseLibrary.Configuration.EnvironmentalOverrides.dll
在我的看法中,Microsoft.Practices.Unity.dll 在 entlib 6 中是可选的。
适用于 Visual Studio 2017。
<VisualStudio Version="15.0"> <!-- VS2017 -->
<Edition>Enterprise</Edition>
<Edition>Premium</Edition>
<Edition>Pro</Edition>
</VisualStudio>
是的,它确实可以。此链接将提供所有必要的详细信息https://msdn.microsoft.com/zh-cn/library/dn169621.aspx
此外,您还可以参考以下网站进行详细实现。您可以安装 vsix 版本或二进制文件 (http://www.microsoft.com/en-us/download/details.aspx?id=38789) 来创建配置。vsix 有时无法工作,因此您可以根据下面的帖子中所述修改 extension.vsixmanifest。
http://www.gonetdotnet.info/posts/configure-and-use-enterprise-library-5-logging http://www.gonetdotnet.info/posts/how-to-configure-and-use-enterprise-library-5-0-application-blocks-using-nuget-package-manager
Install-Package EnterpriseLibrary.Logging
。 - Gerwald