cancel
Showing results for 
Search instead for 
Did you mean: 

Change Log Level of SAP CAP node.js Application

Former Member
0 Kudos

Is it possible to change the log level of a SAP CAP Application with environment variables?

View Entire Topic
david_kunz2
Advisor
Advisor

Hi kai.niklas86 ,

Yes, you can set the log levels. (Currently in beta)
You can set

cds.env["log-level"] = 'info' / 'error' / 'warning'

as well as the environment variable DEBUG to either 'y' or 'all' or a certain module (e.g. 'sqlite').

Best regards,
David

Former Member
0 Kudos

Does this answer refer to the build option --log-level? If yes, then this is not exactly what I am looking for. I am looking for a generic log level while running the application, so that not each and every GET request gets logged.

Further, I opt for setting the log level to WARNING or ERROR in NODE_ENV=production as default.

david_kunz2
Advisor
Advisor

Hi kai.niklas86 ,

Per default, we use `console.log` but you can plug whatever logger you want:

cds.log.Logger = (module, level, prefix) => {
  const logger = winston.createLogger(...)
  Object.assign(logger, {
    level,
    _trace: false,
    _debug: false,
    _info: false,
    _warn: true,
    _error: true
  })
  return logger
}

Here you can also define the log level.

Best regards,
David

0 Kudos

david.kunz2 do you have an example to set the loglevel via package.json or in javascript code?

david_kunz2
Advisor
Advisor

Hi ramondb ,

I think you need to use the environment variable DEBUG.

Best regards,
David

0 Kudos

ahh ok tnx