SharePoint场中的协调日志记录

时间:2010-04-23 23:49:24

标签: logging configuration sharepoint-2007 log4net

我们正在将Web部件部署到SharePoint 2007,并希望包含日志记录(log4net)。理想的解决方案是使用数据库appender来避免知道哪个实际服务器正在执行Web部件的问题。

这些问题很有帮助:SharePoint and Log4Net

我使用Visual Studio dev服务器在一个独立的Web应用程序中使用log4net,使用web.config进行log4net设置,使用文件appender进行输出。我想转换到SharePoint并仍然使用日志文件输出,因此我可以确保它首先工作,然后更改配置以登录到数据库。

这会不会太麻烦?其他开发人员如何将log4.net添加到他们的SharePoint解决方案中?使用数据库是将日志输出关联到服务器的唯一好方法吗?

更新:我们已经实施了Log4Net,它可以解决问题。 SharePoint的安全模型使配置必要的权限更加困难。在我们的例子中,我们看到在某些情况下消息不会进入日志文件。我们在作为给定帐户运行的Web服务中使用了日志记录代码。当我们让它作为开发者运行时,例如'us \ bob'并且该dev使用调用Web服务的页面,然后消息将其发送到日志文件。另一个未解决的问题是如何考虑写入系统使用的日志目录所需的权限,即IIS日志或SharePoint日志。

1 个答案:

答案 0 :(得分:2)

切换配置以使用数据库appender当然很容易。您需要决定如何连接到数据库:集成身份验证与SQL Server登录,但两者都很容易配置。

我建议将log4net部署为单独的解决方案,因为Sharepoint不跟踪程序集的依赖关系。这同样适用于您的解决方案将要使用的其他“核心”组件。看看这个问题here