Skip to content

Commit 27c874c

Browse files
Deprecate get_browser_timing_footer API (#999)
* Add nonce to CSP in browser agent * Adjust nonce position * Add testing for browser timing nonces * Deprecated browser timing footer APIs. * Full rip out of browser timing footer * Remove cross agent tests for RUM footer (per repo) * Update cat_map tests * Adjust browser header generation timing accuracy * Fix browser tests * Linting * Apply suggestions from code review --------- Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
1 parent 1483f73 commit 27c874c

25 files changed

+1304
-1715
lines changed

newrelic/api/asgi_application.py

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -157,16 +157,9 @@ async def send_inject_browser_agent(self, message):
157157

158158
# if there's a valid body string, attempt to insert the HTML
159159
if verify_body_exists(self.body):
160-
header = self.transaction.browser_timing_header()
161-
if not header:
162-
# If there's no header, abort browser monitoring injection
163-
await self.send_buffered()
164-
return
165-
166-
footer = self.transaction.browser_timing_footer()
167-
browser_agent_data = six.b(header) + six.b(footer)
168-
169-
body = insert_html_snippet(self.body, lambda: browser_agent_data, self.search_maximum)
160+
body = insert_html_snippet(
161+
self.body, lambda: six.b(self.transaction.browser_timing_header()), self.search_maximum
162+
)
170163

171164
# If we have inserted the browser agent
172165
if len(body) != len(self.body):

newrelic/api/transaction.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ def __init__(self, application, enabled=None, source=None):
309309
self.synthetics_job_id = None
310310
self.synthetics_monitor_id = None
311311
self.synthetics_header = None
312-
312+
313313
# Synthetics Info Header
314314
self.synthetics_type = None
315315
self.synthetics_initiator = None
@@ -1912,9 +1912,10 @@ def get_browser_timing_header(nonce=None):
19121912

19131913

19141914
def get_browser_timing_footer(nonce=None):
1915-
transaction = current_transaction()
1916-
if transaction and hasattr(transaction, "browser_timing_footer"):
1917-
return transaction.browser_timing_footer(nonce)
1915+
warnings.warn(
1916+
"The get_browser_timing_footer function is deprecated. Please migrate to only using the get_browser_timing_header API instead.",
1917+
DeprecationWarning,
1918+
)
19181919
return ""
19191920

19201921

0 commit comments

Comments
 (0)