diff options
author | Davyd McColl <davydm@gmail.com> | 2021-06-11 17:06:47 +0200 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2021-07-01 17:13:14 +1000 |
commit | 31bcd632c7fc731ef4ad5dfb95e045e8a50e48a0 (patch) | |
tree | b8feb235797951d33bdd0486417a32ea89b484b8 /pkg/app | |
parent | aa9ef12d434bfdb4052e15c53fed48cbbb5ae25b (diff) |
:art: observe the error, if there is one
Diffstat (limited to 'pkg/app')
-rw-r--r-- | pkg/app/app.go | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/pkg/app/app.go b/pkg/app/app.go index ad655aa33..753bf8844 100644 --- a/pkg/app/app.go +++ b/pkg/app/app.go @@ -370,12 +370,26 @@ func TailLogsNative(logFilePath string, opts *humanlog.HandlerOptions) { } } +func OpenAndSeek(filepath string, offset int64) (*os.File, error) { + file, err := os.Open(filepath) + if err != nil { + return nil, err + } + + _, err = file.Seek(offset, 0) + if err != nil { + _ = file.Close() + return nil, err + } + return file, nil +} + func TailFrom(lastOffset int64, logFilePath string, opts *humanlog.HandlerOptions) error { - file, err := os.Open(logFilePath) + file, err := OpenAndSeek(logFilePath, lastOffset) if err != nil { return err } - file.Seek(lastOffset, 0) + fileScanner := bufio.NewScanner(file) var lines []string for fileScanner.Scan() { |