We’ve got 3 graylog servers, and I added an Nginx load balancer in front of them today. We’re load balancing GELF, syslog TCP and UDP, and the web interface itself.
One thing I noticed on the UDP syslog input is that the source is coming into Graylog as the load balancer’s DNS name - not the source of the actual server sending the logs. This isn’t the end of the world, but it also isn’t ideal.
Anything slick we can do with either Nginx or Graylog to keep the source as the original source?
Here’s the relevant piece of my nginx.conf file:
upstream gludpsyslog {
server popglweb1.pop.portptld.com:1514;
server popglweb2.pop.portptld.com:1514;
server popglweb3.pop.portptld.com:1514;
}
server {
listen 1514 udp;
listen 514 udp;
proxy_pass gludpsyslog;
proxy_responses 0;
}
And here is the full message:
<167>2017-04-26T01:45:16.820Z vmhost10.pop.portptld.com Hostd: verbose hostd[E081B70] [Originator@6876 sub=SoapAdapter.HTTPService] HTTP Response: Auto-completing at 129/129 bytes
Screenshot of the message in graylog:.