{"ref":"artifact:sap-e2e-trace","page":"/artifacts/sap-e2e-trace","json":"/artifacts/sap-e2e-trace.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"sap-e2e-trace","name":"@sap/e2e-trace","artifact_type":"package","ecosystem":"btp","domain":"operations-and-runtime","origin_ring":"sap-official","description":{"one_line":"SAP Passport handling for a Node.js component: it reads the identifiers a request arrives with, updates them for the next system, and writes a statistics record per request to standard output.","short":"SAP Passport handling for Node.js components","what_it_solves":"Following one business transaction across several SAP components means carrying an identifier through each of them, and in SAP's systems that identifier is the SAP Passport: a hex string in the `sap-passport` header holding a transactionID, rootContextID, connectionID and connectionCounter that every component is expected to write into its own logs and pass on. This package is the Node.js side of that. Its `Passport` parses the header, reads the four identifiers, updates the passport with the name of the current component and the connection it is about to open, compacts it for SAP HANA, which limits how large a passport may be, and serialises it back to a hex string for the next request; sent to SAP HANA it travels as the `SAP_PASSPORT` session variable rather than a header. `createDsrMiddleware` is the other half, a connect or express middleware placed first in the chain, which writes one Distributed Statistics Record as JSON on standard output for every request that arrives with a passport, carrying the URL, bytes received and sent, response time, transaction ID and user. Neither half starts a trace or ships one anywhere: the passport comes from the client, a browser plugin or a SAPUI5 frontend, the connection ID and counter are the caller's to supply, and the records go wherever the process's output goes."},"links":{"npm":"https://www.npmjs.com/package/@sap/e2e-trace"},"identity":{"license":"SAP Developer License Agreement 3.1"},"compat":{"runtimes":["node"]},"source_available":false,"provides":[{"capability":"capability:telemetry","what_it_does":"Carries request correlation through a Node.js component: the SAP Passport identifiers are read from the incoming header, updated for the next hop and forwarded, and a per-request Distributed Statistics Record is written to standard output.","sources":[{"url":"https://unpkg.com/@sap/e2e-trace@6.2.2/README.md","title":"@sap/e2e-trace 6.2.2 — README, SAP Passport","checked":"2026-09-18","quote":"SAP Passports allow to identify a specific request in an end-to-end scenario involving several components communicating with each other."},{"url":"https://unpkg.com/@sap/e2e-trace@6.2.2/README.md","title":"@sap/e2e-trace 6.2.2 — README, DSR records","checked":"2026-09-18","quote":"Distributed Statistics Records contain statistical information regarding an incoming request. The library writes every record on the standard output in a JSON format."}]}],"maintainers":["actor:sap"],"provenance":{"discovered_via":[{"source":"source:npm","channel":"npm:scope:@sap"},{"source":"source:discover"}],"first_seen":"2026-09-08"},"drafted_with_ai":true},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"good","evidence":"2 months since release"},{"label":"Continuity","tier":"fair","evidence":"2 publishers on npm"},{"label":"Repository","tier":"unknown","evidence":"no repository data"}],"compatibility":[{"label":"Declared for","tier":"unknown","evidence":"no BTP release lines in the atlas"},{"label":"Survived majors","tier":"unknown","evidence":"no BTP release lines in the atlas"},{"label":"Maintainer's CI","tier":"unknown","evidence":"no repository data"}],"practice":[{"label":"Tests","tier":"unknown","evidence":"npm test script, tree not read"},{"label":"Docs","tier":"good","evidence":"README 6 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":51651,"unit":"installs/week"},{"value":null,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","latest_version":"6.2.2","majors":{"1":{"version":"1.1.3","date":"2020-06-11"},"2":{"version":"2.1.0","date":"2020-06-11"},"3":{"version":"3.0.0","date":"2020-12-01"},"4":{"version":"4.0.0","date":"2023-09-20"},"5":{"version":"5.0.0","date":"2024-02-14"},"6":{"version":"6.0.0","date":"2025-07-31"}},"license":"SEE LICENSE IN LICENSE file","first_release":"2020-06-11","last_release":"2026-08-12","releases":21,"cadence_days":112,"maintainers":2,"repository":null,"repository_directory":null,"peer_cds":null,"dependencies":1,"node_engine":"^20.0.0 || ^22.0.0 || ^24.0.0","test_script":true,"types":false,"downloads_weekly":51651,"downloads_monthly":339595,"npm_document_version":"6.2.2","npm_document_integrity":"sha512-R3ALhBJIgV5wKqUDNDIojre+zcpIp7kd0PbO9zPcWX47CnIcM3kJKHpFGswOEBPhcjVvLPsEIZZpvTMyfwGIsw==","npm_document_tarball":"https://registry.npmjs.org/@sap/e2e-trace/-/e2e-trace-6.2.2.tgz","readme_path":"README.md","readme_bytes":5912,"readme_source":"npm","changelog":false,"license_file":true,"license_path":"LICENSE","license_name":"SAP DEVELOPER LICENSE AGREEMENT 3.1","months_since_release":2,"dormant":false},"release_notes":{"license":"SAP DEVELOPER LICENSE AGREEMENT 3.1","quotable":false,"versions":[{"version":"6.2.2","date":"2026-08-12"},{"version":"6.2.1","date":"2026-04-06"},{"version":"6.1.0","date":"2026-01-29"},{"version":"6.0.0","date":"2025-07-31"},{"version":"5.4.0","date":"2025-03-05"},{"version":"5.3.0","date":"2024-11-06"},{"version":"5.2.0","date":"2024-07-17"},{"version":"5.1.0","date":"2024-03-27"},{"version":"5.0.0","date":"2024-02-14"},{"version":"4.1.0","date":"2023-11-15"},{"version":"4.0.0","date":"2023-09-20"},{"version":"3.2.0","date":"2022-10-31"},{"version":"3.1.0","date":"2022-01-27"},{"version":"3.0.0","date":"2020-12-01"},{"version":"2.1.0","date":"2020-06-11"},{"version":"2.0.0","date":"2020-06-11"},{"version":"1.4.1","date":"2020-06-11"},{"version":"1.3.0","date":"2020-06-11"},{"version":"1.2.0","date":"2020-06-11"},{"version":"1.1.3","date":"2020-06-11"},{"version":"1.1.2","date":"2020-06-11"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:sap","name":"SAP","json":"/actors/sap.json"}],"contributors":[],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}