Optional manual page load timing with Django

New Relic's Python agent can automatically add the JavaScript code instrumentation for browser monitoring to any HTML page responses. For most popular Python web frameworks, including Django, Flask, and Pyramid, use automatic instrumentation for page load timing (also referred to as real user monitoring or RUM).

If you need to use manual instrumentation for page load timing with Django templates, you can manually register and use the newrelic_tags tag library.

Add Django template tags

Follow this procedure only if you need to use manual instrumentation for page load timing instead of the Python agent's automatic instrumentation.

To make this template tag library available, you must manually add newrelic.extras.framework_django to the list of INSTALLED_APPS in your Django project settings files.

  1. At the top of the template file, add a reference to the tag library to the list of tag libraries being loaded by the load macro.

    {% load ... newrelic_tags %}
  2. Add the following as close to the start of the <head> element of the template page as possible. Place this after any meta tags specifying a charset property or any http-equiv meta tag for X-UA-Compatible.

    {% newrelic_browser_timing_header %}
  3. At the end of the <body> element of the template page, add:

    {% newrelic_browser_timing_footer %}

For more help

Additional documentation resources include:

Join the discussion about Python in the New Relic Online Technical Community! The Technical Community is a public platform to discuss and troubleshoot your New Relic toolset.

If you need additional help, get support at support.newrelic.com.