Compare commits

...

4 Commits

Author SHA1 Message Date
4cec01609a 로거 정리 2023-06-13 23:49:37 +09:00
43da9424f0 다운로드 링크 수정 2023-06-13 23:49:25 +09:00
c4c0f86947 로거 정리 2023-06-13 23:49:14 +09:00
838b3a2194 unzip 버그 수정 - 백슬래시 처리 추가 2023-06-13 23:48:51 +09:00
4 changed files with 18 additions and 8 deletions

View File

@ -55,6 +55,9 @@ func download(dir string, urlpath string, accessToken string) (string, error) {
return filepath.ToSlash(out.Name()), nil
}
func UnzipTest(fname string) error {
return unzip(fname)
}
func unzip(fname string) error {
archive, err := zip.OpenReader(fname)
if err != nil {
@ -75,10 +78,12 @@ func unzip(fname string) error {
name = f.Name
}
name = strings.ReplaceAll(name, `\`, "/")
filePath := path.Join(verpath, name)
if f.FileInfo().IsDir() {
os.MkdirAll(filePath, 0775)
if f.FileInfo().IsDir() || strings.HasSuffix(f.FileInfo().Name(), `\`) {
if err = os.MkdirAll(filePath, 0775); err != nil {
return err
}
continue
}

View File

@ -13,6 +13,7 @@ var runAsServer = flag.Bool("server", false, "")
func main() {
shared.InitLogger()
defer shared.CloseLogger()
if !flag.Parsed() {
flag.Parse()

View File

@ -349,7 +349,7 @@ func (h *houstonHandler) GetLogFileLinks(w http.ResponseWriter, r *http.Request)
var out []string
for _, lf := range logfiles {
out = append(out, path.Join(root, lf.Name()))
out = append(out, path.Join("downloads", name, version, lf.Name()))
}
enc := json.NewEncoder(w)

View File

@ -1,19 +1,24 @@
package shared
import (
"io"
"log"
"os"
"path"
)
var defLogger *log.Logger
var defCloser func()
func InitLogger() {
name, _ := os.Executable()
base := path.Base(name)
logfile, _ := os.OpenFile(base+".log", os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0666)
defLogger = log.New(logfile, "", log.LstdFlags)
defCloser = func() {
logfile.Close()
}
defLogger = log.New(io.MultiWriter(logfile, os.Stdout), "", log.LstdFlags)
}
func Logger() *log.Logger {
@ -21,8 +26,7 @@ func Logger() *log.Logger {
}
func CloseLogger() {
outfile := defLogger.Writer().(*os.File)
if outfile != nil {
outfile.Close()
if defCloser != nil {
defCloser()
}
}