首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Log4Cxx sql server附加器

Log4Cxx sql server附加器
EN

Stack Overflow用户
提问于 2011-05-24 01:44:50
回答 1查看 1K关注 0票数 2

使用Log4Cxx时,是否可以将日志写入MS SQL server?我已经用谷歌搜索了一段时间,找到了一些使用ODBCAppender的例子。例如:

代码语言:javascript
复制
<appender name="MyOdbcMysqlAppender" class="org.apache.log4j.odbc.ODBCAppender">
    <param name="URL" value="Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=errorlog;User=logger;Password=abc123;Option=3;"/>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="INSERT INTO errorlog (errormessage) VALUES ('%d - %c - %p - %m')"/>
    </layout>
</appender> 

也许我只需要“Driver”字段的正确值?我使用的是MS SQL Server 2008。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2013-03-28 01:06:23

我已经完成了以下工作:定义一个名为LPErrorLog的ODBC源,使用某个密码(Abc123)定义一个登录“记录器”,配置SQLServer以同时支持WIndows和SQLServer身份验证。测试您的ODBC源,确保您可以登录并访问目标DB (下面示例中的LPErrorLog)配置您的ConversionPattern以匹配您的DB中的字段。为一个普通的文件附加器临时配置相同的ConversionPattern,然后在登录后从文件中提取产生的INSERT INTO字符串,将其放入SQL Server Management Studio脚本中,然后执行它以验证它是否将您想要的内容插入到目标数据库中,并且它是否成功。

代码语言:javascript
复制
<appender name="MySqlAppender" class="org.apache.log4j.odbc.ODBCAppender">
 <param name="URL" value="DSN=LPLogStore;Server=localhost\SQLEXPRESS;Database=LPErrorLog;Uid=logger;Pwd=abc123"/>
 <layout class="org.apache.log4j.PatternLayout">
  <param name="ConversionPattern" value="INSERT INTO [LPErrorLog].[dbo].[errorlog] ([Logger],[LogTime],[Level],[FileName],[Location],[LineNo],[Message]) VALUES ('%c','%d{dd MMM yyyy HH:mm:ss,SSS}','%p','%F','%l','%L','%m')" />
</layout>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6100860

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档