Configuration
The setup command generates a config class and metadata record for you. This page explains what was generated, what you can customize, and which integrations are available in ISV mode.
The generated config class
After running setup, you'll find a class like this in your project:
public with sharing class MySentryConfig extends SentryConfig {
public override List<ISentryIntegration> getIntegrations() {
return new List<ISentryIntegration>{
new SentryISVContextIntegration(),
new SentryUserIntegration(),
new SentryStacktraceIntegration(),
new SentryFlowFaultIntegration(),
new SentryLWCErrorIntegration()
};
}
}Notice there is no sentrysdk. namespace prefix — the vendored classes live in your package's namespace. The class name is up to you; whatever you set during setup is recorded in the Sentry_Config__mdt metadata record.
Available integrations
ISV mode ships with a different integration set than the end-user package.
| Integration | Available in ISV mode | Notes |
|---|---|---|
SentryISVContextIntegration | ✅ ISV only | Attaches customer org identity to every event |
SentryUserIntegration | ✅ | Same as end-user |
SentryStacktraceIntegration | ✅ | Same as end-user |
SentryFlowFaultIntegration | ✅ | Same as end-user |
SentryLWCErrorIntegration | ✅ | Same as end-user |
SentryDebugLogsIntegration | ❌ | End-user package only — not available in ISV mode |
DSN and metadata record
Your DSN lives in the Sentry_Config__mdt custom metadata record generated by setup. It is baked into your package — customers never see or touch it. To change the DSN, update the record and cut a new package version.
