When troubleshooting your Infrastructure agent, you need to generate
verbose logs for a few minutes to find and investigate errors. This can be useful for your own troubleshooting or when working with New Relic Support.
Verbose logging generates a lot of data very quickly. When finished generating logs, be sure to set
verbose: 0 to reduce disk space consumption.
verbose log files requires editing your configuration file. For a sample config file that includes all applicable settings, see the example template. To generate detailed logs:
|2.||Let your host run at normal load for about three minutes to generate sufficient logging data.|
Return your settings to default:
Examine the log file for errors.
If you need to send your log file to New Relic Support:
Smart verbose mode
Sometimes errors don't occur until after quite some time has passed. This makes debugging difficult, because typically verbose logs are only enabled for a short period time; otherwise there will be many debug logs. For example, if an error occurs one hour after the Infrastructure agent has started, getting debug logs around the time of the error can be tricky or impractical.
As of Infrastructure agent v1.9.0 or higher, you can use smart verbose mode for logs. Smart verbose mode only logs the most recent debug messages after an error has been logged. This allows you to leave smart verbose mode running until an error occurs, without logging lots of irrelevant debug messages, and only logging the most recent debug messages. (The number of messages is determined by your configuration.)
For more information on smart verbose mode, see the Infrastructure agent logging behavior documentation, and use the Infrastructure configuration settings documentation for details on how to enable smart verbose mode.
Notes for specific systems
These are some additional notes and requirements for specific systems, used to supplement the general logging instructions:
- Containerized agent on CoreOS
If you are using a containerized Infrastructure agent on CoreOS:
Choose one of these options to change the log level to verbose:
Recommended: Set the environment variable
1. Running this on the command line would look like:
Edit the config file to set
verbose: 1. (Editing the config file in a container is not recommended, because it requires rebuilding the image twice: once to add verbose logging and once to remove it.)
journalctlto collect the logs:
journalctl -u newrelic-infra > newrelic-infra.log
- Set the verbose logging level back to
0after collecting logs for a few minutes.