# Sentry: profiling enabled but no profiles arrive

## The symptom

`nodeProfilingIntegration` (or the Python/Ruby equivalent) is configured, the profile sample rate is 1.0, and still no profiles appear.

## The cause

Profile sampling is relative to trace sampling. Profiles are collected while there is an active sampled span, so:

- `traces_sample_rate = 0` or unset means no spans are sampled, which means no profiles, regardless of the profile rate.
- In Rails the docs state it outright: `profiles_sample_rate` is a percentage relative to `traces_sample_rate`.
- In Python, `profile_lifecycle = "trace"` collects profiles while there is an active span; with continuous profiling, `profile_session_sample_rate` gates the sessions.

A profile rate of 1.0 with a trace rate of 0.05 yields profiles for ~5% of requests, not 100%.

## Confirmation

Check whether transactions/spans are arriving at all. If the transaction volume is zero or tiny, the trace rate is the bottleneck. If spans arrive but profiles do not, the profiling integration is missing or misconfigured (Node: `@sentry/profiling-node` not installed; Python: `sentry-sdk` without the profiling extras path).

## Fix

1. Set a nonzero trace sample rate first.
2. Confirm the profiling integration is in the `integrations` list (Node) or the equivalent option (Python/Ruby).
3. Raise the trace rate if profile volume is too thin; the profile rate multiplies it, it does not override it.

## Verify

Trigger a sampled request and confirm a profile attaches to the transaction. Profiles also consume quota as their own category, so watch the profiles usage after enabling.