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

Mac上的Log4j2 Syslog Appender格式化

封烈
2023-03-14

我对Mac(OSX 10.9.2)上log4j2的SyslogAppender有问题。log4j2发送到syslog的默认格式导致消息被错误解析。我的配置:

<Syslog name="Syslog" host="localhost" port="514"
 protocol="UDP" format="RFC5424" appName="MyApp" id="log4j2-test"
 mdcIncludes="Priority,Logger,Exception,Message" newLine="true"> 
</Syslog>

当我跑步时:

syslog -F raw

我得到以下信息:

[ASLMessageID 1291756] [Time 1411090836] [TimeNanoSec 0] [Level 6] [PID 4294967295] [UID 4294967294] [GID 4294967294] [ReadGID 80] [Host 1] [Sender 2014-09-19T01] [Facility local0] [Message 40:36.481Z Mario.local MyApp - - - Hello, world!]

没有原始格式的相同消息显示如下:

Sep 19 09:40:36 1 2014-09-19T01[4294967295] <Info>: 40:36.481Z Mario.local MyApp - - - Hello, world!

根据日期字符串在两个位置之间的分割方式,log4j2 SyslogAppender似乎使用默认格式:

%d <host> <app> - - - %m

syslog错误地拆分了所有内容。发件人不应是日期字符串的第一部分,消息不应是消息的组合其余部分。

我找不到更改SyslogAppender格式字符串的方法,因为在其中添加PatternLayout元素被忽略了。我还研究了这里提出的LoggerFields解决方案:log4j2-Syslog appender和patternalyout,这只会使消息元素进一步复杂化,而不会解决错误发送者的问题。

有没有人知道如何调整log4j2的系统应用程序,以便它向OSX 10.9.2的系统日志发送格式正确的消息?

共有1个答案

颛孙哲
2023-03-14

我建议在log4j2 Jira问题跟踪器上提出这一功能请求:http://logging.apache.org/log4j/2.x/issue-tracking.html

 类似资料:
  • 我试图安装Hadoop在我的MacBook Pro上试用它。我遵循本文中的步骤,http://dennyglee.com/2012/05/08/installing-hadoop-on-osx-lion-10-7/.但是,当我试图执行namenode格式时,我失败了: hadoop名称节点-格式为/usr/local/ceral/hadoop/1.1.2/libexec/bin//conf/had

  • 问题内容: 我正在使用firefox gecko驱动程序制作一个机器人,我的机器人不断收到错误消息,并且我发现消息的来源是: 线。 我已将错误消息中提到的每个文件添加到路径,包括壁虎驱动程序,firefox和其他较小的文档。我完全不知所措 这是错误消息: 问题答案: 此错误消息… …表示所调用的 GeckoDriver 二进制文件格式不正确。 你的主要问题是 不兼容 的的 GeckoDriver

  • 问题内容: 我正在尝试部署ssas表格模型(我不知道自己在做什么) 我在带有VS2013的SQL Server 2008 R2上进行了多维分析。我想将Tabular与Power BI结合使用。 所以我建立了一个SQL Azure DB,我有Azure SQL数据库和Visual Studio 2013 Pro 我可以在VS2013中获得与Azure数据库的连接,并针对它编写T-SQL,但是当我尝试

  • 问题内容: 我正在使用firefox gecko驱动程序制作一个机器人,我的机器人不断收到错误消息,并且我发现消息的来源是: 线。 我已将错误消息中提到的每个文件添加到路径,包括壁虎驱动程序,firefox和其他较小的文档。我完全不知所措 这是错误消息: 问题答案: 此错误消息… …表示所调用的 GeckoDriver 二进制文件格式不正确。 你的主要问题是 不兼容 的的 GeckoDriver

  • echo$JAVA_HOME给出: /library/java/javavirtualmachines/jdk1.8.0_73.jdk/contents/home /usr/libexec/java_home 如果是的话,我如何用我目前拥有的东西做到这一点? “/usr/libexec/java_home-v”的输出 匹配的Java虚拟机(4):1.8.0_73,X86_64:“Java SE 8

  • 问题内容: 我有一个jspinner格式。问题在于微调器“ hh”仅上升到值“ 12”。我怎样才能做到24小时? 问题答案: 您已经为JSpinner定义了两件事(基本上是本教程的内容完全回答了您的问题) SimpleDateFormat SpinnerDateModel 例如