Skip to content

Commit

Permalink
[amqphandler] Make trim logs depended on param
Browse files Browse the repository at this point in the history
Signed-off-by: Mykhailo Lohvynenko <[email protected]>
  • Loading branch information
mlohvynenko committed Sep 23, 2024
1 parent dda8147 commit ba2aa6a
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 12 deletions.
13 changes: 8 additions & 5 deletions amqphandler/amqphandler.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@ const (
type AmqpHandler struct { //nolint:stylecheck
sync.Mutex

trimDataLogs bool

// MessageChannel channel for amqp messages
MessageChannel chan Message

Expand Down Expand Up @@ -146,12 +148,13 @@ var (
**********************************************************************************************************************/

// New creates new amqp object.
func New() (*AmqpHandler, error) {
func New(trimDataLogs bool) (*AmqpHandler, error) {
log.Debug("New AMQP")

handler := &AmqpHandler{
sendChannel: make(chan cloudprotocol.Message, sendChannelSize),
pendingChannel: make(chan cloudprotocol.Message, 1),
trimDataLogs: trimDataLogs,
}

return handler, nil
Expand Down Expand Up @@ -776,8 +779,8 @@ func (handler *AmqpHandler) scheduleMessage(data interface{}, important bool) er
}
}

func getMessageDataForLog(message interface{}, data []byte) string {
if len(data) > maxLenLogMessage && !isMessageImportant(message) {
func (handler *AmqpHandler) getMessageDataForLog(message interface{}, data []byte) string {
if handler.trimDataLogs && len(data) > maxLenLogMessage && !isMessageImportant(message) {
return string(data[:maxLenLogMessage]) + "..."
}

Expand All @@ -793,9 +796,9 @@ func (handler *AmqpHandler) sendMessage(
}

if handler.sendTry > 1 {
log.WithField("data", getMessageDataForLog(message.Data, data)).Debug("AMQP retry message")
log.WithField("data", handler.getMessageDataForLog(message.Data, data)).Debug("AMQP retry message")
} else {
log.WithField("data", getMessageDataForLog(message.Data, data)).Debug("AMQP send message")
log.WithField("data", handler.getMessageDataForLog(message.Data, data)).Debug("AMQP send message")
}

if handler.sendTry++; handler.sendTry > sendMaxTry {
Expand Down
13 changes: 7 additions & 6 deletions amqphandler/amqphandler_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ const (
consumerName = "test_consumer"
exchangeName = "test_exchange"
systemID = "systemID"
trimDataLogs = true
)

const serviceDiscoveryURL = "http://:8010"
Expand Down Expand Up @@ -222,7 +223,7 @@ func TestReceiveMessages(t *testing.T) {
cryptoContext := &testCryptoContext{}
rootfs := "rootfs"

amqpHandler, err := amqphandler.New()
amqpHandler, err := amqphandler.New(trimDataLogs)
if err != nil {
t.Fatalf("Can't create amqp: %v", err)
}
Expand Down Expand Up @@ -398,7 +399,7 @@ func TestReceiveMessages(t *testing.T) {
func TestSendMessages(t *testing.T) {
cryptoContext := &testCryptoContext{}

amqpHandler, err := amqphandler.New()
amqpHandler, err := amqphandler.New(trimDataLogs)
if err != nil {
t.Fatalf("Can't create amqp: %v", err)
}
Expand Down Expand Up @@ -886,7 +887,7 @@ func TestSendMessages(t *testing.T) {
}

func TestConnectionEvents(t *testing.T) {
amqpHandler, err := amqphandler.New()
amqpHandler, err := amqphandler.New(trimDataLogs)
if err != nil {
t.Fatalf("Can't create amqp: %v", err)
}
Expand Down Expand Up @@ -931,7 +932,7 @@ func TestConnectionEvents(t *testing.T) {
}

func TestConnectionEventsError(t *testing.T) {
amqpHandler, err := amqphandler.New()
amqpHandler, err := amqphandler.New(trimDataLogs)
if err != nil {
t.Fatalf("Can't create amqp: %v", err)
}
Expand Down Expand Up @@ -963,7 +964,7 @@ func TestConnectionEventsError(t *testing.T) {
func TestSendMultipleMessages(t *testing.T) {
const numMessages = 1000

amqpHandler, err := amqphandler.New()
amqpHandler, err := amqphandler.New(trimDataLogs)
if err != nil {
t.Fatalf("Can't create amqp: %v", err)
}
Expand Down Expand Up @@ -1041,7 +1042,7 @@ func TestSendMultipleMessages(t *testing.T) {
func TestSendDisconnectMessages(t *testing.T) {
const sendQueueSize = 32

amqpHandler, err := amqphandler.New()
amqpHandler, err := amqphandler.New(trimDataLogs)
if err != nil {
t.Fatalf("Can't create amqp: %v", err)
}
Expand Down
2 changes: 1 addition & 1 deletion communicationmanager.go
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ func newCommunicationManager(cfg *config.Config) (cm *communicationManager, err
}
}

if cm.amqp, err = amqp.New(); err != nil {
if cm.amqp, err = amqp.New(cfg.TrimAMQPDataLogs); err != nil {
return cm, aoserrors.Wrap(err)
}

Expand Down

0 comments on commit ba2aa6a

Please sign in to comment.