log: Add structured logging (#1171)

* basic implementation

* log: deprecate duplicate function, add tests and refine calls.

* linter: fixes

* linter: update struct

* linter and new type

* log tests: update to not lint issue

* linter: stop complaining please

* glorious: nits

* log: rm comment code

* glorious: nits

* glorious: nits

* glorious: nits

* glorious: nits missed

---------

Co-authored-by: Ryan O'Hara-Reid <ryan.oharareid@thrasher.io>
This commit is contained in:
Ryan O'Hara-Reid
2023-05-10 17:52:53 +10:00
committed by GitHub
parent 6e1cbfc31e
commit db8735ec99
44 changed files with 679 additions and 476 deletions

View File

@@ -95,7 +95,7 @@ func (bt *BackTest) RunLive() error {
go func() {
err = bt.liveCheck()
if err != nil {
log.Error(common.LiveStrategy, err)
log.Errorln(common.LiveStrategy, err)
}
bt.wg.Done()
}()
@@ -153,7 +153,7 @@ func (bt *BackTest) ExecuteStrategy(waitForOfflineCompletion bool) error {
case waitForOfflineCompletion && !liveTesting:
err = bt.Run()
if err != nil {
log.Error(common.Backtester, err)
log.Errorln(common.Backtester, err)
}
return bt.Stop()
case !waitForOfflineCompletion && liveTesting:
@@ -162,11 +162,11 @@ func (bt *BackTest) ExecuteStrategy(waitForOfflineCompletion bool) error {
go func() {
err = bt.Run()
if err != nil {
log.Error(common.Backtester, err)
log.Errorln(common.Backtester, err)
}
err = bt.Stop()
if err != nil {
log.Error(common.Backtester, err)
log.Errorln(common.Backtester, err)
}
}()
}
@@ -188,7 +188,7 @@ func (bt *BackTest) Run() error {
}
if doubleNil {
if bt.verbose {
log.Info(common.Backtester, "No new data on second check")
log.Infoln(common.Backtester, "No new data on second check")
}
return nil
}
@@ -237,7 +237,7 @@ func (bt *BackTest) Run() error {
doubleNil = false
err := bt.handleEvent(ev)
if err != nil {
log.Error(common.Backtester, err)
log.Errorln(common.Backtester, err)
}
if !bt.hasProcessedAnEvent {
bt.hasProcessedAnEvent = true
@@ -283,7 +283,7 @@ func (bt *BackTest) handleEvent(ev common.Event) error {
if err != nil {
return err
}
log.Info(common.LiveStrategy, result)
log.Infoln(common.LiveStrategy, result)
}
default:
err = fmt.Errorf("handleEvent %w %T received, could not process",
@@ -359,7 +359,7 @@ func (bt *BackTest) processSimultaneousDataEvents() error {
case errors.Is(err, gctorder.ErrPositionLiquidated):
return nil
default:
log.Error(common.Backtester, err)
log.Errorln(common.Backtester, err)
}
}
dataEvents = append(dataEvents, dataHolders[i])
@@ -524,7 +524,7 @@ func (bt *BackTest) processFillEvent(ev fill.Event, funds funding.IFundReleaser)
}
holding, err := bt.Portfolio.ViewHoldingAtTimePeriod(ev)
if err != nil {
log.Error(common.Backtester, err)
log.Errorln(common.Backtester, err)
}
err = bt.Statistic.AddHoldingsForTime(holding)
if err != nil {

View File

@@ -86,7 +86,7 @@ func StartRPCServer(server *GRPCServer) error {
go func() {
if err = s.Serve(lis); err != nil {
log.Error(log.GRPCSys, err)
log.Errorln(log.GRPCSys, err)
return
}
}()
@@ -133,7 +133,7 @@ func (s *GRPCServer) StartRPCRESTProxy() error {
}
}()
log.Debug(log.GRPCSys, "GRPC proxy server started!")
log.Debugln(log.GRPCSys, "GRPC proxy server started!")
return nil
}

View File

@@ -82,7 +82,7 @@ func (d *dataChecker) Start() error {
if err != nil {
stopErr := d.SignalStopFromError(err)
if stopErr != nil {
log.Error(common.LiveStrategy, stopErr)
log.Errorln(common.LiveStrategy, stopErr)
}
}
}()
@@ -118,7 +118,7 @@ func (d *dataChecker) SignalStopFromError(err error) error {
if !atomic.CompareAndSwapUint32(&d.started, 1, 0) {
return engine.ErrSubSystemNotStarted
}
log.Error(common.LiveStrategy, err)
log.Errorln(common.LiveStrategy, err)
d.shutdownErr <- true
return nil
}
@@ -399,7 +399,7 @@ func (d *dataChecker) FetchLatestData() (bool, error) {
err = d.UpdateFunding(false)
if err != nil {
if err != nil {
log.Error(common.LiveStrategy, err)
log.Errorln(common.LiveStrategy, err)
}
}
}

View File

@@ -783,7 +783,7 @@ func (bt *BackTest) loadData(cfg *config.Config, exch gctexchange.IBotExchange,
defer func() {
stopErr := bt.databaseManager.Stop()
if stopErr != nil {
log.Error(common.Setup, stopErr)
log.Errorln(common.Setup, stopErr)
}
}()
resp, err = loadDatabaseData(cfg, exch.GetName(), fPair, a, dataType, isUSDTrackingPair)