diff options
Diffstat (limited to 'gcc-4.8.1/libgo/go/log/syslog/syslog.go')
-rw-r--r-- | gcc-4.8.1/libgo/go/log/syslog/syslog.go | 233 |
1 files changed, 0 insertions, 233 deletions
diff --git a/gcc-4.8.1/libgo/go/log/syslog/syslog.go b/gcc-4.8.1/libgo/go/log/syslog/syslog.go deleted file mode 100644 index 98b9c5f6e..000000000 --- a/gcc-4.8.1/libgo/go/log/syslog/syslog.go +++ /dev/null @@ -1,233 +0,0 @@ -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// +build !windows,!plan9 - -// Package syslog provides a simple interface to the system log -// service. It can send messages to the syslog daemon using UNIX -// domain sockets, UDP, or TCP connections. -package syslog - -import ( - "errors" - "fmt" - "log" - "net" - "os" - "time" -) - -// 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. -type Priority int - -const severityMask = 0x07 -const facilityMask = 0xf8 - -const ( - // Severity. - - // From /usr/include/sys/syslog.h. - // These are the same on Linux, BSD, and OS X. - LOG_EMERG Priority = iota - LOG_ALERT - LOG_CRIT - LOG_ERR - LOG_WARNING - LOG_NOTICE - LOG_INFO - LOG_DEBUG -) - -const ( - // Facility. - - // From /usr/include/sys/syslog.h. - // These are the same up to LOG_FTP on Linux, BSD, and OS X. - LOG_KERN Priority = iota << 3 - LOG_USER - LOG_MAIL - LOG_DAEMON - LOG_AUTH - LOG_SYSLOG - LOG_LPR - LOG_NEWS - LOG_UUCP - LOG_CRON - LOG_AUTHPRIV - LOG_FTP - _ // unused - _ // unused - _ // unused - _ // unused - LOG_LOCAL0 - LOG_LOCAL1 - LOG_LOCAL2 - LOG_LOCAL3 - LOG_LOCAL4 - LOG_LOCAL5 - LOG_LOCAL6 - LOG_LOCAL7 -) - -// A Writer is a connection to a syslog server. -type Writer struct { - priority Priority - tag string - hostname string - conn serverConn -} - -type serverConn interface { - writeString(p Priority, hostname, tag, s string) (int, error) - close() error -} - -type netConn struct { - conn net.Conn -} - -// New establishes a new connection to the system log daemon. Each -// write to the returned writer sends a log message with the given -// priority and prefix. -func New(priority Priority, tag string) (w *Writer, err error) { - return Dial("", "", priority, tag) -} - -// Dial establishes a connection to a log daemon by connecting to -// address raddr on the network net. Each write to the returned -// writer sends a log message with the given facility, severity and -// tag. -func Dial(network, raddr string, priority Priority, tag string) (w *Writer, err error) { - if priority < 0 || priority > LOG_LOCAL7|LOG_DEBUG { - return nil, errors.New("log/syslog: invalid priority") - } - - if tag == "" { - tag = os.Args[0] - } - - hostname, _ := os.Hostname() - - var conn serverConn - if network == "" { - conn, err = unixSyslog() - if hostname == "" { - hostname = "localhost" - } - } else { - var c net.Conn - c, err = net.Dial(network, raddr) - conn = netConn{c} - if hostname == "" { - hostname = c.LocalAddr().String() - } - } - if err != nil { - return nil, err - } - - return &Writer{priority: priority, tag: tag, hostname: hostname, conn: conn}, nil -} - -// Write sends a log message to the syslog daemon. -func (w *Writer) Write(b []byte) (int, error) { - return w.writeString(w.priority, string(b)) -} - -func (w *Writer) Close() error { return w.conn.close() } - -// Emerg logs a message with severity LOG_EMERG, ignoring the severity -// passed to New. -func (w *Writer) Emerg(m string) (err error) { - _, err = w.writeString(LOG_EMERG, m) - return err -} - -// Alert logs a message with severity LOG_ALERT, ignoring the severity -// passed to New. -func (w *Writer) Alert(m string) (err error) { - _, err = w.writeString(LOG_ALERT, m) - return err -} - -// Crit logs a message with severity LOG_CRIT, ignoring the severity -// passed to New. -func (w *Writer) Crit(m string) (err error) { - _, err = w.writeString(LOG_CRIT, m) - return err -} - -// Err logs a message with severity LOG_ERR, ignoring the severity -// passed to New. -func (w *Writer) Err(m string) (err error) { - _, err = w.writeString(LOG_ERR, m) - return err -} - -// Wanring logs a message with severity LOG_WARNING, ignoring the -// severity passed to New. -func (w *Writer) Warning(m string) (err error) { - _, err = w.writeString(LOG_WARNING, m) - return err -} - -// Notice logs a message with severity LOG_NOTICE, ignoring the -// severity passed to New. -func (w *Writer) Notice(m string) (err error) { - _, err = w.writeString(LOG_NOTICE, m) - return err -} - -// Info logs a message with severity LOG_INFO, ignoring the severity -// passed to New. -func (w *Writer) Info(m string) (err error) { - _, err = w.writeString(LOG_INFO, m) - return err -} - -// Debug logs a message with severity LOG_DEBUG, ignoring the severity -// passed to New. -func (w *Writer) Debug(m string) (err error) { - _, err = w.writeString(LOG_DEBUG, m) - return err -} - -func (w *Writer) writeString(p Priority, s string) (int, error) { - return w.conn.writeString((w.priority&facilityMask)|(p&severityMask), - w.hostname, w.tag, s) -} - -// writeString: generates and writes a syslog formatted string. The -// format is as follows: <PRI>TIMESTAMP HOSTNAME TAG[PID]: MSG -func (n netConn) writeString(p Priority, hostname, tag, msg string) (int, error) { - nl := "" - if len(msg) == 0 || msg[len(msg)-1] != '\n' { - nl = "\n" - } - timestamp := time.Now().Format(time.RFC3339) - if _, err := fmt.Fprintf(n.conn, "<%d>%s %s %s[%d]: %s%s", p, timestamp, hostname, - tag, os.Getpid(), msg, nl); err != nil { - return 0, err - } - return len(msg), nil -} - -func (n netConn) close() error { - return n.conn.Close() -} - -// NewLogger creates a log.Logger whose output is written to -// the system log service with the specified priority. The logFlag -// argument is the flag set passed through to log.New to create -// the Logger. -func NewLogger(p Priority, logFlag int) (*log.Logger, error) { - s, err := New(p, "") - if err != nil { - return nil, err - } - return log.New(s, "", logFlag), nil -} |