INNER CODE UNIT · Go
func
loggie-io/loggie · pkg/control/controller.go:41
func (c *Controller) Start(config *PipelineConfig) {
c.initHttp()
c.StartPipelines(config.Pipelines)
}
func (c *Controller) StartPipelines(configs []pipeline.Config) {
// add new pipeline configs to currentConfig
c.CurrentConfig.AddPipelines(configs)
// start new pipelines
for _, pConfig := range configs {
p := pipeline.NewPipeline(&pConfig)
log.Info("starting pipeline: %s", pConfig.Name)
c.reportMetric(pConfig, eventbus.ComponentStart)
if err := p.Start(); err != nil {
log.Error("start pipeline error: %v", err)
c.pipelineRunner[pConfig.Name] = p
p.Stop()