Documentation ¶
Overview ¶
Package messages provides utilities to log messages
Package messages provides utilities to handle messages
Index ¶
- Constants
- func FormatMessage(msg IMessage) (s string, err error)
- func NewMockNotificationFeedPage(ctx context.Context, hasNext, hasFuture bool) (f *client.NotificationFeed, err error)
- func NewMockNotificationFeedPaginator(ctx context.Context) (pagination.IPaginatorAndPageFetcher, error)
- func NewMockNotificationFeedStreamPaginator(ctx context.Context) (pagination.IStreamPaginatorAndPageFetcher, error)
- type IMessage
- type IMessageLogger
- func NewBasicAsynchronousMessageLogger(ctx context.Context, rawLogger logging.ILogger) (IMessageLogger, error)
- func NewBasicSynchronousMessageLogger(ctx context.Context, rawLogger logging.ILogger) (IMessageLogger, error)
- func NewPeriodicAsynchronousMessageLogger(ctx context.Context, rawLogger logging.ILogger, printPeriod time.Duration) (IMessageLogger, error)
- func NewPeriodicSynchronousMessageLogger(ctx context.Context, rawLogger logging.ILogger, printPeriod time.Duration) (IMessageLogger, error)
- type Logger
- func (l *Logger) Check() error
- func (l *Logger) Close() error
- func (l *Logger) Log(output ...interface{})
- func (l *Logger) LogEmptyMessageError()
- func (l *Logger) LogError(err ...interface{})
- func (l *Logger) LogMarshallingError(rawMessage *any)
- func (l *Logger) LogMessage(msg IMessage)
- func (l *Logger) LogMessagesCollection(ctx context.Context, messagePaginator pagination.IGenericPaginator) error
- func (l *Logger) SetLogSource(source string) error
- func (l *Logger) SetLoggerSource(source string) error
- func (l *Logger) SetSource(source string) error
- type MessageLoggerFactory
- type PaginatorFactory
- func (f *PaginatorFactory) Create(ctx context.Context, ...) (paginator pagination.IStreamPaginatorAndPageFetcher, err error)
- func (f *PaginatorFactory) UpdateBackOffPeriod(backoff time.Duration) *PaginatorFactory
- func (f *PaginatorFactory) UpdateRunOutTimeout(runOutTimeOut time.Duration) *PaginatorFactory
Constants ¶
const ( // DefaultMessagesPrintingFrequency describes the default frequency at which messages are printed DefaultMessagesPrintingFrequency = 100 * time.Millisecond // DefaultMessageFetchingBackoff describes the fixed backoff duration before more messages are fetched. DefaultMessageFetchingBackoff = 10 * time.Millisecond // DefaultStreamExhaustionGracePeriod describes the grace period which should happen when expecting message stream exhaustion. DefaultStreamExhaustionGracePeriod = time.Second )
Variables ¶
This section is empty.
Functions ¶
func FormatMessage ¶
FormatMessage formats a job message.
func NewMockNotificationFeedPage ¶
func NewMockNotificationFeedPage(ctx context.Context, hasNext, hasFuture bool) (f *client.NotificationFeed, err error)
NewMockNotificationFeedPage generates a mock message page for testing
func NewMockNotificationFeedPaginator ¶
func NewMockNotificationFeedPaginator(ctx context.Context) (pagination.IPaginatorAndPageFetcher, error)
NewMockNotificationFeedPaginator generates a mock message paginator for testing
func NewMockNotificationFeedStreamPaginator ¶
func NewMockNotificationFeedStreamPaginator(ctx context.Context) (pagination.IStreamPaginatorAndPageFetcher, error)
NewMockNotificationFeedStreamPaginator generates a mock message stream paginator for testing
Types ¶
type IMessage ¶
type IMessage interface { // GetCtimeOk returns the creation time GetCtimeOk() (*time.Time, bool) // GetMessageOk returns the message string GetMessageOk() (*string, bool) // GetSeverityOk returns the message severity GetSeverityOk() (*string, bool) // GetSourceOk returns the message source. GetSourceOk() (*string, bool) }
IMessage defines a generic service message.
type IMessageLogger ¶
type IMessageLogger interface { logs.Loggers LogMessage(msg IMessage) LogEmptyMessageError() LogMarshallingError(rawMessage *any) LogMessagesCollection(ctx context.Context, messagePaginator pagination.IGenericPaginator) error }
IMessageLogger defines a logger dedicated to printing service messages.
func NewBasicAsynchronousMessageLogger ¶
func NewBasicAsynchronousMessageLogger(ctx context.Context, rawLogger logging.ILogger) (IMessageLogger, error)
NewBasicAsynchronousMessageLogger creates an asynchronous logger for messages which prints them as they come.
func NewBasicSynchronousMessageLogger ¶
func NewBasicSynchronousMessageLogger(ctx context.Context, rawLogger logging.ILogger) (IMessageLogger, error)
NewBasicSynchronousMessageLogger creates a synchronous logger for messages which prints them as they come.
func NewPeriodicAsynchronousMessageLogger ¶
func NewPeriodicAsynchronousMessageLogger(ctx context.Context, rawLogger logging.ILogger, printPeriod time.Duration) (IMessageLogger, error)
NewPeriodicAsynchronousMessageLogger creates an asynchronous logger for messages which prints them at regular intervals.
func NewPeriodicSynchronousMessageLogger ¶
func NewPeriodicSynchronousMessageLogger(ctx context.Context, rawLogger logging.ILogger, printPeriod time.Duration) (IMessageLogger, error)
NewPeriodicSynchronousMessageLogger creates a synchronous logger for messages which prints them at regular intervals.
type Logger ¶
type Logger struct {
// contains filtered or unexported fields
}
func (*Logger) LogEmptyMessageError ¶
func (l *Logger) LogEmptyMessageError()
func (*Logger) LogMarshallingError ¶
func (*Logger) LogMessage ¶
func (*Logger) LogMessagesCollection ¶
func (l *Logger) LogMessagesCollection(ctx context.Context, messagePaginator pagination.IGenericPaginator) error
func (*Logger) SetLogSource ¶
func (*Logger) SetLoggerSource ¶
type MessageLoggerFactory ¶
type MessageLoggerFactory struct {
// contains filtered or unexported fields
}
MessageLoggerFactory defines a message logger factory
func NewMessageLoggerFactory ¶
func NewMessageLoggerFactory(logger logging.ILogger, asynchronous bool, printingPeriod time.Duration) *MessageLoggerFactory
NewMessageLoggerFactory returns a message logger factory.
func (*MessageLoggerFactory) Create ¶
func (f *MessageLoggerFactory) Create(ctx context.Context) (IMessageLogger, error)
Create returns a message logger.
type PaginatorFactory ¶
type PaginatorFactory struct {
// contains filtered or unexported fields
}
func NewMockMessagePaginatorFactory ¶
func NewMockMessagePaginatorFactory(pageNumber int) *PaginatorFactory
NewMockMessagePaginatorFactory generates a mock message paginator factory
func NewPaginatorFactory ¶
func NewPaginatorFactory(runOutTimeOut, backoff time.Duration, fetchNextPageFunc func(context.Context, pagination.IStaticPage) (pagination.IStaticPage, error), fetchFutureFunc func(context.Context, pagination.IStaticPageStream) (pagination.IStaticPageStream, error)) *PaginatorFactory
NewPaginatorFactory returns a message paginator factory.
func (*PaginatorFactory) Create ¶
func (f *PaginatorFactory) Create(ctx context.Context, fetchFirstPageFunc func(context.Context) (pagination.IStaticPageStream, error)) (paginator pagination.IStreamPaginatorAndPageFetcher, err error)
func (*PaginatorFactory) UpdateBackOffPeriod ¶ added in v1.5.1
func (f *PaginatorFactory) UpdateBackOffPeriod(backoff time.Duration) *PaginatorFactory
func (*PaginatorFactory) UpdateRunOutTimeout ¶
func (f *PaginatorFactory) UpdateRunOutTimeout(runOutTimeOut time.Duration) *PaginatorFactory