当前位置: 首页 > 知识库问答 >
问题:

logback--多个syslog追加器

端木澄邈
2023-03-14
<appender name="SYSLOG" class="ch.qos.logback.classic.net.SyslogAppender">
        <syslogHost>localhost</syslogHost>
        <facility>LOCAL6</facility>
        <suffixPattern>app: %logger{20} %msg</suffixPattern>
    </appender>

但是我有一个新的需求,我想把一些日志发送到“local5”工具,而不是local6。我已经阅读了登录配置文档http://logback.qos.ch/manual/configuration.html,但我仍然不知道如何做到这一点。

共有1个答案

籍永安
2023-03-14

您可以使用两个syslog追加器,一个用于LOCAL6,另一个用于LOCAL5

<appender name="SYSLOG" class="ch.qos.logback.classic.net.SyslogAppender">
        <syslogHost>localhost</syslogHost>
        <facility>LOCAL6</facility>
        <suffixPattern>app: %logger{20} %msg</suffixPattern>
    </appender>


<appender name="SYSLOG1" class="ch.qos.logback.classic.net.SyslogAppender">
        <syslogHost>localhost</syslogHost>
        <facility>LOCAL5</facility>
        <suffixPattern>app: %logger{20} %msg</suffixPattern>
    </appender>

优点是您可以使用过滤器、模式、记录器名称等自定义日志(一些日志),并且SyslogAppender扩展了UnsyncronizedAppender。

不能使用单个appender的原因是syslogappender.java类中的方法invilitystringtoint(String invilitystr)接受String,然后比较使用equals的标准工具。例

     if ("KERN".equalsIgnoreCase(facilityStr)) {
          return SyslogConstants.LOG_KERN;
     }
 类似资料:
  • 我目前正在尝试使用logback logstash编码器将日志写入两个不同的logstash实例。这两个实例都将写入同一Elasticsearch实例。 我正在努力找到一种方法来平衡两个logstash实例之间的负载。 在阅读logback留档和log4j2留档后,很明显logback logstash使用的TcpAppender不支持负载平衡网址(即url1,url2)。在log4j2中,我可以

  • 我的logback.xml如下: 当我查看wireshark的输出时,我只看到记录的JSON(没有给出PRI头字段) 如果切换到标准logback Syslog appender(非JSON输出)

  • 我有一个log4j配置XML,它有多个lple文件追加器。当我为我的应用程序构建一个新模块时,我希望再包含一个文件附加器,并仅使用该文件。有什么办法吗? 我尝试使用Logger.getLogger(MyAppender);但是在日志文件中,我应该得到类名...有了这个,我只得到日志文件中的appender名称。 我的appender配置是这样的。 " " 日志如下所示。。2013年10月31日10

  • 我想做的很直截了当: 我只希望在控制台追加器上显示重要的消息,而我希望将详细的消息路由到文件追加器。 我还尝试向添加一个ThresholdFilter,但这也不能过滤它。

  • 问题内容: 如果用户填充了一些无效数据,则会触发ajax请求并显示错误消息。现在,当用户再次更正数据/或再次输入无效数据时,将触发2个请求,下一次是3个,并且继续增加。 这可能是由于parsley js库。 如果我删除香菜代码,它可以正常工作。任何想法? 这是ajax代码 这是HTML代码段 任何线索将不胜感激。 问题答案: 我刚刚找到解决方案。这是因为我也在form标签和js中使用了data-p

  • 我是这里的一个新的python用户。我一直在写一个代码,使用selenium和beautiful soup去一个网站,得到html表,并把它变成一个数据帧。 state_list=[] df=pd.dataframe() 对于状态中的状态:driver=webdriver.chrome(executable_path='c://webdrivers/chromedriver.exe')driver