gpt4 book ai didi

tridion - 为什么此代码不在我的 Tridion Content Delivery 服务器上写入日志输出?

转载 作者:行者123 更新时间:2023-12-01 02:28:56 25 4
gpt4 key购买 nike

我有一个来自自定义(非 Tridion)数据库的用户控件呈现内容。此自定义数据库的连接字符串不正确,因此当代码尝试连接时出现 SqlException。

我的代码目前是:

var logger = 
Tridion.ContentDelivery.Web.Utilities
.LoggerFactory.GetLogger(this.GetType().ToString());
try
{
/* make a database connection - failing with SqlException */
}
catch (SqlException e)
{
logger.Error("Could not connect to database: " + e.ToString());
}

我的\bin\config\logback.xml 文件包含:
<property name="log.pattern" value="%date %-5level %logger{0} - %message%n"/>
<property name="log.history" value="7"/>
<property name="log.folder" value="c:/tridion/log"/>
<property name="log.level" value="DEBUG"/>
...
<appender name="rollingCoreLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.folder}/cd_core.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>${log.history}</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<prudent>true</prudent>
</appender>
...
<root level="warn">
<appender-ref ref="rollingCoreLog"/>
</root>

C:\Tridion\log 中有一堆日志,但最近更改的一个是 20 分钟前修改的,并且不包含我的日志消息文本(我只是在记事本中搜索了“数据库”)。

为什么我的日志输出没有发送到日志?

最佳答案

您有 2 个选项:

  • 您将根日志记录定义为“DEBUG”,但这有一个缺点,即允许从 Tridion 使用的所有第三方库进行大量日志记录。这是片段:<root level="DEBUG"> <appender-ref ref="rollingCoreLog"/> </root>
  • 您定义了一个特殊的附加程序以包括 Tridion .NET 日志记录:<logger name="Tridion.ContentDelivery" level="${log.level}"><appender-ref ref="rollingCoreLog"/></logger>

  • 请注意,在第二种情况下,您需要将记录器绑定(bind)到 Tridion.ContentDelivery 下的命名空间。这是一个例子:

    var logger = Tridion.ContentDelivery.Web.Utilities.LoggerFactory.GetLogger("Tridion.ContentDelivery.MyNamespace.MyClass");



    希望这可以帮助。

    P.S.:回答您的问题:因为您没有附加程序,并且根日志记录设置为 WARN。默认情况下,logback.xml 仅包含“com.tridion”的附加程序,但我猜 this.getType().ToString() 的输出不以该字符串开头。

    关于tridion - 为什么此代码不在我的 Tridion Content Delivery 服务器上写入日志输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14375249/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com