Glassfish в системный журнал - PullRequest
3 голосов
/ 12 февраля 2012

Я пытаюсь заставить Glassfish 3.1.1 войти в системный журнал, но я не могу. Я не знаю, если это ошибка, но я даже не знаю, как ее отладить.

Первый и очевидный шаг: я установил флажок на консоли администратора для записи в системный журнал, и после того, как я также установил флажок записи в системную консоль. Никто из них не работал.

Я проверил logging.properties, и эта строка есть

com.sun.enterprise.server.logging.SyslogHandler.useSystemLogging=true

Погуглил Я нашел несколько человек, жалующихся с заброшенными вопросами. Что-нибудь еще, что я должен сделать, или я должен написать собственный обработчик журнала, чтобы сделать это?

Ответы [ 2 ]

2 голосов
/ 26 марта 2012

Соединение с системным журналом изменилось с GF 2.1, где использовалась собственная библиотека "libutilforsyslog.so".Мне кажется, теперь вы должны предоставить UDP-порт 514 на локальном хосте для получения сообщений системного журнала от GlassFish 3.

com.sun.enterprise.server.logging.SyslogHandler создает такой экземпляр системного журнала:*

... который является экземпляром com.sun.enterprise.server.logging.Syslog.Этот класс создает дейтаграмму UDP, которая отправляется на порт 514 (жестко закодированный).

У меня есть пакет syslog-ng на моем хосте Debian, на котором я запускаю GlassFish.syslog-ng настроен на локальный журнал по умолчанию src:

source s_src { unix-dgram("/dev/log"); internal();
             file("/proc/kmsg" program_override("kernel"));
};

В этом примере вы можете просто добавить прослушиватель для UDP-порта 514:

udp(ip(127.0.0.1) port(514)); 
0 голосов
/ 20 апреля 2017

Чтобы включить системный журнал в Glassfish 4.1, мы должны изменить свойства logging.properties в домене (например, glassfish / domains / domain1 / config)

Строка

handlerServices=com.sun.enterprise.server.logging.GFFileHandler

должнаизменить в

handlerServices=com.sun.enterprise.server.logging.GFFileHandler,com.sun.enterprise.server.logging.SyslogHandler

см .: [GLASSFISH-20718] Параметр «Запись в системный журнал» не отправляет журнал на локальный порт udp 514

Для этогоизменить чистым способом вместо непосредственного изменения свойств logging.properties, вы можете использовать asadmin следующим образом:

bash-4.3# asadmin set-log-attributes handlers=java.util.logging.ConsoleHandler,com.sun.enterprise.server.logging.SyslogHandler

handlers logging attribute value set to java.util.logging.ConsoleHandler,com.sun.enterprise.server.logging.SyslogHandler.
The logging attributes are saved successfully for server.

Наконец, чтобы включить системный журнал, вы можете вызвать asadmin следующим образом:

bash-4.3# asadmin set-log-attributes com.sun.enterprise.server.logging.SyslogHandler.useSystemLogging=true

com.sun.enterprise.server.logging.SyslogHandler.useSystemLogging logging attribute value set to true.
The logging attributes are saved successfully for server.
...