mirror of
https://github.com/postmannen/ctrl.git
synced 2024-12-14 12:37:31 +00:00
del console output, add flag for block profiling
This commit is contained in:
parent
31ce2e978c
commit
0d0cd8c0b6
4 changed files with 18 additions and 3 deletions
|
@ -5,6 +5,7 @@ import (
|
|||
"net/http"
|
||||
"os"
|
||||
"os/signal"
|
||||
"runtime"
|
||||
"time"
|
||||
|
||||
_ "net/http/pprof"
|
||||
|
@ -38,6 +39,10 @@ func main() {
|
|||
|
||||
}
|
||||
|
||||
if c.SetBlockProfileRate != 0 {
|
||||
runtime.SetBlockProfileRate(1)
|
||||
}
|
||||
|
||||
s, err := steward.NewServer(c, version)
|
||||
if err != nil {
|
||||
log.Printf("%v\n", err)
|
||||
|
|
|
@ -69,6 +69,8 @@ type Configuration struct {
|
|||
Compression string
|
||||
// Serialization
|
||||
Serialization string
|
||||
// SetBlockProfileRate for block profiling
|
||||
SetBlockProfileRate int
|
||||
|
||||
// NOTE:
|
||||
// Op commands will not be specified as a flag since they can't be turned off.
|
||||
|
@ -137,6 +139,7 @@ type ConfigurationFromFile struct {
|
|||
ErrorMessageRetries *int
|
||||
Compression *string
|
||||
Serialization *string
|
||||
SetBlockProfileRate *int
|
||||
|
||||
StartPubREQHello *int
|
||||
StartSubREQErrorLog *bool
|
||||
|
@ -190,6 +193,7 @@ func newConfigurationDefaults() Configuration {
|
|||
ErrorMessageRetries: 10,
|
||||
Compression: "",
|
||||
Serialization: "",
|
||||
SetBlockProfileRate: 0,
|
||||
|
||||
StartSubREQErrorLog: true,
|
||||
StartSubREQHello: true,
|
||||
|
@ -345,6 +349,11 @@ func checkConfigValues(cf ConfigurationFromFile) Configuration {
|
|||
} else {
|
||||
conf.Serialization = *cf.Serialization
|
||||
}
|
||||
if cf.SetBlockProfileRate == nil {
|
||||
conf.SetBlockProfileRate = cd.SetBlockProfileRate
|
||||
} else {
|
||||
conf.SetBlockProfileRate = *cf.SetBlockProfileRate
|
||||
}
|
||||
|
||||
if cf.StartPubREQHello == nil {
|
||||
conf.StartPubREQHello = cd.StartPubREQHello
|
||||
|
@ -479,6 +488,7 @@ func (c *Configuration) CheckFlags() error {
|
|||
flag.IntVar(&c.ErrorMessageRetries, "errorMessageRetries", fc.ErrorMessageRetries, "The number of if times to retry an error message before we drop it")
|
||||
flag.StringVar(&c.Compression, "compression", fc.Compression, "compression method to use. defaults to no compression, z = zstd. Undefined value will default to no compression")
|
||||
flag.StringVar(&c.Serialization, "serialization", fc.Serialization, "Serialization method to use. defaults to gob, other values are = cbor. Undefined value will default to gob")
|
||||
flag.IntVar(&c.SetBlockProfileRate, "setBlockProfileRate", fc.SetBlockProfileRate, "Enable block profiling by setting the value to f.ex. 1. 0 = disabled")
|
||||
|
||||
flag.IntVar(&c.StartPubREQHello, "startPubREQHello", fc.StartPubREQHello, "Make the current node send hello messages to central at given interval in seconds")
|
||||
|
||||
|
|
|
@ -258,7 +258,7 @@ func (p process) messageDeliverNats(natsMsgPayload []byte, natsMsgHeader nats.He
|
|||
// Wait up until ACKTimeout specified for a reply,
|
||||
// continue and resend if no reply received,
|
||||
// or exit if max retries for the message reached.
|
||||
msgReply, err := subReply.NextMsg(time.Second * time.Duration(message.ACKTimeout))
|
||||
_, err := subReply.NextMsg(time.Second * time.Duration(message.ACKTimeout))
|
||||
if err != nil {
|
||||
er := fmt.Errorf("error: ack receive failed: subject=%v: %v", p.subject.name(), err)
|
||||
// sendErrorLogMessage(p.toRingbufferCh, p.node, er)
|
||||
|
@ -296,7 +296,7 @@ func (p process) messageDeliverNats(natsMsgPayload []byte, natsMsgHeader nats.He
|
|||
continue
|
||||
}
|
||||
}
|
||||
log.Printf("<--- publisher: received ACK from:%v, for: %v, data: %s\n", message.ToNode, message.Method, msgReply.Data)
|
||||
// REMOVED: log.Printf("<--- publisher: received ACK from:%v, for: %v, data: %s\n", message.ToNode, message.Method, msgReply.Data)
|
||||
}
|
||||
|
||||
subReply.Unsubscribe()
|
||||
|
|
|
@ -281,7 +281,7 @@ func (r *ringBuffer) processBufferMessages(ctx context.Context, outCh chan samDB
|
|||
// been processed, and that we then can delete it out of the K/V Store.
|
||||
|
||||
<-v.Data.done
|
||||
log.Printf("info: processBufferMessages: done with message, deleting key from bucket, %v\n", v.ID)
|
||||
// log.Printf("info: processBufferMessages: done with message, deleting key from bucket, %v\n", v.ID)
|
||||
r.metrics.promMessagesProcessedIDLast.Set(float64(v.ID))
|
||||
|
||||
// Since we are now done with the specific message we can delete
|
||||
|
|
Loading…
Reference in a new issue