X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=src%2Fjobs.go;h=1b5cef8fbf24c5e1824cbff0c473cd478cf69bb2;hb=5a9bf58a2638e42f2d42fa4d43c363a664fe8198;hp=37a31b1bcb2d6ec3eee58b17430e361cdd8c1b0d;hpb=745d9fafe84b0745b84d93900722216dde6b88cc;p=nncp.git diff --git a/src/jobs.go b/src/jobs.go index 37a31b1..1b5cef8 100644 --- a/src/jobs.go +++ b/src/jobs.go @@ -19,11 +19,13 @@ package nncp import ( "bytes" + "fmt" "os" "path/filepath" "strings" xdr "github.com/davecgh/go-xdr/xdr2" + "github.com/dustin/go-humanize" ) type TRxTx string @@ -58,21 +60,29 @@ func (ctx *Ctx) HdrRead(fd *os.File) (*PktEnc, []byte, error) { func (ctx *Ctx) HdrWrite(pktEncRaw []byte, tgt string) error { tmpHdr, err := ctx.NewTmpFile() if err != nil { - ctx.LogE("hdr-write", []LE{}, err, "new") + ctx.LogE("hdr-write-tmp-new", nil, err, func(les LEs) string { + return "Header writing: new temporary file" + }) return err } if _, err = tmpHdr.Write(pktEncRaw); err != nil { - ctx.LogE("hdr-write", []LE{}, err, "write") + ctx.LogE("hdr-write-write", nil, err, func(les LEs) string { + return "Header writing: writing" + }) os.Remove(tmpHdr.Name()) return err } if err = tmpHdr.Close(); err != nil { - ctx.LogE("hdr-write", []LE{}, err, "close") + ctx.LogE("hdr-write-close", nil, err, func(les LEs) string { + return "Header writing: closing" + }) os.Remove(tmpHdr.Name()) return err } if err = os.Rename(tmpHdr.Name(), tgt+HdrSuffix); err != nil { - ctx.LogE("hdr-write", []LE{}, err, "rename") + ctx.LogE("hdr-write-rename", nil, err, func(les LEs) string { + return "Header writing: renaming" + }) return err } return err @@ -132,13 +142,20 @@ func (ctx *Ctx) jobsFind(nodeId *NodeId, xx TRxTx, nock bool) chan Job { if err != nil || pktEnc.Magic != MagicNNCPEv4 { continue } - ctx.LogD("jobs", LEs{ + ctx.LogD("job", LEs{ {"XX", string(xx)}, {"Node", pktEnc.Sender}, {"Name", name}, {"Nice", int(pktEnc.Nice)}, {"Size", fi.Size()}, - }, "taken") + }, func(les LEs) string { + return fmt.Sprintf( + "Job %s/%s/%s nice: %s size: %s", + pktEnc.Sender, string(xx), name, + NicenessFmt(pktEnc.Nice), + humanize.IBytes(uint64(fi.Size())), + ) + }) if !hdrExists && ctx.HdrUsage { ctx.HdrWrite(pktEncRaw, pth) }