代码拉取完成,页面将自动刷新
package module
import (
"time"
"github.com/joeshaw/multierror"
"github.com/elastic/beats/libbeat/cfgfile"
"github.com/elastic/beats/libbeat/common"
"github.com/elastic/beats/libbeat/common/cfgwarn"
"github.com/elastic/beats/libbeat/publisher/bc/publisher"
"github.com/elastic/beats/metricbeat/mb"
)
// Factory creates new Runner instances from configuration objects.
// It is used to register and reload modules.
type Factory struct {
pipeline publisher.Publisher
maxStartDelay time.Duration
}
// NewFactory creates new Reloader instance for the given config
func NewFactory(maxStartDelay time.Duration, p publisher.Publisher) *Factory {
return &Factory{
pipeline: p,
maxStartDelay: maxStartDelay,
}
}
func (r *Factory) Create(c *common.Config) (cfgfile.Runner, error) {
var errs multierror.Errors
err := cfgwarn.CheckRemoved5xSettings(c, "filters")
if err != nil {
errs = append(errs, err)
}
connector, err := NewConnector(r.pipeline, c)
if err != nil {
errs = append(errs, err)
}
w, err := NewWrapper(r.maxStartDelay, c, mb.Registry)
if err != nil {
errs = append(errs, err)
}
if err := errs.Err(); err != nil {
return nil, err
}
client, err := connector.Connect()
if err != nil {
return nil, err
}
mr := NewRunner(client, w)
return mr, nil
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。