Skip to content

Commit

Permalink
Introducing option to disable log coloring (#1595)
Browse files Browse the repository at this point in the history
NSM issue: #1594

Signed-off-by: Botond Szirtes <[email protected]>
bszirtes authored Mar 19, 2024

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
1 parent 3027f90 commit a9e38d9
Showing 4 changed files with 64 additions and 58 deletions.
18 changes: 10 additions & 8 deletions pkg/networkservice/core/trace/traceconcise/common_test.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
// Copyright (c) 2023 Cisco and/or its affiliates.
// Copyright (c) 2023-2024 Cisco and/or its affiliates.
//
// Copyright (c) 2024 Nordix Foundation.
//
// SPDX-License-Identifier: Apache-2.0
//
@@ -59,14 +61,14 @@ func TestOutput(t *testing.T) {
require.NotNil(t, e)

expectedOutput :=
"\x1b[36m [INFO] [id:conn-1] [type:networkService] \x1b[0mserver-request={\"connection\":" +
" [INFO] [id:conn-1] [type:networkService] server-request={\"connection\":" +
"{\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\":true}}},\"mechanism_preferences\":" +
"[{\"cls\":\"LOCAL\",\"type\":\"KERNEL\"},{\"cls\":\"LOCAL\",\"type\":\"KERNEL\",\"parameters\":{\"label\":\"v2\"}}]}" +
"\n\x1b[36m [INFO] [id:conn-1] [type:networkService] \x1b[0mserver-request-response={\"id\":\"conn-1\",\"context\":" +
"\n [INFO] [id:conn-1] [type:networkService] server-request-response={\"id\":\"conn-1\",\"context\":" +
"{\"ip_context\":{\"src_ip_required\":true}},\"labels\":{\"Label\":\"B\"}}" +
"\n\x1b[36m [INFO] [id:conn-1] [type:networkService] \x1b[0mserver-close={\"id\":\"conn-1\",\"context\":{\"ip_context\":" +
"\n [INFO] [id:conn-1] [type:networkService] server-close={\"id\":\"conn-1\",\"context\":{\"ip_context\":" +
"{\"src_ip_required\":true}},\"labels\":{\"Label\":\"D\"}}" +
"\n\x1b[36m [INFO] [id:conn-1] [type:networkService] \x1b[0mserver-close-response={\"id\":\"conn-1\",\"context\":" +
"\n [INFO] [id:conn-1] [type:networkService] server-close-response={\"id\":\"conn-1\",\"context\":" +
"{\"ip_context\":{\"src_ip_required\":true}},\"labels\":{\"Label\":\"X\"}}\n"

result := testutil.TrimLogTime(&buff)
@@ -99,12 +101,12 @@ func TestErrorOutput(t *testing.T) {
require.Nil(t, conn)

expectedOutput :=
"\x1b[36m [INFO] [id:conn-1] [type:networkService] \x1b[0mserver-request={\"connection\":" +
" [INFO] [id:conn-1] [type:networkService] server-request={\"connection\":" +
"{\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\":true}}},\"mechanism_preferences\":" +
"[{\"cls\":\"LOCAL\",\"type\":\"KERNEL\"},{\"cls\":\"LOCAL\",\"type\":\"KERNEL\",\"parameters\":{\"label\":\"v2\"}}]}\n" +
"\x1b[36m [INFO] [id:conn-1] [type:networkService] \x1b[0mserver-request-response={\"id\":\"conn-1\",\"context\":" +
" [INFO] [id:conn-1] [type:networkService] server-request-response={\"id\":\"conn-1\",\"context\":" +
"{\"ip_context\":{\"src_ip_required\":true}},\"labels\":{\"Label\":\"B\"}}\n" +
"\x1b[31m [ERRO] [id:conn-1] [type:networkService] \x1b[0mError returned from sdk/pkg/networkservice/core/trace/testutil/ErrorServer.Request:" +
" [ERRO] [id:conn-1] [type:networkService] Error returned from sdk/pkg/networkservice/core/trace/testutil/ErrorServer.Request:" +
" Error returned from api/pkg/api/networkservice/networkServiceClient.Close;" +
"\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*beginTraceClient).Close;" +
"\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:85;" +
60 changes: 31 additions & 29 deletions pkg/networkservice/core/trace/traceverbose/common_test.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) 2020-2023 Cisco Systems, Inc.
// Copyright (c) 2020-2024 Cisco Systems, Inc.
//
// Copyright (c) 2021-2023 Doc.ai and/or its affiliates.
// Copyright (c) 2021-2024 Doc.ai and/or its affiliates.
//
// Copyright (c) 2024 Nordix Foundation.
//
// SPDX-License-Identifier: Apache-2.0
//
@@ -129,28 +131,28 @@ func TestTraceOutput(t *testing.T) {
require.NotNil(t, e)

expectedOutput :=
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerFirstServer.Request()\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1.1) request={\"connection\":{\"id\":\"conn-1\",\"context\":" +
" [TRAC] [id:conn-1] [type:networkService] (1) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerFirstServer.Request()\n" +
" [TRAC] [id:conn-1] [type:networkService] (1.1) request={\"connection\":{\"id\":\"conn-1\",\"context\":" +
"{\"ip_context\":{\"src_ip_required\":true}}},\"mechanism_preferences\":[{\"cls\":\"LOCAL\"," +
"\"type\":\"KERNEL\"},{\"cls\":\"LOCAL\",\"type\":\"KERNEL\",\"parameters\":{\"label\"" +
":\"v2\"}}]}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1.2) request-diff={\"connection\":{\"labels\":{\"+Label\":\"A\"}}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerSecondServer.Request()\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2.1) request-diff={\"connection\":{\"labels\":{\"Label\":\"B\"}}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2.2) request-response={\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\":true}}," +
" [TRAC] [id:conn-1] [type:networkService] (1.2) request-diff={\"connection\":{\"labels\":{\"+Label\":\"A\"}}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (2) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerSecondServer.Request()\n" +
" [TRAC] [id:conn-1] [type:networkService] (2.1) request-diff={\"connection\":{\"labels\":{\"Label\":\"B\"}}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (2.2) request-response={\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\":true}}," +
"\"labels\":{\"Label\":\"B\"}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2.3) request-response-diff={\"labels\":{\"Label\":\"C\"}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1.3) request-response-diff={\"labels\":{\"Label\":\"D\"}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerFirstServer.Close()\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1.1) close={\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\":true}}," +
" [TRAC] [id:conn-1] [type:networkService] (2.3) request-response-diff={\"labels\":{\"Label\":\"C\"}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (1.3) request-response-diff={\"labels\":{\"Label\":\"D\"}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (1) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerFirstServer.Close()\n" +
" [TRAC] [id:conn-1] [type:networkService] (1.1) close={\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\":true}}," +
"\"labels\":{\"Label\":\"D\"}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1.2) close-diff={\"labels\":{\"Label\":\"W\"}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerSecondServer.Close()\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2.1) close-diff={\"labels\":{\"Label\":\"X\"}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2.2) close-response={\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\"" +
" [TRAC] [id:conn-1] [type:networkService] (1.2) close-diff={\"labels\":{\"Label\":\"W\"}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (2) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerSecondServer.Close()\n" +
" [TRAC] [id:conn-1] [type:networkService] (2.1) close-diff={\"labels\":{\"Label\":\"X\"}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (2.2) close-response={\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\"" +
":true}},\"labels\":{\"Label\":\"X\"}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2.3) close-response-diff={\"labels\":{\"Label\":\"Y\"}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1.3) close-response-diff={\"labels\":{\"Label\":\"Z\"}}\n"
" [TRAC] [id:conn-1] [type:networkService] (2.3) close-response-diff={\"labels\":{\"Label\":\"Y\"}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (1.3) close-response-diff={\"labels\":{\"Label\":\"Z\"}}\n"

result := testutil.TrimLogTime(&buff)
require.Equal(t, expectedOutput, result)
@@ -181,20 +183,20 @@ func TestErrorOutput(t *testing.T) {
require.Nil(t, conn)

expectedOutput :=
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerFirstServer.Request()\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1.1) request={\"connection\":{\"id\":\"conn-1\",\"context\":" +
" [TRAC] [id:conn-1] [type:networkService] (1) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerFirstServer.Request()\n" +
" [TRAC] [id:conn-1] [type:networkService] (1.1) request={\"connection\":{\"id\":\"conn-1\",\"context\":" +
"{\"ip_context\":{\"src_ip_required\":true}}},\"mechanism_preferences\":[{\"cls\":\"LOCAL\"," +
"\"type\":\"KERNEL\"},{\"cls\":\"LOCAL\",\"type\":\"KERNEL\",\"parameters\":{\"label\"" +
":\"v2\"}}]}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(1.2) request-diff={\"connection\":{\"labels\":{\"+Label\":\"A\"}}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerSecondServer.Request()\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2.1) request-diff={\"connection\":{\"labels\":{\"Label\":\"B\"}}}\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(3) ⎆ sdk/pkg/networkservice/core/trace/testutil/ErrorServer.Request()\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(3.1) request-response={\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\":true}},\"labels\":{\"Label\":\"B\"}}\n" +
"\x1b[31m [ERRO] [id:conn-1] [type:networkService] \x1b[0m(3.2) Error returned from api/pkg/api/networkservice/networkServiceClient.Close;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*beginTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:85;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*endTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:106;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\t\n" +
"\x1b[37m [TRAC] [id:conn-1] [type:networkService] \x1b[0m(2.2) request-response-diff={\"context\":{\"ip_context\":{\"src_ip_required\":false}},\"id\":\"\",\"labels\":{\"-Label\":\"B\"}}\n" +
"\x1b[31m [ERRO] [id:conn-1] [type:networkService] \x1b[0m(2.3) Error returned from api/pkg/api/networkservice/networkServiceClient.Close;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*beginTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:85;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*endTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:106;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\t\n" +
"\x1b[31m [ERRO] [id:conn-1] [type:networkService] \x1b[0m(1.3) Error returned from api/pkg/api/networkservice/networkServiceClient.Close;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*beginTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:85;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*endTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:106;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\t\n"
" [TRAC] [id:conn-1] [type:networkService] (1.2) request-diff={\"connection\":{\"labels\":{\"+Label\":\"A\"}}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (2) ⎆ sdk/pkg/networkservice/core/trace/testutil/LabelChangerSecondServer.Request()\n" +
" [TRAC] [id:conn-1] [type:networkService] (2.1) request-diff={\"connection\":{\"labels\":{\"Label\":\"B\"}}}\n" +
" [TRAC] [id:conn-1] [type:networkService] (3) ⎆ sdk/pkg/networkservice/core/trace/testutil/ErrorServer.Request()\n" +
" [TRAC] [id:conn-1] [type:networkService] (3.1) request-response={\"id\":\"conn-1\",\"context\":{\"ip_context\":{\"src_ip_required\":true}},\"labels\":{\"Label\":\"B\"}}\n" +
" [ERRO] [id:conn-1] [type:networkService] (3.2) Error returned from api/pkg/api/networkservice/networkServiceClient.Close;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*beginTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:85;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*endTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:106;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\t\n" +
" [TRAC] [id:conn-1] [type:networkService] (2.2) request-response-diff={\"context\":{\"ip_context\":{\"src_ip_required\":false}},\"id\":\"\",\"labels\":{\"-Label\":\"B\"}}\n" +
" [ERRO] [id:conn-1] [type:networkService] (2.3) Error returned from api/pkg/api/networkservice/networkServiceClient.Close;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*beginTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:85;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*endTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:106;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\t\n" +
" [ERRO] [id:conn-1] [type:networkService] (1.3) Error returned from api/pkg/api/networkservice/networkServiceClient.Close;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*beginTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:85;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/trace.(*endTraceClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/trace/client.go:106;\tgithub.aaakk.us.kg/networkservicemesh/sdk/pkg/networkservice/core/next.(*nextClient).Close;\t\t/root/go/pkg/mod/github.com/networkservicemesh/[email protected]/pkg/networkservice/core/next/client.go:65;\t\n"

result := testutil.TrimLogTime(&buff)
require.Equal(t, expectedOutput, result)
32 changes: 17 additions & 15 deletions pkg/registry/core/trace/traceconcise/traceconcise_test.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
// Copyright (c) 2023 Cisco and/or its affiliates.
// Copyright (c) 2023-2024 Cisco and/or its affiliates.
//
// Copyright (c) 2024 Nordix Foundation.
//
// SPDX-License-Identifier: Apache-2.0
//
@@ -73,14 +75,14 @@ func TestOutput(t *testing.T) {
require.NoError(t, err)

expectedOutput :=
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-register={\"name\":\"a\"}\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-register-response={\"name\":\"a\"}\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-find={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-send={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-send-response={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-find-response={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-unregister={\"name\":\"a\"}\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-unregister-response={\"name\":\"a\"}\n"
" [INFO] [type:registry] nse-server-register={\"name\":\"a\"}\n" +
" [INFO] [type:registry] nse-server-register-response={\"name\":\"a\"}\n" +
" [INFO] [type:registry] nse-server-find={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
" [INFO] [type:registry] nse-server-send={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
" [INFO] [type:registry] nse-server-send-response={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
" [INFO] [type:registry] nse-server-find-response={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
" [INFO] [type:registry] nse-server-unregister={\"name\":\"a\"}\n" +
" [INFO] [type:registry] nse-server-unregister-response={\"name\":\"a\"}\n"

result := testutil.TrimLogTime(&buff)
require.Equal(t, expectedOutput, result)
@@ -127,12 +129,12 @@ func TestErrorOutput(t *testing.T) {
require.Error(t, err)

expectedOutput :=
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-register={\"name\":\"a\"}\n" +
"\x1b[31m [ERRO] [type:registry] \x1b[0mError returned from sdk/pkg/registry/utils/inject/injecterror/injectErrorNSEServer.Register: test error\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-find={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
"\x1b[31m [ERRO] [type:registry] \x1b[0mError returned from sdk/pkg/registry/utils/inject/injecterror/injectErrorNSEServer.Find: test error\n" +
"\x1b[36m [INFO] [type:registry] \x1b[0mnse-server-unregister=null\n" +
"\x1b[31m [ERRO] [type:registry] \x1b[0mError returned from sdk/pkg/registry/utils/inject/injecterror/injectErrorNSEServer.Unregister: test error\n"
" [INFO] [type:registry] nse-server-register={\"name\":\"a\"}\n" +
" [ERRO] [type:registry] Error returned from sdk/pkg/registry/utils/inject/injecterror/injectErrorNSEServer.Register: test error\n" +
" [INFO] [type:registry] nse-server-find={\"network_service_endpoint\":{\"name\":\"a\"}}\n" +
" [ERRO] [type:registry] Error returned from sdk/pkg/registry/utils/inject/injecterror/injectErrorNSEServer.Find: test error\n" +
" [INFO] [type:registry] nse-server-unregister=null\n" +
" [ERRO] [type:registry] Error returned from sdk/pkg/registry/utils/inject/injecterror/injectErrorNSEServer.Unregister: test error\n"

result := testutil.TrimLogTime(&buff)
require.Equal(t, expectedOutput, result)
12 changes: 6 additions & 6 deletions pkg/tools/log/logruslogger/formatter.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
// Copyright (c) 2021 Doc.ai and/or its affiliates.
// Copyright (c) 2021-2024 Doc.ai and/or its affiliates.
//
// Copyright (c) 2024 Nordix Foundation.
//
// SPDX-License-Identifier: Apache-2.0
//
@@ -33,6 +35,7 @@ type formatter struct {
func newFormatter() *formatter {
f := formatter{}
f.nf.FieldsOrder = []string{"id", "name"}
f.nf.NoColors = true
return &f
}

@@ -52,11 +55,8 @@ func (f *formatter) Format(entry *logrus.Entry) ([]byte, error) {
// output buffer
bb := &bytes.Buffer{}

split := strings.SplitN(bytesString, "\x1b[0m", 2)
prefix := split[0] + "\x1b[0m"
split[1] = split[1][:len(split[1])-1] // remove trailing \n
bb.WriteString(prefix)
for _, line := range strings.Split(split[1], "\n") {
bytesString = bytesString[:len(bytesString)-1] // remove trailing \n
for _, line := range strings.Split(bytesString, "\n") {
bb.WriteString(line)
bb.WriteString(";\t")
}

0 comments on commit a9e38d9

Please sign in to comment.