php syslog日志,log/syslog(日志系统)

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 <

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)上实现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值