code: func NewConfig() *Config {
  	cfg := &Config{}
  	cfg.FlagSet = flag.NewFlagSet("importer", flag.ContinueOnError)
  	fs := cfg.FlagSet
  
  	fs.StringVar(&cfg.configFile, "config", "", "Config file")
  
  	fs.StringVar(&cfg.DDLCfg.TableSQL, "t", "", "create table sql")
  	fs.StringVar(&cfg.DDLCfg.IndexSQL, "i", "", "create index sql")
  
  	fs.StringVar(&cfg.StatsCfg.Path, "s", "", "load stats file path")
  
  	fs.IntVar(&cfg.SysCfg.WorkerCount, "c", 2, "parallel worker count")
  	fs.IntVar(&cfg.SysCfg.JobCount, "n", 10000, "total job count")
  	fs.IntVar(&cfg.SysCfg.Batch, "b", 1000, "insert batch commit count")
  
  	fs.StringVar(&cfg.DBCfg.Host, "h", "127.0.0.1", "set the database host ip")
  	fs.StringVar(&cfg.DBCfg.User, "u", "root", "set the database user")
  	fs.StringVar(&cfg.DBCfg.Password, "p", "", "set the database password")
  	fs.StringVar(&cfg.DBCfg.Name, "D", "test", "set the database name")
  	fs.IntVar(&cfg.DBCfg.Port, "P", 3306, "set the database host port")
  
  	fs.StringVar(&cfg.SysCfg.LogLevel, "L", "info", "log level: debug, info, warn, error, fatal")
  
  	return cfg
  }
docs: // NewConfig creates a new config.