syslog

package
v1.25.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 5, 2025 License: MIT Imports: 2 Imported by: 0

Documentation

Overview

syslogパッケージは、システムログサービスへのシンプルなインターフェースを提供します。 UNIXドメインソケット、UDP、またはTCPを使用してsyslogデーモンにメッセージを送信することができます。

Dialへの呼び出しは一度だけ必要です。書き込み失敗時、 syslogクライアントはサーバーへの再接続を試み、再度書き込みを行います。

syslogパッケージは凍結されており、新たな機能は受け入れていません。 一部の外部パッケージがより多くの機能を提供しています。参照:

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

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewLogger

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

NewLoggerは、指定された優先度(syslog施設とseverityの組み合わせ)でシステムログサービスに書き込まれる log.Logger を作成します。 logFlag引数は、Loggerを作成するために log.New に渡されるフラグセットです。

Types

type Priority

type Priority int

Priorityは、syslogの施設と重大度の組み合わせです。 例えば、LOG_ALERT | LOG_FTP は、FTP施設からのアラート重大度メッセージを送信します。 デフォルトの重大度は LOG_EMERG で、デフォルトの施設は LOG_KERN です。

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

type Writer struct {
	// contains filtered or unexported fields
}

Writerはsyslogサーバへの接続です。

func Dial

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

Dialは、指定されたネットワーク上のアドレスraddrに接続することで ログデーモンへの接続を確立します。戻り値のライターへの 各書き込みは、施設と重大度(priorityから)およびタグを持つログメッセージを送信します。 タグが空の場合、os.Args[0]が使用されます。 ネットワークが空の場合、Dialはローカルのsyslogサーバーに接続します。 それ以外の場合は、ネットワークとraddrの有効な値については、net.Dialのドキュメンテーションを参照してください。

Example
package main

import (
	"github.com/shogo82148/std/fmt"
	"github.com/shogo82148/std/log"
	"github.com/shogo82148/std/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.Args[0]が使用されます。

func (*Writer) Alert

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

Alertは、severity LOG_ALERT のメッセージをログに記録します。Newに渡されたseverityは無視されます。

func (*Writer) Close

func (w *Writer) Close() error

Closeはsyslogデーモンへの接続を閉じます。

func (*Writer) Crit

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

Critは、severity LOG_CRIT のメッセージをログに記録します。Newに渡されたseverityは無視されます。

func (*Writer) Debug

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

Debugは、severity LOG_DEBUG のメッセージをログに記録します。Newに渡されたseverityは無視されます。

func (*Writer) Emerg

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

Emergは、severity LOG_EMERG のメッセージをログに記録します。Newに渡されたseverityは無視されます。

func (*Writer) Err

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

Errは、severity LOG_ERR のメッセージをログに記録します。Newに渡されたseverityは無視されます。

func (*Writer) Info

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

Infoは、severity LOG_INFO のメッセージをログに記録します。Newに渡されたseverityは無視されます。

func (*Writer) Notice

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

Noticeは、severity LOG_NOTICE のメッセージをログに記録します。Newに渡されたseverityは無視されます。

func (*Writer) Warning

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

Warningは、severity LOG_WARNING のメッセージをログに記録します。Newに渡されたseverityは無視されます。

func (*Writer) Write

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

Writeはログメッセージをsyslogデーモンに送信します。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL