nginx отправлять журнал на удаленный сервер syslog

Я хочу отправить журнал доступа nginx на удаленный сервер syslog-ng . Я установил syslog-ng с каждой стороны (сервер-клиент).

 Client: 10.10.10.2 Server: 10.10.10.1 

Некоторые файлы журналов (сообщения, syslog, mail.log) успешно отправляются на сервер с клиента, но не журнал nginx . Конфигурация сервера:

  • Помогите! Не удалось запустить сервис uWSGI Emperor
  • Центральный логический узел Rsyslog
  • Где исполняемый файл nginx на Debian?
  • Как определить, какая версия OpenSSL установлена?
  • Поиск IP-адресов, посещающих / page1, но не / page2 из файла журнала доступа nginx
  • Nginx оставляет старую розетку
  •  source s_net { tcp(ip(0.0.0.0) port(1999) tls( key_file("/etc/syslog-ng/key.d/privkey.pem") cert_file("/etc/syslog-ng/cert.d/cacert.pem") peer_verify(optional-untrusted)) ); }; destination d_net_nginx_access { file("/mnt/syslog_storage/HOSTS/$HOST /nginx.access.log"); }; filter f_nginx_access { program("nginx") }; log { source(s_net); filter(f_nginx_access); destination(d_net_nginx_access); }; и source s_net { tcp(ip(0.0.0.0) port(1999) tls( key_file("/etc/syslog-ng/key.d/privkey.pem") cert_file("/etc/syslog-ng/cert.d/cacert.pem") peer_verify(optional-untrusted)) ); }; destination d_net_nginx_access { file("/mnt/syslog_storage/HOSTS/$HOST /nginx.access.log"); }; filter f_nginx_access { program("nginx") }; log { source(s_net); filter(f_nginx_access); destination(d_net_nginx_access); }; 

    Конфигурация клиента:

     source s_src { system(); internal(); }; destination tls_log { tcp("10.10.10.1" port(1999) tls( ca_dir("/etc/syslog-ng/ca.d")) );}; destination d_nginx_access { file("/var/log/nginx/nginx.access.log"); }; filter f_nginx { program("nginx"); }; log { source(s_src); filter(f_nginx); destination(d_nginx_access); }; # All messages send to a remote site # log { source(s_src); destination(tls_log); }; 

    Что мне здесь не хватает?

  • Внутренняя ошибка сервера nginx
  • Настройка ulimit `max open files` для демонтированного мастер-процесса nginx
  • Большие загрузки прерваны при перезагрузке nginx
  • RTMP Streaming to Twitch
  • Как работает работа над доменным именем?
  • Arch Nginx Uwsgi загружено не приложение
  • One Solution collect form web for “nginx отправлять журнал на удаленный сервер syslog”

    Эта функциональность когда-то была зарезервирована для коммерческого варианта nginx, но с тех пор была включена в версию ОС. Для этого вы можете использовать модуль nginx ngx_http_log_module .

    Вот ссылка на документацию модуля, объясняющую настройку и настройку:
    http://nginx.org/en/docs/http/ngx_http_log_module.html

    Применение

     Syntax: access_log path [format [buffer=size [flush=time]] [if=condition]]; access_log path format gzip[=level] [buffer=size] [flush=time] [if=condition]; access_log syslog:server=address[,parameter=value] [format [if=condition]]; access_log off; Default: access_log logs/access.log combined; Context: http, server, location, if in location, limit_except 

    Третья форма – та, которую вы хотите использовать:

     access_log syslog:server=address[,parameter=value] [format [if=condition]]; 

    Включите IP-адрес удаленного сервера, на котором запущен Syslog.

    Linux и Unix - лучшая ОС в мире.