Privacy & Data Handling

This page describes what data Benzene's observability features (logging, tracing, health checks) capture by default and where you, as the application developer, control whether personally identifiable information (PII) or other sensitive data ends up in your logs/traces. This is not legal advice and does not constitute a GDPR compliance certification — Benzene is a library, not a data processor; whether your application is GDPR-compliant depends on what your handlers do with data, what you configure Benzene to capture, and your own organization's data-handling practices. This page exists to give you an accurate picture of Benzene's own behavior so you can make that assessment.

What Benzene captures automatically, with no configuration

Where you opt in to capturing more — and where the risk is

Everything below requires an explicit call in your own StartUp/pipeline configuration. None of it happens unless you write it.

Sampling and data retention

Tracing sampling (see Sampling Strategies) reduces how much trace data is exported, which indirectly reduces exposure if your spans ever did carry sensitive tags — but it's not a substitute for not capturing sensitive data in the first place, since sampled spans still contain whatever was tagged on them. Data retention (how long your tracing backend/log aggregator keeps data) is entirely a function of your backend's configuration, not something Benzene controls or has an opinion on.

Summary checklist