调整输出日志信息
This commit is contained in:
parent
44b5a10ed3
commit
7fcbbaeb46
|
|
@ -41,7 +41,10 @@ func (ee *CsvExporter) Export(sql, pk string) error {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("数据获取错误:%w", err)
|
return fmt.Errorf("数据获取错误:%w", err)
|
||||||
}
|
}
|
||||||
log.Printf("数据获取耗时:%s \n", time.Now().Sub(begin).String())
|
duration := time.Now().Sub(begin)
|
||||||
|
if duration.Seconds() > 10 {
|
||||||
|
log.Printf("数据获取耗时:%s \n", duration.String())
|
||||||
|
}
|
||||||
|
|
||||||
ee.count = len(data.Data)
|
ee.count = len(data.Data)
|
||||||
if ee.count > 0 {
|
if ee.count > 0 {
|
||||||
|
|
@ -64,8 +67,10 @@ func (ee *CsvExporter) exportToCsv(data *Data) {
|
||||||
}
|
}
|
||||||
ee.file.Close()
|
ee.file.Close()
|
||||||
ee.wg.Done()
|
ee.wg.Done()
|
||||||
end := time.Now()
|
duration := time.Now().Sub(begin)
|
||||||
log.Printf("csv time:%s\n", end.Sub(begin).String())
|
if duration.Seconds() > 10 {
|
||||||
|
log.Printf("csv输出耗时:%s \n", duration.String())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ee *CsvExporter) Last() (int, interface{}) {
|
func (ee *CsvExporter) Last() (int, interface{}) {
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,10 @@
|
||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/csv"
|
|
||||||
"excel_export/biz/config"
|
"excel_export/biz/config"
|
||||||
"excel_export/biz/db"
|
"excel_export/biz/db"
|
||||||
"excel_export/biz/export"
|
"excel_export/biz/export"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
|
||||||
"os"
|
"os"
|
||||||
"strconv"
|
"strconv"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
@ -86,7 +84,7 @@ func (e *Csv) TaskExport(d export.DataFetcher, t config.Task, params map[string]
|
||||||
time.Sleep(time.Microsecond * 30)
|
time.Sleep(time.Microsecond * 30)
|
||||||
}
|
}
|
||||||
wg.Wait()
|
wg.Wait()
|
||||||
fmt.Println("tempDir", e.dirTemp)
|
//fmt.Println("tempDir", e.dirTemp)
|
||||||
//todo 合并csv文件,并删除 临时目录
|
//todo 合并csv文件,并删除 临时目录
|
||||||
err := e.mergeCsvToExcel(e.dirTemp, i, fileName)
|
err := e.mergeCsvToExcel(e.dirTemp, i, fileName)
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
|
|
@ -116,47 +114,6 @@ func (e *Csv) getCsvFile(index int) (*export.Csv, error) {
|
||||||
return f, nil
|
return f, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Csv) mergeCsv(path string, max int) error {
|
|
||||||
csvFile, err := os.Create("aa.csv")
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("打开写入文件失败:%w", err)
|
|
||||||
}
|
|
||||||
defer csvFile.Close()
|
|
||||||
csvWriter := csv.NewWriter(csvFile)
|
|
||||||
|
|
||||||
for i := 0; i <= max; i++ {
|
|
||||||
filename := fmt.Sprintf("%s/data_%d_0.csv", path, i)
|
|
||||||
csvOpen, err := os.Open(filename)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("打开读取文件%s失败:%w", filename, err)
|
|
||||||
}
|
|
||||||
csvReader := csv.NewReader(csvOpen)
|
|
||||||
var index int
|
|
||||||
for {
|
|
||||||
record, err := csvReader.Read()
|
|
||||||
if err == io.EOF {
|
|
||||||
break
|
|
||||||
} else if err != nil {
|
|
||||||
return fmt.Errorf("读取文件%s错误:%w", filename, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
index++
|
|
||||||
//不是第一个文件时,跳过第一条数据
|
|
||||||
if index == 1 && i != 0 {
|
|
||||||
//continue
|
|
||||||
}
|
|
||||||
fmt.Println(record)
|
|
||||||
csvWriter.Write(record)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
csvOpen.Close()
|
|
||||||
}
|
|
||||||
csvWriter.Flush()
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *Csv) mergeCsvToExcel(path string, max int, out string) error {
|
func (e *Csv) mergeCsvToExcel(path string, max int, out string) error {
|
||||||
m := NewMerge(
|
m := NewMerge(
|
||||||
Reader{Path: path, Index: max},
|
Reader{Path: path, Index: max},
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue