Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Agent ¶
type Agent struct {
// contains filtered or unexported fields
}
Agent runs recipes for specified plugins.
func (*Agent) RunMultiple ¶
RunMultiple executes multiple recipes.
type Config ¶
type Config struct {
ExtractorFactory *registry.ExtractorFactory
ProcessorFactory *registry.ProcessorFactory
SinkFactory *registry.SinkFactory
Monitor Monitor
Logger log.Logger
MaxRetries int
RetryInitialInterval time.Duration
StopOnSinkError bool
TimerFn TimerFn
SinkBatchSize int
}
type Monitor ¶
type Monitor interface {
RecordRun(ctx context.Context, run Run)
RecordPlugin(ctx context.Context, pluginInfo PluginInfo)
RecordSinkRetryCount(ctx context.Context, pluginInfo PluginInfo)
}
Monitor is the interface for monitoring the agent.
type PluginInfo ¶ added in v0.9.1
type Run ¶
type Run struct {
Recipe recipe.Recipe `json:"recipe"`
Error error `json:"error"`
DurationInMs int `json:"duration_in_ms"`
ExtractorRetries int `json:"extractor_retries"`
AssetsExtracted int `json:"assets_extracted"`
RecordCount int `json:"record_count"`
Success bool `json:"success"`
}
Run contains the json data
type TaskType ¶
type TaskType string
TaskType is the type of task
const ( // TaskTypeExtract is the type of task that extracts a record TaskTypeExtract TaskType = "extract" // TaskTypeProcess is the type of task that processes a record TaskTypeProcess TaskType = "process" // TaskTypeSink is the type of task that sends a record to a sink TaskTypeSink TaskType = "sink" )
Click to show internal directories.
Click to hide internal directories.