зеркало из https://github.com/microsoft/docker.git
Merge pull request #28203 from shaynewang/27687-fix-tail-flag-returning-more-lines
Fixes #27687 docker logs --tails returns less lines than expected
This commit is contained in:
Коммит
28094357ed
|
@ -117,22 +117,28 @@ func (s *DockerSuite) TestLogsTail(c *check.C) {
|
|||
id := strings.TrimSpace(out)
|
||||
dockerCmd(c, "wait", id)
|
||||
|
||||
out, _ = dockerCmd(c, "logs", "--tail", "5", id)
|
||||
|
||||
out, _ = dockerCmd(c, "logs", "--tail", "0", id)
|
||||
lines := strings.Split(out, "\n")
|
||||
c.Assert(lines, checker.HasLen, 1)
|
||||
|
||||
out, _ = dockerCmd(c, "logs", "--tail", "5", id)
|
||||
lines = strings.Split(out, "\n")
|
||||
c.Assert(lines, checker.HasLen, 6)
|
||||
|
||||
out, _ = dockerCmd(c, "logs", "--tail", "all", id)
|
||||
|
||||
out, _ = dockerCmd(c, "logs", "--tail", "99", id)
|
||||
lines = strings.Split(out, "\n")
|
||||
c.Assert(lines, checker.HasLen, 100)
|
||||
|
||||
out, _ = dockerCmd(c, "logs", "--tail", "all", id)
|
||||
lines = strings.Split(out, "\n")
|
||||
c.Assert(lines, checker.HasLen, testLen+1)
|
||||
|
||||
out, _ = dockerCmd(c, "logs", "--tail", "-1", id)
|
||||
lines = strings.Split(out, "\n")
|
||||
c.Assert(lines, checker.HasLen, testLen+1)
|
||||
|
||||
out, _, _ = dockerCmdWithStdoutStderr(c, "logs", "--tail", "random", id)
|
||||
|
||||
lines = strings.Split(out, "\n")
|
||||
|
||||
c.Assert(lines, checker.HasLen, testLen+1)
|
||||
}
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@ func TailFile(f io.ReadSeeker, n int) ([][]byte, error) {
|
|||
break
|
||||
} else {
|
||||
b = make([]byte, blockSize)
|
||||
if _, err := f.Seek(step, os.SEEK_END); err != nil {
|
||||
if _, err := f.Seek(left, os.SEEK_SET); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if _, err := f.Read(b); err != nil {
|
||||
|
|
Загрузка…
Ссылка в новой задаче