Chainsaw target

发送日志信息到远程的,基于log4j的Chainsaw应用

 

配置语法

<targets>
  <target xsi:type="Chainsaw"
          name="String"
          newLine="Boolean"
          layout="Layout"
          onOverflow="Enum"
          maxMessageSize="Integer"
          encoding="Encoding"
          connectionCacheSize="Integer"
          address="Layout"
          keepConnection="Boolean"
          includeSourceInfo="Boolean"
          includeCallSite="Boolean"
          appInfo="String"
          ndcItemSeparator="String"
          includeNdc="Boolean"
          includeNLogData="Boolean"
          includeMdc="Boolean">
    <parameter layout="Layout" name="String"/><!-- repeated -->
  </target>
</targets>

 

参数

必选参数

name - target的名称

可选参数

newLine - 是否在发送的信息后面添加一个新行。默认:False

layout - 使用Log4JXmlEventLayout 实体格式化日志信息。默认布局: ${longdate}|${level:uppercase=true}|${logger}|${message}

onOverflow - 当发送的日志大于maxMessageSize时的行为


可配置为以下选项:

  • Discard - 抛弃日志
  • Error - 抛出错误
  • Split - 将日志分割为小块

maxMessageSize - 最大日志大小,单位bytes。默认大小:65000。默认编码: utf-8

链接配置

connectionCacheSize - 链接缓存大小 (可以保持链接的数量). 默认: 5 这个参数在以下情况不被支持:

  • NLog v1.0 for .NET Compact Framework 1.0
  • NLog v1.0 for .NET Compact Framework 2.0
  • NLog v1.0 for .NET Framework 1.0
  • NLog v1.0 for .NET Framework 1.1
  • NLog v1.0 for .NET Framework 2.0

address - 网络地址。支持的地址格式如下:

  • tcp://host:port - TCP (auto select IPv4/IPv6) (Windows Phone 7.0中不支持)
  • tcp4://host:port - force TCP/IPv4 (Windows Phone 7.0中不支持)
  • tcp6://host:port - force TCP/IPv6 (Windows Phone 7.0中不支持)
  • udp://host:port - UDP (自动选择IPv4或者IPv6, Windows Phone 7.0和Silverlight 中不支持)
  • udp4://host:port - force UDP/IPv4 (Windows Phone 7.0和Silverlight 中不支持)
  • udp6://host:port - force UDP/IPv6 (Windows Phone 7.0和Silverlight 中不支持)
  • http://host:port/pageName - HTTP using POST verb
  • https://host:port/pageName - HTTPS using POST verb For SOAP-based webservice support over HTTP use WebService target.

keepConnection - 是否保持链接。默认:true

Payload Options

includeSourceInfo - 是否包含来源信息(文件名称和行数) 。
该参数在以下的情况不支持:

  • NLog v1.0 for .NET Compact Framework 1.0
  • NLog v1.0 for .NET Compact Framework 2.0
  • NLog v2.0 for .NET Compact Framework 2.0
  • NLog v2.0 for .NET Compact Framework 3.5
  • NLog v2.0 for Silverlight 2.0
  • NLog v2.0 for Silverlight 3.0
  • NLog v2.0 for Silverlight 4.0
  • NLog v2.0 for Silverlight for Windows Phone 7
  • NLog v2.0 for Silverlight for Windows Phone 7.1

includeCallSite - 是否包含请求站点信息 (类名和方法名)
该参数在以下的情况不支持:

  • NLog v1.0 for .NET Compact Framework 1.0
  • NLog v1.0 for .NET Compact Framework 2.0
  • NLog v2.0 for .NET Compact Framework 2.0
  • NLog v2.0 for .NET Compact Framework 3.5

appInfo - AppInfo 字段。默认情况下,保存当前应用域的别名

_ndcItemSeparator _- NDC item separator. This parameter is not supported in:

  • NLog v1.0 for .NET Compact Framework 1.0
  • NLog v1.0 for .NET Compact Framework 2.0
  • NLog v1.0 for .NET Framework 1.0
  • NLog v1.0 for .NET Framework 1.1
  • NLog v1.0 for .NET Framework 2.0

includeNdc - 是否包含NestedDiagnosticsContext stack

includeNLogData - Indicates whether to include NLog-specific extensions to log4j schema

parameters - 参数列表。 每一个参数都包含了一个NLog布局和参数名的对应关系
每一项都具有以下的两个属性

  • layout - 用于得到参数的值
  • name - 可见的参数名称

includeMdc - 是否包含MappedDiagnosticsContext字典信息

posted @ 2014-11-01 22:38  争世不悔  阅读(181)  评论(0)    收藏  举报