logging — отправлять логи из приложения php в graylog, используя монолог

Я установил сервер Graylog и его зависимости. Пытался отправлять журналы из моего приложения php на сервер Graylog, используя Monolog.
Но я не знаю, как использовать обработчик Gelf. Я видел GelfHandlerTest.php, который присутствует внутри проекта Monolog, но я не могу установить своего издателя и создать обработчик. Может кто-нибудь объяснить мне пример кода как это использовать.

Попытка отправить журналы с моего локального хоста apache на сервер, который настроен в той же частной сети, где установлен серый журнал.

Файл testLogging, который выполняется в PHP,

use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Monolog\Handler\GelfHandler;
use Gelf\Message;
use Monolog\Formatter\GelfMessageFormatter;$handler = new GelfHandler($publisher);

Как настроить издателя в монологе?

Любая помощь приветствуется. Спасибо

2

Решение

Пожалуйста, проверьте следующие ссылки:

https://laracasts.com/discuss/channels/general-discussion/l5-logging-to-graylog2

Graylog2 с Symfony 2 (Монолог)

В основном вам нужно что-то вроде:
$handler = new GelfHandler(new Gelf\Publisher(
new Gelf\Transport\TcpTransport(HOST,PORT)
));

Транспорт должен быть вводом, который вы добавили в платформу grayog.
new TcpTransport(127.0.0.1,12201)

Доступные транспорты:
https://github.com/bzikarsky/gelf-php/tree/master/src/Gelf/Transport

Надеюсь, поможет.

1

Другие решения

Других решений пока нет …