[rosconsole]: Unable to use JSONLayout
rr-tom-noble opened this issue · 1 comments
rr-tom-noble commented
I'm attempting to format all of my ROS logs as JSON. From what I understand, rosconsole uses log4cxx, which appears to come with a JSONLayout
Using the following rosconsole.conf
file works fine:
log4j.appender.console=org.apache.log4j.ConsoleAppender
logrj.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=${message}
log4j.rootLogger=ALL, console
However, replacing the PatternLayout
with a JSONLayout
causes the following error:
log4cxx: Could not instantiate class [org.apache.log4j.JsonLayout].
log4cxx: Class not found: org.apache.log4j.JsonLayout
rr-tom-noble commented
Ah, I think the version of liblog4cxx-dev
doesn't come with JSONLayout
installed:
tom@machine:~$ dpkg -L liblog4cxx-dev | grep layout
/usr/include/log4cxx/helpers/datelayout.h
/usr/include/log4cxx/htmllayout.h
/usr/include/log4cxx/layout.h
/usr/include/log4cxx/patternlayout.h
/usr/include/log4cxx/simplelayout.h
/usr/include/log4cxx/ttcclayout.h
/usr/include/log4cxx/xml/xmllayout.h