first
This commit is contained in:
52
DCIManager6/dci6-support/misc.go
Normal file
52
DCIManager6/dci6-support/misc.go
Normal file
@@ -0,0 +1,52 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"archive/zip"
|
||||
"io"
|
||||
"log"
|
||||
"os"
|
||||
)
|
||||
|
||||
func createLogger(logDir string, verbose bool) (*log.Logger, *log.Logger, *log.Logger) {
|
||||
logFile, err := os.OpenFile(logDir+"/dci_support_info.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
|
||||
if err != nil {
|
||||
log.Println("Failed to open log file:", err)
|
||||
logInfo := log.New(os.Stdout, "INFO: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
logWarn := log.New(os.Stdout, "WARN: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
logErr := log.New(os.Stderr, "ERROR: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
return logInfo, logWarn, logErr
|
||||
} else {
|
||||
if verbose {
|
||||
mw := io.MultiWriter(os.Stdout, logFile)
|
||||
mwErr := io.MultiWriter(os.Stderr, logFile)
|
||||
log.SetOutput(mw)
|
||||
logInfo := log.New(mw, "INFO: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
logWarn := log.New(mw, "WARN: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
logErr := log.New(mwErr, "ERROR: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
return logInfo, logWarn, logErr
|
||||
} else {
|
||||
log.SetOutput(logFile)
|
||||
logInfo := log.New(logFile, "INFO: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
logWarn := log.New(logFile, "WARN: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
logErr := log.New(logFile, "ERROR: ", log.Ldate|log.Ltime|log.Lshortfile)
|
||||
return logInfo, logWarn, logErr
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func addToArchive(zipWriter *zip.Writer, filename string) error {
|
||||
fileToZip, err := os.Open(filename)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer fileToZip.Close()
|
||||
|
||||
w, err := zipWriter.Create(filename)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := io.Copy(w, fileToZip); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user