audit

package
v0.16.0 Latest Latest
Warning

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

Go to latest
Published: Feb 26, 2021 License: GPL-3.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const ProcessorPoolSize = 1

AuditProcessor manages audit tasks and fills queue for next epoch. This process must not be interrupted by new audit epoch, so we limit pool size for processor to one.

Variables

View Source
var ErrInvalidIRNode = errors.New("node is not in the inner ring list")

Functions

func Select

func Select(ids []*container.ID, epoch, index, size uint64) []*container.ID

Types

type Indexer

type Indexer interface {
	Index() int
	InnerRingSize() int
}

Indexer is a callback interface for inner ring global state.

type NeoFSClientCache

type NeoFSClientCache interface {
	Get(address string, opts ...SDKClient.Option) (*SDKClient.Client, error)
}

NeoFSClientCache is an interface for cache of neofs RPC clients

type Params

type Params struct {
	Log               *zap.Logger
	NetmapContract    util.Uint160
	ContainerContract util.Uint160
	AuditContract     util.Uint160
	MorphClient       *client.Client
	IRList            Indexer
	ClientCache       NeoFSClientCache
	RPCSearchTimeout  time.Duration
	TaskManager       TaskManager
	Reporter          audit.Reporter
}

Params of the processor constructor.

type Processor

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

Processor of events related with data audit.

func New

func New(p *Params) (*Processor, error)

New creates audit processor instance.

func (*Processor) ListenerHandlers

func (ap *Processor) ListenerHandlers() []event.HandlerInfo

ListenerHandlers for the 'event.Listener' event producer.

func (*Processor) ListenerParsers

func (ap *Processor) ListenerParsers() []event.ParserInfo

ListenerParsers for the 'event.Listener' event producer.

func (*Processor) StartAuditHandler

func (ap *Processor) StartAuditHandler() event.Handler

StartAuditHandler for the internal event producer.

func (*Processor) TimersHandlers

func (ap *Processor) TimersHandlers() []event.HandlerInfo

TimersHandlers for the 'Timers' event producer.

type Start

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

Start is a event to start new round of data audit.

func NewAuditStartEvent

func NewAuditStartEvent(epoch uint64) Start

func (Start) Epoch

func (a Start) Epoch() uint64

func (Start) MorphEvent

func (a Start) MorphEvent()

MorphEvent implements Event interface.

type TaskManager

type TaskManager interface {
	PushTask(*audit.Task) error

	// Must skip all tasks planned for execution and
	// return their number.
	Reset() int
}

Jump to

Keyboard shortcuts

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