Overview

Only one call to Dial is necessary. On write failures, the syslog client will
attempt to reconnect to the server and write again.

Package files

syslog.go

func NewLogger


  1. func NewLogger(p Priority, logFlag ) (log., error)


NewLogger creates a log.Logger whose output is written to the system log service
with the specified priority, a combination of the syslog facility and severity.
The logFlag argument is the flag set passed through to log.New to create the
Logger.


  1. type Priority


The Priority is a combination of the syslog facility and severity. For example,
LOG_ALERT | LOG_FTP sends an alert severity message from the FTP facility. The
default severity is LOG_EMERG; the default facility is LOG_KERN.

  1. const (

    // From /usr/include/sys/syslog.h.
    // These are the same on Linux, BSD, and OS X.
    LOG_EMERG Priority =
    LOG_ALERT
    LOG_CRIT
    LOG_ERR
    LOG_WARNING
    LOG_NOTICE
    LOG_INFO
    LOG_DEBUG
    )



  1. const (

    // From /usr/include/sys/syslog.h.
    // These are the same up to LOG_FTP on Linux, BSD, and OS X.
    LOG_KERN Priority = << 3
    LOG_USER
    LOG_MAIL
    LOG_DAEMON
    LOG_AUTH
    LOG_SYSLOG
    LOG_LPR
    LOG_NEWS
    LOG_UUCP
    LOG_CRON
    LOG_AUTHPRIV
    LOG_FTP

    LOG_LOCAL0
    LOG_LOCAL1
    LOG_LOCAL2
    LOG_LOCAL3
    LOG_LOCAL4
    LOG_LOCAL5
    LOG_LOCAL6
    LOG_LOCAL7
    )



type Writer




    A Writer is a connection to a syslog server.

    func Dial




    Dial establishes a connection to a log daemon by connecting to address raddr on
    the specified network. Each write to the returned writer sends a log message
    with the facility and severity (from priority) and tag. If tag is empty, the
    os.Args[0] is used. If network is empty, Dial will connect to the local syslog
    server. Otherwise, see the documentation for net.Dial for valid values of
    network and raddr.


    Example:

    sysLog, err := syslog.Dial(“tcp”, “localhost:1234”,
    syslog.LOG_WARNING|syslog.LOG_DAEMON, “demotag”)
    if err != nil {
    log.Fatal(err)
    }
    fmt.Fprintf(sysLog, “This is a daemon warning with demotag.”)
    sysLog.Emerg(“And this is a daemon emergency with demotag.”)

    func


    1. func New(priority , tag string) (, error)


    New establishes a new connection to the system log daemon. Each write to the
    returned writer sends a log message with the given priority (a combination of
    the syslog facility and severity) and prefix tag. If tag is empty, the
    os.Args[0] is used.


    1. func (w ) Alert(m string)


    Alert logs a message with severity LOG_ALERT, ignoring the severity passed to
    New.

    func (Writer) Close


    1. func (w Writer) Close()


    Close closes a connection to the syslog daemon.

    func (Writer) Crit


    1. func (w Writer) Crit(m ) error


    Crit logs a message with severity LOG_CRIT, ignoring the severity passed to New.

    func (Writer)


    1. func (w ) Debug(m string)


    Debug logs a message with severity LOG_DEBUG, ignoring the severity passed to
    New.




    Emerg logs a message with severity LOG_EMERG, ignoring the severity passed to
    New.

    func (Writer) Err


    1. func (w Writer) Err(m ) error


    Err logs a message with severity LOG_ERR, ignoring the severity passed to New.

    func (Writer)


    1. func (w ) Info(m string)


    Info logs a message with severity LOG_INFO, ignoring the severity passed to New.

    func (Writer) Notice


    1. func (w Writer) Notice(m ) error


    Notice logs a message with severity LOG_NOTICE, ignoring the severity passed to
    New.


    1. func (w ) Warning(m string)


    Warning logs a message with severity LOG_WARNING, ignoring the severity passed
    to New.

    func (Writer) Write


    1. func (w *Writer) Write(b []) (int, )


    Write sends a log message to the syslog daemon.

    • This package is not implemented on Windows. As the syslog package is frozen,
      Windows users are encouraged to use a package outside of the standard
      library. For background, see .
    • This package is not implemented on Plan 9.