func NewLogSource(name string, config *LogsConfig) *LogSource {
	return &LogSource{
		Name:         name,
		Config:       config,
		Status:       NewLogStatus(),
		inputs:       make(map[string]bool),
		lock:         &sync.Mutex{},
		Messages:     NewMessages(),
		BytesRead:    expvar.Int{},
		info:         make(map[string]InfoProvider),
		LatencyStats: util.NewStatsTracker(time.Hour*24, time.Hour),
	}
}
// NewLogSource creates a new log source.
NewLogSource creates a new log source.
// NewLogSource creates a new log source .
func NewLogSource(name string, config *LogsConfig) *LogSource {
	return &LogSource{
		Name:         name,
		Config:       config,
		Status:       NewLogStatus(),
		inputs:       make(map[string]bool),
		lock:         &sync.Mutex{},
		Messages:     NewMessages(),
		BytesRead:    expvar.Int{},
		info:         make(map[string]InfoProvider),
		LatencyStats: util.NewStatsTracker(time.Hour*24, time.Hour),
	}
}
func NewLogSource ( name string , config * LogsConfig ) * LogSource { return & LogSource { Name : name , Config : config , Status : NewLogStatus ( ) , inputs : make ( map [ string ] bool ) , lock : & sync . Mutex { } , Messages : NewMessages ( ) , BytesRead : expvar . Int { } , info : make ( map [ string ] InfoProvider ) , LatencyStats : util . NewStatsTracker ( time . Hour * 24 , time . Hour ) , } }
NewLogSource creates a new log source.
NewLogSource creates a new log source .