github.com/netdata/go.d.plugin@v0.58.1/agent/discovery/dyncfg/config.go (about)

     1  // SPDX-License-Identifier: GPL-3.0-or-later
     2  
     3  package dyncfg
     4  
     5  import (
     6  	"github.com/netdata/go.d.plugin/agent/confgroup"
     7  	"github.com/netdata/go.d.plugin/agent/functions"
     8  	"github.com/netdata/go.d.plugin/agent/module"
     9  )
    10  
    11  type Config struct {
    12  	Plugin               string
    13  	API                  NetdataDyncfgAPI
    14  	Functions            FunctionRegistry
    15  	Modules              module.Registry
    16  	ModuleConfigDefaults confgroup.Registry
    17  }
    18  
    19  type NetdataDyncfgAPI interface {
    20  	DynCfgEnable(string) error
    21  	DynCfgReset() error
    22  	DyncCfgRegisterModule(string) error
    23  	DynCfgRegisterJob(_, _, _ string) error
    24  	DynCfgReportJobStatus(_, _, _, _ string) error
    25  	FunctionResultSuccess(_, _, _ string) error
    26  	FunctionResultReject(_, _, _ string) error
    27  }
    28  
    29  type FunctionRegistry interface {
    30  	Register(name string, reg func(functions.Function))
    31  }
    32  
    33  func validateConfig(cfg Config) error {
    34  	return nil
    35  }