Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/component-label-map.yml
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,10 @@ pkg:propagator-aws-xray-lambda:
- changed-files:
- any-glob-to-any-file:
- packages/propagator-aws-xray-lambda/**
pkg:instrumentation-browser-navigation:
- changed-files:
- any-glob-to-any-file:
- packages/instrumentation-browser-navigation/**
pkg-status:unmaintained:
- changed-files:
- any-glob-to-any-file:
Expand Down
4 changes: 3 additions & 1 deletion .github/component_owners.yml
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,9 @@ components:
- obecny
packages/plugin-react-load:
- martinkuba
packages/instrumentation-browser-navigation:
- Abinet18
- martinkuba
packages/propagator-instana:
- kirrg001
packages/propagator-ot-trace: []
Expand All @@ -166,6 +169,5 @@ components:
- jj22ee
packages/propagator-aws-xray-lambda: [ ]
# Unmaintained

ignored-authors:
- renovate-bot
3 changes: 2 additions & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -66,5 +66,6 @@
"packages/propagator-instana": "0.4.3",
"packages/propagator-ot-trace": "0.28.3",
"packages/propagator-aws-xray": "2.1.3",
"packages/propagator-aws-xray-lambda": "0.55.3"
"packages/propagator-aws-xray-lambda": "0.55.3",
"packages/instrumentation-browser-navigation": "0.39.0"
}
8 changes: 8 additions & 0 deletions examples/web/examples/document-load/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,14 @@
<script type="text/javascript" src="document-load.js"></script>
<br/>
<button id="button1">Test WebTracer with ZoneContextManager - async</button>
<nav>
<a href="document-load/route1" data-link>Route 1</a>
<a href="document-load/route2" data-link>Route 2</a>
</nav>

<div id="content">
<!-- Content will be loaded here -->
</div>

</body>

Expand Down
140 changes: 140 additions & 0 deletions examples/web/examples/navigation/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<title>Browser Navigation Instrumentation Example</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>

<body>
<h1>🧭 Browser Navigation Instrumentation Example</h1>
<p>This example demonstrates the <strong>Browser Navigation Instrumentation</strong> package with enhanced Navigation API support, custom log record data, and comprehensive event tracking.</p>

<div class="info-panel">
<h3>📊 Features Demonstrated:</h3>
<ul>
<li>✅ <strong>Navigation API Support:</strong> Modern browser navigation events</li>
<li>✅ <strong>History API Tracking:</strong> pushState, replaceState, popstate events</li>
<li>✅ <strong>Hash Change Detection:</strong> Fragment navigation tracking</li>
<li>✅ <strong>Custom Log Attributes:</strong> Custom attribute injection</li>
<li>✅ <strong>URL Sanitization:</strong> Automatic credential and sensitive data redaction</li>
<li>✅ <strong>Same-Document Navigation:</strong> SPA-style navigation detection</li>
</ul>
</div>

<script type="text/javascript" src="/navigation.js"></script>
<nav>
<a href="/navigation/route1" data-link>Route 1</a>
<a href="/navigation/route2" data-link>Route 2</a>
<button id="hashChangeBtn">Test Hash Change</button>
<button id="backBtn">Go Back</button>
<button id="navApiHashBtn">Nav API: Hash</button>
</nav>

<div id="content">
<!-- Content will be loaded here -->
</div>

<div id="hash-content">
<!-- Hash content will be displayed here -->
</div>

<div id="nav-api-content">
<!-- Navigation API content will be displayed here -->
</div>

<style>
.nav-result {
margin: 10px 0;
padding: 15px;
border-radius: 8px;
border-left: 4px solid #007acc;
background-color: #f8f9fa;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
.nav-result.error {
border-left-color: #dc3545;
background-color: #f8d7da;
}
.nav-result.fallback {
border-left-color: #ffc107;
background-color: #fff3cd;
}
.nav-result h4 {
margin: 0 0 10px 0;
color: #333;
}
.nav-result code {
background-color: #e9ecef;
padding: 2px 6px;
border-radius: 4px;
font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
}
.nav-result ul {
margin: 10px 0;
padding-left: 20px;
}
.nav-result li {
margin: 5px 0;
}
.console-note {
font-style: italic;
color: #6c757d;
margin-top: 10px;
}
.info-panel {
margin: 20px 0;
padding: 15px;
background-color: #e8f4fd;
border-radius: 8px;
border-left: 4px solid #007acc;
}
.info-panel h3 {
margin-top: 0;
color: #007acc;
}
.info-panel ul {
margin: 10px 0;
padding-left: 20px;
}
.info-panel li {
margin: 8px 0;
}
nav {
margin: 20px 0;
padding: 15px;
background-color: #f1f3f4;
border-radius: 8px;
}
nav a, nav button {
margin: 5px 10px 5px 0;
padding: 8px 16px;
text-decoration: none;
background-color: #007acc;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 14px;
}
nav a:hover, nav button:hover {
background-color: #005a9e;
}
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
line-height: 1.6;
margin: 20px;
color: #333;
}
h1 {
color: #007acc;
border-bottom: 2px solid #007acc;
padding-bottom: 10px;
}
</style>

</body>

</html>
Loading
Loading