func NewAgent()

in sdk/sdk.go [39:63]


func NewAgent(configData []byte, stateDir string) (*Agent, error) {
	cfg, err := parseConfig(configData)
	if err != nil {
		return nil, err
	}

	var p persistence.Persistence
	if stateDir == "" {
		p = persistence.NewMemoryPersistence()
	} else {
		var err error
		p, err = persistence.NewDiskPersistence(stateDir)
		if err != nil {
			return nil, err
		}
	}

	basic := stats.NewBasic()
	input, err := builder.Build(cfg, p, basic)
	if err != nil {
		return nil, err
	}

	return &Agent{input, basic}, nil
}