Source file src/pkg/log/syslog/syslog_unix.go
1 // Copyright 2009 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 // +build !windows,!plan9 6 7 package syslog 8 9 import ( 10 "errors" 11 "net" 12 ) 13 14 // unixSyslog opens a connection to the syslog daemon running on the 15 // local machine using a Unix domain socket. 16 17 func unixSyslog() (conn serverConn, err error) { 18 logTypes := []string{"unixgram", "unix"} 19 logPaths := []string{"/dev/log", "/var/run/syslog"} 20 var raddr string 21 for _, network := range logTypes { 22 for _, path := range logPaths { 23 raddr = path 24 conn, err := net.Dial(network, raddr) 25 if err != nil { 26 continue 27 } else { 28 return netConn{conn}, nil 29 } 30 } 31 } 32 return nil, errors.New("Unix syslog delivery error") 33 }