fix(agent): Only rotate log on SIGHUP if needed (#12740)

This commit is contained in:
Joshua Powers 2023-03-01 07:30:37 -07:00 committed by GitHub
parent d4926c64f0
commit 3f3885a2b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 3 deletions

View File

@ -95,7 +95,12 @@ func (w *FileWriter) Close() (err error) {
defer w.Unlock() defer w.Unlock()
// Rotate before closing // Rotate before closing
if err = w.rotate(); err != nil { if err := w.rotateIfNeeded(); err != nil {
return err
}
// Close the file if we did not rotate
if err := w.current.Close(); err != nil {
return err return err
} }

View File

@ -129,7 +129,7 @@ func TestFileWriter_DeleteArchives(t *testing.T) {
} }
} }
func TestFileWriter_CloseRotates(t *testing.T) { func TestFileWriter_CloseDoesNotRotate(t *testing.T) {
tempDir := t.TempDir() tempDir := t.TempDir()
maxSize := int64(9) maxSize := int64(9)
writer, err := NewFileWriter(filepath.Join(tempDir, "test.log"), 0, maxSize, -1) writer, err := NewFileWriter(filepath.Join(tempDir, "test.log"), 0, maxSize, -1)
@ -138,5 +138,5 @@ func TestFileWriter_CloseRotates(t *testing.T) {
files, _ := os.ReadDir(tempDir) files, _ := os.ReadDir(tempDir)
assert.Equal(t, 1, len(files)) assert.Equal(t, 1, len(files))
assert.Regexp(t, "^test\\.[^\\.]+\\.log$", files[0].Name()) assert.Regexp(t, "^test.log$", files[0].Name())
} }