22
33const http = require ( 'http' ) ;
44const express = require ( 'express' ) ;
5+ const bunyan = require ( 'bunyan' ) ;
56const { S3Client, ListObjectsCommand } = require ( '@aws-sdk/client-s3' ) ;
67
78const PORT = parseInt ( process . env . SAMPLE_APP_PORT || '8080' , 10 ) ;
89
910const app = express ( ) ;
1011
12+ // Uses bunyan logger
13+ const logger = bunyan . createLogger ( { name : 'express-app' , level : 'info' } ) ;
14+
1115async function getRandomNumber ( min , max ) {
1216 return Math . floor ( Math . random ( ) * ( max - min ) + min ) ;
1317}
1418
19+ // Generate logs in your endpoints
1520app . get ( '/rolldice' , ( req , res ) => {
21+
1622 getRandomNumber ( 1 , 6 ) . then ( ( val ) => {
17- res . send ( `rolldice: ${ val . toString ( ) } ` ) ;
23+ const msg = `rolldice: ${ val . toString ( ) } `
24+ logger . info ( msg ) ;
25+ res . send ( msg ) ;
1826 } ) ;
1927} ) ;
2028
@@ -29,7 +37,9 @@ app.get('/http', (req, res) => {
2937 const httpRequest = http . request ( options , ( rs ) => {
3038 rs . setEncoding ( 'utf8' ) ;
3139 rs . on ( 'data' , ( result ) => {
32- res . send ( `random value from http request: ${ result } ` ) ;
40+ const msg = `random value from http request: ${ result } `
41+ logger . info ( msg ) ;
42+ res . send ( msg ) ;
3343 } ) ;
3444 rs . on ( 'error' , console . log ) ;
3545 } ) ;
@@ -45,14 +55,16 @@ app.get('/aws-sdk-s3', async (req, res) => {
4555 Bucket : bucketName ,
4656 } ) ,
4757 ) . then ( ( data ) => {
48- console . log ( data ) ;
58+ logger . info ( data ) ;
4959 } ) ;
5060 } catch ( e ) {
5161 if ( e instanceof Error ) {
52- console . error ( ' Exception thrown: ' , e . message ) ;
62+ logger . error ( ` Exception thrown: ${ e . message } ` ) ;
5363 }
5464 } finally {
55- res . send ( 'done aws sdk s3 request' ) ;
65+ const msg = 'done aws sdk s3 request'
66+ logger . info ( msg ) ;
67+ res . send ( msg ) ;
5668 }
5769} ) ;
5870
0 commit comments