kaspad/cmd/txgen/log.go
Ori Newman 6250342b86 [NOD-205] Reimplement txgen (#320)
* [NOD-205] Reimplement txgen

* [NOD-205] remove prev outpoints of all initial transactions

* [NOD-205] break txloop to smaller functions

* [NOD-205] Limit collectTransactions iterations

* [NOD-205] Use requiredConfirmations constant instead of inline number

* [NOD-205] Rename wTx -> walletTx

* [NOD-205] Remove handleNewBlock

* [NOD-205] Fix search and replace error
2019-06-04 18:06:35 +03:00

46 lines
920 B
Go

package main
import (
"fmt"
"github.com/btcsuite/btclog"
"github.com/daglabs/btcd/util/panics"
"github.com/jrick/logrotate/rotator"
"os"
"path/filepath"
)
type logWriter struct{}
func (logWriter) Write(p []byte) (n int, err error) {
if initiated {
os.Stdout.Write(p)
LogRotator.Write(p)
}
return len(p), nil
}
var (
backendLog = btclog.NewBackend(logWriter{})
LogRotator *rotator.Rotator
log = backendLog.Logger("TXGN")
spawn = panics.GoroutineWrapperFunc(log)
initiated = false
)
func initLogRotator(logFile string) {
initiated = true
logDir, _ := filepath.Split(logFile)
err := os.MkdirAll(logDir, 0700)
if err != nil {
fmt.Fprintf(os.Stderr, "failed to create log directory: %s\n", err)
os.Exit(1)
}
r, err := rotator.New(logFile, 10*1024, false, 3)
if err != nil {
fmt.Fprintf(os.Stderr, "failed to create file rotator: %s\n", err)
os.Exit(1)
}
LogRotator = r
}