Skip to content

Instantly share code, notes, and snippets.

@dirkakrid
Forked from arnobroekhof/syslog_server.py
Created October 31, 2016 07:26
Show Gist options
  • Save dirkakrid/479c71dc69cd53f09f74639d21d699c1 to your computer and use it in GitHub Desktop.
Save dirkakrid/479c71dc69cd53f09f74639d21d699c1 to your computer and use it in GitHub Desktop.
syslog_server.py
#!/usr/bin/env python
##
## This is a syslog server that is able to receive UDP based syslog
LOG = 'thelogfile.log'
HOST, PORT = "0.0.0.0", 514
import logging
import SocketServer
logging.basicConfig(level=logging.INFO, format='%(message)s', datefmt='', filename=LOG, filemode='a')
class SyslogUDPHandler(SocketServer.BaseRequestHandler):
def handle(self):
data = bytes.decode(self.request[0].strip())
socket = self.request[1]
print( "%s : " % self.client_address[0], str(data))
logging.info(str(data))
if __name__ == "__main__":
try:
server = SocketServer.UDPServer((HOST,PORT), SyslogUDPHandler)
server.serve_forever(poll_interval=0.5)
except (IOError, SystemExit):
raise
except KeyboardInterrupt:
print ("Crtl+C Pressed. Shutting down.")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment