Loading...
Loading...
Setup Sentry Tracing (Performance Monitoring) in any project. Use when asked to enable tracing, track transactions/spans, measure latency, or add performance monitoring. Supports JavaScript, Python, and Ruby.
npx skill4agent add getsentry/sentry-agent-skills sentry-setup-tracingtracesSampleRate| Platform | Enable | Custom Span |
|---|---|---|
| JS/Browser | | |
| Next.js | | |
| Node.js | | |
| Python | | |
| Ruby | | |
Sentry.init({
dsn: "YOUR_DSN",
tracesSampleRate: 1.0, // 1.0 = 100%, lower for production
integrations: [Sentry.browserTracingIntegration()], // Browser/React only
tracePropagationTargets: ["localhost", /^https:\/\/api\./],
});// Async operation
const result = await Sentry.startSpan(
{ name: "fetch-user", op: "http.client" },
async () => {
return await fetch("/api/user").then(r => r.json());
}
);
// Nested spans
await Sentry.startSpan({ name: "checkout", op: "transaction" }, async () => {
await Sentry.startSpan({ name: "validate", op: "validation" }, validateCart);
await Sentry.startSpan({ name: "payment", op: "payment" }, processPayment);
});tracesSampler: ({ name, parentSampled }) => {
if (name.includes("healthcheck")) return 0;
if (name.includes("checkout")) return 1.0;
if (parentSampled !== undefined) return parentSampled;
return 0.1;
},sentry_sdk.init(
dsn="YOUR_DSN",
traces_sample_rate=1.0,
)# Decorator
@sentry_sdk.trace
def expensive_function():
return do_work()
# Context manager
with sentry_sdk.start_span(name="process-order", op="task") as span:
span.set_data("order.id", order_id)
process(order_id)def traces_sampler(ctx):
name = ctx.get("transaction_context", {}).get("name", "")
if "healthcheck" in name: return 0
if "checkout" in name: return 1.0
return 0.1
sentry_sdk.init(dsn="YOUR_DSN", traces_sampler=traces_sampler)Sentry.init do |config|
config.dsn = "YOUR_DSN"
config.traces_sample_rate = 1.0
end | Use Case |
|---|---|
| Outgoing HTTP |
| Incoming HTTP |
| Database |
| Cache operations |
| Background jobs |
| Function calls |
| Traffic | Rate |
|---|---|
| Development | |
| Low (<1K req/min) | |
| Medium (1K-10K) | |
| High (>10K) | |
tracePropagationTargetstracePropagationTargets: ["localhost", "https://api.yourapp.com"],export async function generateMetadata() {
return { other: { ...Sentry.getTraceData() } };
}| Issue | Solution |
|---|---|
| Transactions not appearing | Check |
| Browser traces missing | Add |
| Distributed traces disconnected | Check |
| Too many transactions | Lower sample rate, use |