Я работаю над syslogd
, который печатает сообщение (содержит вкладки, пробелы и т. Д.). Когда я наблюдаю файл syslogd
в каталоге / var / log /, у сообщения нет вкладок. Вместо негопечатает ^I
.
Запуск этой программы на ubuntu 10.04 LTS
и sysklogd
.
import org.apache.log4j.Appender;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.log4j.PatternLayout;
import org.apache.log4j.net.SyslogAppender;
public class syslogPrinter {
private static int sysLogFacility = SyslogAppender.LOG_LOCAL3;
private static String syslogHost = "localhost";
private static String layoutPattern = "%m%n";
public static Logger log2static = Logger.getLogger(syslogPrinter.class);
public static void main(String[] args) {
log2static.setLevel(Level.INFO);
PatternLayout layout = new PatternLayout(layoutPattern);
Appender syslogdAppender = new SyslogAppender(layout, syslogHost, sysLogFacility);
log2static.addAppender(syslogdAppender);
String str2 = "this is a tab: ";
str2 = str2.concat("\t");
str2 = str2.concat(" after space");
log2static.error(str2);
}
}
Вывод идет как
это вкладка: ^ I после пробела
ожидаемый выход составляет
это вкладка:после пробела (пробел должен появиться)
Подскажите, пожалуйста, как печатать вкладку в сообщении вместо ^I
.......
Нужно ли мне настраиватьsyslogd.conf
файл?