Есть ли способ отправлять журналы в определенный каталог с помощью syslog-ng?

Al menos en RedHat 6, tenga en cuenta que si LC _ALL está configurado, la configuración de otras variables de entorno LC _*no tendrá ningún efecto, ya que LC _ALL tiene prioridad sobre todos los demás entornos LC _*. variables.

[root@nbu76 bin]# LC_TIME=en_US.UTF-8
[root@nbu76 bin]# export LC_TIME
[root@nbu76 bin]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_IE"
LC_NUMERIC="en_IE"
LC_TIME="en_IE"
...
LC_ALL=en_IE
[root@nbu76 bin]# unset LC_ALL
[root@nbu76 bin]# locale
LANG=en_US.UTF-8
LC_CTYPE=en_US.UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME=en_US.UTF-8
...
LC_ALL=
[root@nbu76 bin]# export LC_TIME=en_IE
[root@nbu76 bin]# locale
LANG=en_US.UTF-8
LC_CTYPE=en_US.UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME=en_IE
....
LC_ALL=

-121 ---24642 ​​-

Opciones:

  • Enlace programas de aplicación a una interfaz específica, como lo ha hecho con curl --interface.

  • Usar política de enrutamiento .

  • Cree diferentes espacios de nombres de red, coloque una o ambas interfaces (s )en el espacio de nombres (s ), inicie los programas de aplicación que deberían usar esa interfaz en el espacio de nombres apropiado.

Dado que no describió su caso de uso (excepto "programas de prueba" ), no puedo decir cuál es la mejor opción para usted.

Si en realidad se trata solo de programas de prueba, y usted mismo escribió los programas, vincularlos a una interfaz es la forma más sencilla.

0
28.05.2019, 15:31
2 ответа

Для сбора журналов из файлов с помощью syslog -ng необходимо создать источники файлов и добавить их в оператор журнала. Что-то вроде этого:

source s_apache {
    file("/var/log/apache.log");
};
log {
    source(s_apache); destination(remote);
};

Чтобы собирать журналы также и из других файлов, определите дополнительные источники и добавьте их в оператор журнала. Если у вас есть приложение, которое регистрируется в нескольких разных файлах журнала (, например, в файлах журнала с отметками времени ), вы можете использовать источник файла с подстановочными знаками -. Подробности смотрите в документации:https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.21/administration-guide/16#TOPIC-1180423

0
28.04.2021, 23:33

Я думаю, вы можете использовать тот же подход, что и в Системный журнал -ng -Отправить имя файла с клиента на сервер .

Конфигурация на стороне клиента в системном журнале -ng-

file("/var/log/shell.log" log_prefix("shell: "));

Конфигурация на стороне сервера в системном журнале -ng-

filter f_shell { match("shell" value("MSGHDR")); };

destination d_shell { file("/var/log/syslog-ng/shell.log"); };

log { source(demo_tls_src); filter(f_shell); destination(d_shell); flags(final); };
0
28.04.2021, 23:33

Теги

Похожие вопросы