mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2024-11-23 18:49:21 +08:00
feat: 1Panel 日志文件取消压缩 (#2672)
This commit is contained in:
parent
d638796798
commit
86b6afe0b4
@ -12,7 +12,6 @@ import (
|
|||||||
"unsafe"
|
"unsafe"
|
||||||
|
|
||||||
"github.com/1Panel-dev/1Panel/backend/global"
|
"github.com/1Panel-dev/1Panel/backend/global"
|
||||||
"github.com/1Panel-dev/1Panel/backend/utils/files"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type Writer struct {
|
type Writer struct {
|
||||||
@ -120,7 +119,7 @@ func NewWriterFromConfig(c *Config) (RollingWriter, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fileName := c.FileName
|
fileName := c.FileName
|
||||||
if strings.Contains(fi.Name(), fileName) && strings.Contains(fi.Name(), c.LogSuffix+".gz") {
|
if strings.Contains(fi.Name(), fileName) && strings.Contains(fi.Name(), c.LogSuffix) {
|
||||||
start := strings.Index(fi.Name(), "-")
|
start := strings.Index(fi.Name(), "-")
|
||||||
end := strings.Index(fi.Name(), c.LogSuffix)
|
end := strings.Index(fi.Name(), c.LogSuffix)
|
||||||
name := fi.Name()
|
name := fi.Name()
|
||||||
@ -237,11 +236,6 @@ func (w *Writer) Reopen(file string) error {
|
|||||||
w.file = newFile
|
w.file = newFile
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
if err := w.CompressFile(file); err != nil {
|
|
||||||
log.Println("error in compress log file", err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if w.cf.MaxRemain > 0 {
|
if w.cf.MaxRemain > 0 {
|
||||||
retry:
|
retry:
|
||||||
select {
|
select {
|
||||||
@ -254,17 +248,3 @@ func (w *Writer) Reopen(file string) error {
|
|||||||
}()
|
}()
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (w *Writer) CompressFile(logFile string) error {
|
|
||||||
op := files.NewFileOp()
|
|
||||||
comFileName := path.Base(logFile) + ".gz"
|
|
||||||
filePath := path.Dir(logFile)
|
|
||||||
|
|
||||||
if err := op.Compress([]string{logFile}, filePath, comFileName, files.Gz); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
if errR := os.Remove(logFile); errR != nil {
|
|
||||||
return errR
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
Loading…
Reference in New Issue
Block a user