Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 写一行没有日期的分隔行_C#_.net_Nlog - Fatal编程技术网

C# 写一行没有日期的分隔行

C# 写一行没有日期的分隔行,c#,.net,nlog,C#,.net,Nlog,我编写了一个中间件,用ASP.NET记录REST服务的传入/传出流量和异常。我使用的记录器是NLog,我想在调用之间打印一条分隔线,以便更好地显示它们。为此,该线应始终可见 最好是没有任何日期的单行,如: ============================================== 2019-07-11 16:02:29.7280 |信息|请求XXX 2019-07-11 16:02:34.7781错误捕获异常:Baaaad 2019-07-11 16:02:34.7781 |信

我编写了一个中间件,用ASP.NET记录REST服务的传入/传出流量和异常。我使用的记录器是NLog,我想在调用之间打印一条分隔线,以便更好地显示它们。为此,该线应始终可见

最好是没有任何日期的单行,如:

==============================================

2019-07-11 16:02:29.7280 |信息|请求XXX

2019-07-11 16:02:34.7781错误捕获异常:Baaaad

2019-07-11 16:02:34.7781 |信息|回复:空

到目前为止,我发现最好的解决方案是使用最高的日志级别编写,但我不希望该行显示为
致命的
。有没有其他方法可以做到这一点

当前记录器配置:

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
      autoReload="true"
      throwExceptions="false"
      internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log">
  <targets>
    <target name="logconsole" xsi:type="Console" />
  </targets>

  <rules>
  </rules>
</nlog>

为什么不这样做:

logger.Info("Call Begin Header{0}==============================================", System.Environment.NewLine);
应输出以下内容:

2019-07-11 16:02:29.7280 |信息|呼叫开始标题 ==============================================

如果希望使用单个头对属于单个请求的所有日志消息进行分组。然后我认为您应该创建一个日志查看器(可能是基于web的),它可以根据requestid/correlationid对日志消息进行分组。

为什么不这样做呢:

logger.Info("Call Begin Header{0}==============================================", System.Environment.NewLine);
应输出以下内容:

2019-07-11 16:02:29.7280 |信息|呼叫开始标题 ==============================================


如果希望使用单个头对属于单个请求的所有日志消息进行分组。然后,我认为您应该创建一个日志查看器(可能是基于web的),它可以根据requestid/correlationid对日志消息进行分组。

请发布NLOG记录器的config.XML。通常,您会在此处配置格式如果您没有在?@MongZhu中指定日期,则日期从何而来?当没有其他指定日期时,它是默认格式。好的,然后尝试使用我在注释中发布的链接,并指定一个在末尾添加两个换行符的链接:)即
${newline}
请发布NLOG记录器的config.XML。通常,您会在此处配置格式如果您没有在?@MongZhu中指定日期,则日期从何而来?当没有其他指定日期时,它是默认格式。好的,然后尝试使用我在注释中发布的链接,并指定一个在末尾添加两个换行符的链接:)即
${newline}
此解决方案的问题是,如果用户只希望出现错误,则不会显示该行。我希望它总是出现,但不想标记为错误或错误fatal@Narase您只需检查logger.IsEnabled(loglevel),并仅在需要loglevel时执行标题打印。确保打印标题时使用与实际日志消息相同的日志级别。此解决方案的问题是,如果用户只希望出现错误,则不会显示该行。我希望它总是出现,但不想标记为错误或错误fatal@Narase您只需检查logger.IsEnabled(loglevel),并仅在需要loglevel时执行标题打印。确保使用与实际日志消息相同的日志级别打印标题。