Esempio n. 1
0
func (c *collector) source(ins *visor.Instance) {
	logFile := path.Join(c.logDir, ins.WorkerID(), "current")
	t, err := NewFileTail(logFile)
	if err != nil {
		c.errc <- fmt.Errorf("collector: unable to source %d: %s", ins.ID, err)
		return
	}
	s := NewSource(ins, t, c.pubc)

	c.Add(s, t)
	logf("collector: created source %d", ins.ID)

	if err := <-s.Error(); err != nil {
		c.errc <- err
		return
	}

	c.lookup.Remove(s)
	logf("collector: removed source %d", ins.ID)
}