cloudwatch

package module
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Aug 18, 2017 License: BSD-3-Clause Imports: 10 Imported by: 0

README

This is a Go library to treat CloudWatch Log streams as io.Writers and io.Readers.

Usage

group := AttachGroup("group", cloudwatchlogs.New(defaults.DefaultConfig))
w, err := group.AttachStream("stream")

fmt.Fprintln(w, "Hello World")

w.Flush()

or

group := AttachGroup("group", cloudwatchlogs.New(defaults.DefaultConfig))
w, err := group.AttachStream("stream")

io.WriteString(w, "Hello World")

r, err := group.Open("stream")
io.Copy(os.Stdout, r)

Dependencies

This library depends on aws-sdk-go.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Group

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

Group wraps a log stream group and provides factory methods for creating readers and writers for streams.

func AttachGroup added in v1.0.0

func AttachGroup(group string, client *cloudwatchlogs.CloudWatchLogs) (*Group, error)

AttachGroup creates a reference to a log group.

If the group already exists, it is used. If the group doesn't exist, it is created.

func (*Group) AttachStream added in v1.0.0

func (g *Group) AttachStream(stream string) (*Writer, error)

AttachStream creates a log stream in the group and returns an Writer for it.

If the requested stream doesn't exist, it is created. If the requested stream already exists, the requested stream is used.

func (*Group) Open

func (g *Group) Open(stream string) (*Reader, error)

Open returns an Reader to read from the log stream.

type Reader

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

Reader is an io.Reader implementation that streams log lines from cloudwatch logs.

func NewReader

func NewReader(group, stream string, client cloudwatchlogsiface.CloudWatchLogsAPI) *Reader

func (*Reader) Read

func (r *Reader) Read(b []byte) (int, error)

type RejectedLogEventsInfoError

type RejectedLogEventsInfoError struct {
	Info *cloudwatchlogs.RejectedLogEventsInfo
}

func (*RejectedLogEventsInfoError) Error

type Writer

type Writer struct {
	sync.Mutex // This protects calls to flush.
	// contains filtered or unexported fields
}

Writer is an io.Writer implementation that writes lines to a cloudwatch logs stream.

func NewWriter

func NewWriter(group, stream string, client cloudwatchlogsiface.CloudWatchLogsAPI) *Writer

func (*Writer) Close

func (w *Writer) Close() error

Closes the writer. Any subsequent calls to Write will return io.ErrClosedPipe.

func (*Writer) Flush

func (w *Writer) Flush() error

Flush flushes the events that are currently buffered.

func (*Writer) Write

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

Write takes b, and creates cloudwatch log events for each individual line. If Flush returns an error, subsequent calls to Write will fail.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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