You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NLog配置后CloudWatch日志多行字符串与对象识别异常求助

解决方案

步骤1:统一换行符格式

修改异常转换逻辑,将字符串中的\r\n替换为\n,避免跨平台换行符导致CloudWatch解析异常:

// Custom serializer for exceptions
LogManager.Setup().SetupSerialization(s =>
   s.RegisterObjectTransformation<Exception>(ex => new {
       Data = ex.ToBetterString().Replace("\r\n", "\n")
   })
);

// 保留encode=false配置,确保异常属性被识别为JSON对象
jsonLayout.Attributes.Add(new JsonAttribute("exception", "${exception:format=@}", encode: false));

步骤2:验证JSON输出格式

确保最终生成的日志JSON中,Data字段的换行符被正确转义为"\n"(符合JSON规范)。示例输出:

{
  "exception": {
    "Data": "错误信息第一行\n错误堆栈第二行\n详细描述第三行"
  }
}

步骤3:CloudWatch视图适配

如果日志仍未正常换行,在CloudWatch日志控制台的日志详情页面,开启换行显示选项(通常在视图设置面板中),确保控制台解析并渲染换行符。


内容的提问来源于stack exchange,提问作者rbasniak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 19:54:39