A Bark logging handler logging output to syslog.  By default,
    sends log messages to localhost on port 514; if this logger
    doesn't seem to work, confirm that the address is correct.
    Addresses containing a colon (':') are treated as a hostname and
    port, while others are interpreted as UNIX domain sockets.

    Similar to logging.handlers.SysLogHandler.

def syslog_handler(name, logname, address=('localhost', 514),
                   facility=logging.handlers.SysLogHandler.LOG_USER):
    """
    A Bark logging handler logging output to syslog.  By default,
    sends log messages to localhost on port 514; if this logger
    doesn't seem to work, confirm that the address is correct.
    Addresses containing a colon (':') are treated as a hostname and
    port, while others are interpreted as UNIX domain sockets.

    Similar to logging.handlers.SysLogHandler.
    """

    return wrap_log_handler(logging.handlers.SysLogHandler(
        address=address, facility=facility))