New Relic offers a Logback extension for log management, allowing you link to your log data with related data across the rest of the New Relic platform. This document explains how to configure logs in context and start getting log data. The code and an example application are available on GitHub.
Compatibility and requirements
To use New Relic logs in context with Logback, ensure your configuration meets the following requirements:
- Java agent 5.6.0 or higher: Install or update
- Logback 1.2.0 or higher installed and working on the application.
Configure logs in context with log management
To configure New Relic logs in context with Logback:
- Enable log management with a compatible log forwarding plugin.
- Install or update the Java agent.
- Configure the Logback extension.
- Check for logging data.
Enable log management
Confirm that you have log management enabled, with a compatible log forwarding plugin installed to send your application logs to New Relic.
Install or update the Java agent
Install or update to the most recent Java agent version, and enable Distributed tracing.
Configure the Logback extension
To configure logs in context with the Logback extension, complete the following steps:
Update your project's dependencies to include the Logback extension as applicable:
To update with Gradle, add the following to your
build.gradle
file:dependencies {compile("com.newrelic.logging:logback:2.0")}To update with Maven, add the following to your
pom.xml
file:<dependencies><dependency><groupId>com.newrelic.logging</groupId><artifactId>logback</artifactId><version>2.0</version></dependency></dependencies>
Update your logging configuration xml to replace any existing <encoder> element as shown below.
If you are logging to the console (stdout/stderr), look for
ConsoleAppender
and replace :<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><encoder class="com.newrelic.logging.logback.NewRelicEncoder"/></appender>If you are logging to a file, look for
FileAppender
and replace<encoder>
:<appender name="LOG_FILE" class="ch.qos.logback.core.FileAppender"><file>logs/app-log-file.log</file><encoder class="com.newrelic.logging.logback.NewRelicEncoder"/></appender>Update your logging configuration xml with the
NewRelicAsyncAppender
. To ensure thatNewRelicAsyncAppender
wraps any appenders that will target New Relic's log forwarder, add the following section. Change"LOG_FILE"
to the name of the appender you updated in the previous step.<appender name="ASYNC" class="com.newrelic.logging.logback.NewRelicAsyncAppender"><appender-ref ref="LOG_FILE" /></appender>Make sure
NewRelicAsyncAppender
is the appender used in your logger. Replace your root logger’s appenders with theASYNC
appender created in the previous step.<root><appender-ref ref="ASYNC" /></root>重要
It's important that the
NewRelicAsyncAppender
be the first appender to see the log message. List any other appenders after theNewRelicAsyncAppender
in the<root>
list.
Example configuration files
You can find a working example in GitHub.
Here are examples of an updated logging .xml file for the Logback extension.
Check for logging data
To verify that you have configured the extension correctly, run your application and verify that the logging you have configured contains the following:
- Includes
trace.id
andspan.id
fields - Is properly-formatted JSON lines
If everything is configured correctly and your data is being reported, you should see data logs in the New Relic Logs UI using the query operator has: span.id/trace.id
.
What's next?
Now that you've set up APM logs in context, here are some potential next steps:
- Explore your data using the Logs UI.
- Troubleshoot errors with distributed tracing, stack traces, application logs, and more.
- Query your data and create custom dashboards or alerts.
その他のヘルプ
さらに支援が必要な場合は、これらのサポートと学習リソースを確認してください:
- Explorers Hubでは、コミュニティからのサポートを受けたり、ディスカッションに参加したりすることができます。
- 当社サイトで答えを見つけて、サポートポータルの使用方法を確認してください。
- Linux、Windows、およびmacOS向けトラブルシューティングツールであるNew Relic Diagnosticsを実行してください。
- New Relicのデータセキュリティとライセンスドキュメント をご確認ください。