Skip to content

Commit 515f5c5

Browse files
DracFiendMGNimJay
andauthored
Use pino instead of console.log (GoogleCloudPlatform#2263)
* Updated Loggers To Use 'pino' Instead Of 'console.log' * Initialized pino * Created a separate file of logger for paymentservice * Resolving `header-check` Issue * Moved `logger.js` inside paymentservice and resolved `header-check` issue --------- Co-authored-by: Nim Jayawardena <[email protected]>
1 parent d1ce3ea commit 515f5c5

File tree

4 files changed

+48
-29
lines changed

4 files changed

+48
-29
lines changed

src/currencyservice/server.js

+15-15
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,22 @@
1414
* limitations under the License.
1515
*/
1616

17+
const pino = require('pino');
18+
const logger = pino({
19+
name: 'currencyservice-server',
20+
messageKey: 'message',
21+
formatters: {
22+
level (logLevelString, logLevelNum) {
23+
return { severity: logLevelString }
24+
}
25+
}
26+
});
27+
1728
if(process.env.DISABLE_PROFILER) {
18-
console.log("Profiler disabled.")
29+
logger.info("Profiler disabled.")
1930
}
2031
else {
21-
console.log("Profiler enabled.")
32+
logger.info("Profiler enabled.")
2233
require('@google-cloud/profiler').start({
2334
serviceContext: {
2435
service: 'currencyservice',
@@ -37,7 +48,7 @@ registerInstrumentations({
3748
});
3849

3950
if(process.env.ENABLE_TRACING == "1") {
40-
console.log("Tracing enabled.")
51+
logger.info("Tracing enabled.")
4152
const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
4253
const { SimpleSpanProcessor } = require('@opentelemetry/sdk-trace-base');
4354
const { OTLPTraceExporter } = require("@opentelemetry/exporter-otlp-grpc");
@@ -56,12 +67,11 @@ if(process.env.ENABLE_TRACING == "1") {
5667
provider.register();
5768
}
5869
else {
59-
console.log("Tracing disabled.")
70+
logger.info("Tracing disabled.")
6071
}
6172

6273
const path = require('path');
6374
const grpc = require('@grpc/grpc-js');
64-
const pino = require('pino');
6575
const protoLoader = require('@grpc/proto-loader');
6676

6777
const MAIN_PROTO_PATH = path.join(__dirname, './proto/demo.proto');
@@ -72,16 +82,6 @@ const PORT = process.env.PORT;
7282
const shopProto = _loadProto(MAIN_PROTO_PATH).hipstershop;
7383
const healthProto = _loadProto(HEALTH_PROTO_PATH).grpc.health.v1;
7484

75-
const logger = pino({
76-
name: 'currencyservice-server',
77-
messageKey: 'message',
78-
formatters: {
79-
level (logLevelString, logLevelNum) {
80-
return { severity: logLevelString }
81-
}
82-
}
83-
});
84-
8585
/**
8686
* Helper function that loads a protobuf file.
8787
*/

src/paymentservice/index.js

+5-4
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,13 @@
1616

1717
'use strict';
1818

19+
const logger = require('./logger')
1920

2021
if(process.env.DISABLE_PROFILER) {
21-
console.log("Profiler disabled.")
22+
logger.info("Profiler disabled.")
2223
}
2324
else {
24-
console.log("Profiler enabled.")
25+
logger.info("Profiler enabled.")
2526
require('@google-cloud/profiler').start({
2627
serviceContext: {
2728
service: 'paymentservice',
@@ -32,7 +33,7 @@ else {
3233

3334

3435
if(process.env.ENABLE_TRACING == "1") {
35-
console.log("Tracing enabled.")
36+
logger.info("Tracing enabled.")
3637
const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
3738
const { SimpleSpanProcessor } = require('@opentelemetry/sdk-trace-base');
3839
const { GrpcInstrumentation } = require('@opentelemetry/instrumentation-grpc');
@@ -57,7 +58,7 @@ if(process.env.ENABLE_TRACING == "1") {
5758
});
5859
}
5960
else {
60-
console.log("Tracing disabled.")
61+
logger.info("Tracing disabled.")
6162
}
6263

6364

src/paymentservice/logger.js

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
/*
2+
* Copyright 2023 Google LLC
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* https://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
const pino = require('pino');
18+
19+
module.exports = pino({
20+
name: 'paymentservice-server',
21+
messageKey: 'message',
22+
formatters: {
23+
level (logLevelString, logLevelNum) {
24+
return { severity: logLevelString }
25+
}
26+
}
27+
});

src/paymentservice/server.js

+1-10
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,11 @@
1414

1515
const path = require('path');
1616
const grpc = require('@grpc/grpc-js');
17-
const pino = require('pino');
1817
const protoLoader = require('@grpc/proto-loader');
1918

2019
const charge = require('./charge');
2120

22-
const logger = pino({
23-
name: 'paymentservice-server',
24-
messageKey: 'message',
25-
formatters: {
26-
level (logLevelString, logLevelNum) {
27-
return { severity: logLevelString }
28-
}
29-
}
30-
});
21+
const logger = require('./logger')
3122

3223
class HipsterShopServer {
3324
constructor(protoRoot, port = HipsterShopServer.PORT) {

0 commit comments

Comments
 (0)