woodpecker/server/logging/logging.go

30 lines
709 B
Go
Raw Normal View History

2017-03-05 07:56:08 +00:00
package logging
import (
"context"
"errors"
"github.com/woodpecker-ci/woodpecker/server/model"
2017-03-05 07:56:08 +00:00
)
// ErrNotFound is returned when the log does not exist.
var ErrNotFound = errors.New("stream: not found")
// Handler defines a callback function for handling log entries.
type Handler func(...*model.LogEntry)
2017-03-05 07:56:08 +00:00
// Log defines a log multiplexer.
type Log interface {
// Open opens the log.
Open(c context.Context, stepID int64) error
2017-03-05 07:56:08 +00:00
// Write writes the entry to the log.
Write(c context.Context, stepID int64, entry *model.LogEntry) error
2017-03-05 07:56:08 +00:00
// Tail tails the log.
Tail(c context.Context, stepID int64, handler Handler) error
2017-03-05 07:56:08 +00:00
// Close closes the log.
Close(c context.Context, stepID int64) error
2017-03-05 07:56:08 +00:00
}