func (i *Tail) translateConfig(original *TailConfig) tail.Config { config := tail.Config{Follow: true, ReOpen: true} if original.MustExist { config.MustExist = true } if original.Poll { config.Poll = true } if original.LimitRate > 0 { config.RateLimiter = ratelimiter.NewLeakyBucket( uint16(original.LimitRate), time.Second, ) } position := i.readPosition() if position > 0 { config.Location = &tail.SeekInfo{Offset: position, Whence: 0} } return config }