目录搜索
archivearchive/tararchive/zipbufiobufio(缓存)builtinbuiltin(内置包)bytesbytes(包字节)compresscompress/bzip2(压缩/bzip2)compress/flate(压缩/flate)compress/gzip(压缩/gzip)compress/lzw(压缩/lzw)compress/zlib(压缩/zlib)containercontainer/heap(容器数据结构heap)container/list(容器数据结构list)container/ring(容器数据结构ring)contextcontext(上下文)cryptocrypto(加密)crypto/aes(加密/aes)crypto/cipher(加密/cipher)crypto/des(加密/des)crypto/dsa(加密/dsa)crypto/ecdsa(加密/ecdsa)crypto/elliptic(加密/elliptic)crypto/hmac(加密/hmac)crypto/md5(加密/md5)crypto/rand(加密/rand)crypto/rc4(加密/rc4)crypto/rsa(加密/rsa)crypto/sha1(加密/sha1)crypto/sha256(加密/sha256)crypto/sha512(加密/sha512)crypto/subtle(加密/subtle)crypto/tls(加密/tls)crypto/x509(加密/x509)crypto/x509/pkix(加密/x509/pkix)databasedatabase/sql(数据库/sql)database/sql/driver(数据库/sql/driver)debugdebug/dwarf(调试/dwarf)debug/elf(调试/elf)debug/gosym(调试/gosym)debug/macho(调试/macho)debug/pe(调试/pe)debug/plan9obj(调试/plan9obj)encodingencoding(编码)encoding/ascii85(编码/ascii85)encoding/asn1(编码/asn1)encoding/base32(编码/base32)encoding/base64(编码/base64)encoding/binary(编码/binary)encoding/csv(编码/csv)encoding/gob(编码/gob)encoding/hex(编码/hex)encoding/json(编码/json)encoding/pem(编码/pem)encoding/xml(编码/xml)errorserrors(错误)expvarexpvarflagflag(命令行参数解析flag包)fmtfmtgogo/ast(抽象语法树)go/buildgo/constant(常量)go/doc(文档)go/format(格式)go/importergo/parsergo/printergo/scanner(扫描仪)go/token(令牌)go/types(类型)hashhash(散列)hash/adler32hash/crc32hash/crc64hash/fnvhtmlhtmlhtml/template(模板)imageimage(图像)image/color(颜色)image/color/palette(调色板)image/draw(绘图)image/gifimage/jpegimage/pngindexindex/suffixarrayioioio/ioutillogloglog/syslog(日志系统)mathmathmath/bigmath/bigmath/bitsmath/bitsmath/cmplxmath/cmplxmath/randmath/randmimemimemime/multipart(多部分)mime/quotedprintablenetnetnet/httpnet/httpnet/http/cginet/http/cookiejarnet/http/fcginet/http/httptestnet/http/httptracenet/http/httputilnet/http/internalnet/http/pprofnet/mailnet/mailnet/rpcnet/rpcnet/rpc/jsonrpcnet/smtpnet/smtpnet/textprotonet/textprotonet/urlnet/urlososos/execos/signalos/userpathpathpath/filepath(文件路径)pluginplugin(插件)reflectreflect(反射)regexpregexp(正则表达式)regexp/syntaxruntimeruntime(运行时)runtime/debug(调试)runtime/internal/sysruntime/pprofruntime/race(竞争)runtime/trace(执行追踪器)sortsort(排序算法)strconvstrconv(转换)stringsstrings(字符串)syncsync(同步)sync/atomic(原子操作)syscallsyscall(系统调用)testingtesting(测试)testing/iotesttesting/quicktexttext/scanner(扫描文本)text/tabwritertext/template(定义模板)text/template/parsetimetime(时间戳)unicodeunicodeunicode/utf16unicode/utf8unsafeunsafe
文字

  • import "log/syslog"

  • 概述

  • 索引

  • 示例

概述

软件包系统日志为系统日志服务提供了一个简单的界面。它可以使用 UNIX 域套接字,UDP 或 TCP 将消息发送到 syslog 守护进程。

只需调用一次 Dial 即可。在写入失败时,系统日志客户端将尝试重新连接到服务器并重新写入。

syslog 软件包被冻结,并且不接受新的函数。一些外部软件包提供更多功能。参见:

https://godoc.org/?q=syslog

索引

  • func NewLogger(p Priority, logFlag int) (*log.Logger, error)

  • type Priority

  • type Writer

  • func Dial(network, raddr string, priority Priority, tag string) (*Writer, error)

  • func New(priority Priority, tag string) (*Writer, error)

  • func (w *Writer) Alert(m string) error

  • func (w *Writer) Close() error

  • func (w *Writer) Crit(m string) error

  • func (w *Writer) Debug(m string) error

  • func (w *Writer) Emerg(m string) error

  • func (w *Writer) Err(m string) error

  • func (w *Writer) Info(m string) error

  • func (w *Writer) Notice(m string) error

  • func (w *Writer) Warning(m string) error

  • func (w *Writer) Write(b []byte) (int, error)

  • Bugs

示例

Dial

包文件

doc.go syslog.go syslog_unix.go

func NewLogger

func NewLogger(p Priority, logFlag int) (*log.Logger, error)

NewLogger 创建一个 log.Logger,它的输出以指定的优先级写入系统日志服务,这是 syslog 设施和严重性的组合。logFlag 参数是通过 log.New 创建记录器的标志集。

type Priority

优先级是系统日志设施和严重性的组合。例如,LOG_ALERT | LOG_FTP 从 FTP 设备发送警报严重性消息。默认严重性是 LOG_EMERG;默认设施是 LOG_KERN。

type Priority int
const (        // 来自 /usr/include/sys/syslog.h。        // 这些在Linux,BSD和OS X上是相同的。
        LOG_EMERG Priority = iota
        LOG_ALERT
        LOG_CRIT
        LOG_ERR
        LOG_WARNING
        LOG_NOTICE
        LOG_INFO
        LOG_DEBUG)
const (        // 来自 /usr/include/sys/syslog.h。        // 这些与Linux,BSD和OS X上的LOG_FTP相同。
        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

        LOG_LOCAL0
        LOG_LOCAL1
        LOG_LOCAL2
        LOG_LOCAL3
        LOG_LOCAL4
        LOG_LOCAL5
        LOG_LOCAL6
        LOG_LOCAL7)

type Writer

Writer 是与系统日志服务器的连接。

type Writer struct {        // 包含已过滤或未导出的字段}

func Dial

func Dial(network, raddr string, priority Priority, tag string) (*Writer, error)

Dial 通过连接到指定网络上的地址 raddr 来建立到日志守护程序的连接。每次写入返回的作者都会发送一条日志消息,其中包含设施和严重性(来自优先级)和标记。如果标签为空,则使用 os.Args0。如果网络为空,拨号将连接到本地系统日志服务器。否则,请参阅 net.Dial 的文档以获取网络和 raddr 的有效值。

示例

package mainimport ("fmt""log""log/syslog")func main() {
	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 New

func New(priority Priority, tag string) (*Writer, error)

New 建立到系统日志守护进程的新连接。每次写入返回的写入程序都会发送一条具有给定优先级(syslog 设施和严重性的组合)和前缀标记的日志消息。如果标签为空,则使用 os.Args0。

func (*Writer) Alert

func (w *Writer) Alert(m string) error

Alert 会记录严重性为 LOG_ALERT 的消息,忽略传递给 New 的严重性。

func (*Writer) Close

func (w *Writer) Close() error

关闭 Close 与 syslog 守护进程的连接。

func (*Writer) Crit

func (w *Writer) Crit(m string) error

Crit 会记录严重性为 LOG_CRIT 的消息,忽略传递给 New 的严重性。

func (*Writer) Debug

func (w *Writer) Debug(m string) error

Debug 会记录严重性为 LOG_DEBUG 的消息,忽略传递给 New 的严重性。

func (*Writer) Emerg

func (w *Writer) Emerg(m string) error

Emerg 记录一条严重性为 LOG_EMERG 的消息,忽略传递给 New 的严重性。

func (*Writer) Err

func (w *Writer) Err(m string) error

Err 记录严重性为 LOG_ERR 的消息,忽略传递给 New 的严重性。

func (*Writer) Info

func (w *Writer) Info(m string) error

Info 会记录一条严重性为 LOG_INFO 的消息,忽略传递给 New 的严重性。

func (*Writer) Notice

func (w *Writer) Notice(m string) error

通知会记录一条严重性为 LOG_NOTICE 的消息,忽略传递给 New 的严重性。

func (*Writer) Warning

func (w *Writer) Warning(m string) error

警告会记录严重性为 LOG_WARNING 的消息,忽略传递给 New 的严重性。

func (*Writer) Write

func (w *Writer) Write(b []byte) (int, error)

Write 向 syslog 守护进程发送日志消息。

Bugs

  • ☞   该软件包未在 Windows 上实现。当系统日志包被冻结时,鼓励 Windows 用户使用标准库外的包。

  • ☞   该计划未在计划9中实施。

  • ☞   该包不在NaCl(Native Client)上实现。

上一篇:下一篇: