# getsentry/sentry architecture

> Architecture diagram of the GitHub repository getsentry/sentry, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-10-05). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/getsentry/sentry
- Repository: https://github.com/getsentry/sentry

## Overview

Sentry is a developer debugging and observability platform: teams use SDKs and the product to detect, trace, and fix software issues. Its principal workflow spans event intake, issue investigation, and analysis of traces, logs, and replays; additional branches cover alerts, integrations, AI monitoring, and operational metrics. The README documents these capabilities, while sampled source confirms selected implementation links. Several product areas are represented by their documented subsystem paths because their source was not sampled; uncertain connections are omitted or marked unverified.

Main entry points: [`src/sentry/utils/metrics.py`](https://github.com/getsentry/sentry/blob/master/src/sentry/utils/metrics.py) (Metrics API), [`src/sentry`](https://github.com/getsentry/sentry/tree/master/src/sentry) (Sentry platform), [`src/sentry/event_manager.py`](https://github.com/getsentry/sentry/blob/master/src/sentry/event_manager.py) (Event processing), [`src/sentry/api/endpoints/organization_events.py`](https://github.com/getsentry/sentry/blob/master/src/sentry/api/endpoints/organization_events.py) (Event queries)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_intake["Intake and tenancy"]
  node_sentry["Sentry platform"]
  node_eventmanager["Event processing<br/>[event_manager.py]"]
  node_organization[("Organizations<br/>[organization.py]")]
  node_project[("Projects<br/>[project.py]")]
end

subgraph group_investigate["Issue investigation"]
  node_issueapi["Issue APIs"]
  node_eventquery["Event queries"]
  node_queryutils["Snuba utilities<br/>[snuba.py]"]
end

subgraph group_observe["Observability"]
  node_seerindex["Context indexing"]
  node_contextqueries["Context queries"]
  node_aimonitor["AI monitoring"]
  node_replays[("Replay storage<br/>[storage.py]")]
end

subgraph group_automation["Automation and integrations"]
  node_workflow["Alert conditions"]
  node_integrations["Integrations<br/>[base.py]"]
  node_integrationflow["Install flow<br/>[pipeline.py]"]
  node_identity["Identity flow<br/>[pipeline.py]"]
end

subgraph group_platform["Platform services"]
  node_metrics["Metrics API<br/>[metrics.py]"]
  node_sdkmetrics["SDK metrics backend<br/>[sentry_sdk.py]"]
  node_logmetrics["Logging metrics backend<br/>[logging.py]"]
  node_features["Feature flags<br/>[__init__.py]"]
end

node_developers(("Developers"))
node_sdk(("Official SDKs"))

node_developers -.->|"instrument apps"| node_sdk
node_sdk -.->|"send telemetry"| node_sentry
node_sentry -.->|"process events"| node_eventmanager
node_eventmanager -.->|"associate project"| node_project
node_developers -.->|"investigate issues"| node_issueapi
node_developers -.->|"explore events"| node_eventquery
node_eventquery -.->|"query data"| node_queryutils
node_developers -.->|"configure alerts"| node_workflow
node_developers -.->|"connect services"| node_integrations
node_integrationflow -->|"uses provider"| node_integrations
node_developers -.->|"authenticate"| node_identity
node_seerindex -->|"uses queries"| node_contextqueries
node_developers -.->|"inspect AI activity"| node_aimonitor
node_developers -.->|"inspect replays"| node_replays
node_metrics -.->|"records metrics"| node_sdkmetrics
node_metrics -.->|"records metrics"| node_logmetrics
node_features -->|"gates setup"| node_integrationflow
node_organization -.->|"owns projects"| node_project

click node_sentry "https://github.com/getsentry/sentry/tree/master/src/sentry"
click node_eventmanager "https://github.com/getsentry/sentry/blob/master/src/sentry/event_manager.py"
click node_organization "https://github.com/getsentry/sentry/blob/master/src/sentry/models/organization.py"
click node_project "https://github.com/getsentry/sentry/blob/master/src/sentry/models/project.py"
click node_issueapi "https://github.com/getsentry/sentry/tree/master/src/sentry/api/endpoints"
click node_eventquery "https://github.com/getsentry/sentry/blob/master/src/sentry/api/endpoints/organization_events.py"
click node_queryutils "https://github.com/getsentry/sentry/blob/master/src/sentry/utils/snuba.py"
click node_workflow "https://github.com/getsentry/sentry/blob/master/src/sentry/workflow_engine/handlers/condition/event_frequency_query_handlers.py"
click node_integrations "https://github.com/getsentry/sentry/blob/master/src/sentry/integrations/base.py"
click node_integrationflow "https://github.com/getsentry/sentry/blob/master/src/sentry/integrations/pipeline.py"
click node_identity "https://github.com/getsentry/sentry/blob/master/src/sentry/identity/pipeline.py"
click node_seerindex "https://github.com/getsentry/sentry/blob/master/src/sentry/tasks/seer/context_engine_index.py"
click node_contextqueries "https://github.com/getsentry/sentry/blob/master/src/sentry/seer/agent/context_engine_utils.py"
click node_aimonitor "https://github.com/getsentry/sentry/tree/master/src/sentry/ai_monitoring"
click node_replays "https://github.com/getsentry/sentry/blob/master/src/sentry/replays/lib/storage.py"
click node_metrics "https://github.com/getsentry/sentry/blob/master/src/sentry/utils/metrics.py"
click node_sdkmetrics "https://github.com/getsentry/sentry/blob/master/src/sentry/metrics/sentry_sdk.py"
click node_logmetrics "https://github.com/getsentry/sentry/blob/master/src/sentry/metrics/logging.py"
click node_features "https://github.com/getsentry/sentry/blob/master/src/sentry/features/__init__.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_sentry,node_eventmanager,node_organization,node_project toneBlue
class node_issueapi,node_eventquery,node_queryutils toneAmber
class node_seerindex,node_contextqueries,node_aimonitor,node_replays toneMint
class node_workflow,node_integrations,node_integrationflow,node_identity toneRose
class node_metrics,node_sdkmetrics,node_logmetrics,node_features,node_developers,node_sdk toneIndigo
```

## Components

### Intake and tenancy

- [Sentry platform](https://github.com/getsentry/sentry/tree/master/src/sentry): `src/sentry`
- [Event processing](https://github.com/getsentry/sentry/blob/master/src/sentry/event_manager.py): `src/sentry/event_manager.py`
- [Organizations](https://github.com/getsentry/sentry/blob/master/src/sentry/models/organization.py): `src/sentry/models/organization.py`
- [Projects](https://github.com/getsentry/sentry/blob/master/src/sentry/models/project.py): `src/sentry/models/project.py`

### Issue investigation

- [Issue APIs](https://github.com/getsentry/sentry/tree/master/src/sentry/api/endpoints): `src/sentry/api/endpoints`
- [Event queries](https://github.com/getsentry/sentry/blob/master/src/sentry/api/endpoints/organization_events.py): `src/sentry/api/endpoints/organization_events.py`
- [Snuba utilities](https://github.com/getsentry/sentry/blob/master/src/sentry/utils/snuba.py): `src/sentry/utils/snuba.py`

### Observability

- [Context indexing](https://github.com/getsentry/sentry/blob/master/src/sentry/tasks/seer/context_engine_index.py): `src/sentry/tasks/seer/context_engine_index.py`
- [Context queries](https://github.com/getsentry/sentry/blob/master/src/sentry/seer/agent/context_engine_utils.py): `src/sentry/seer/agent/context_engine_utils.py`
- [AI monitoring](https://github.com/getsentry/sentry/tree/master/src/sentry/ai_monitoring): `src/sentry/ai_monitoring`
- [Replay storage](https://github.com/getsentry/sentry/blob/master/src/sentry/replays/lib/storage.py): `src/sentry/replays/lib/storage.py`

### Automation and integrations

- [Alert conditions](https://github.com/getsentry/sentry/blob/master/src/sentry/workflow_engine/handlers/condition/event_frequency_query_handlers.py): `src/sentry/workflow_engine/handlers/condition/event_frequency_query_handlers.py`
- [Integrations](https://github.com/getsentry/sentry/blob/master/src/sentry/integrations/base.py): `src/sentry/integrations/base.py`
- [Install flow](https://github.com/getsentry/sentry/blob/master/src/sentry/integrations/pipeline.py): `src/sentry/integrations/pipeline.py`
- [Identity flow](https://github.com/getsentry/sentry/blob/master/src/sentry/identity/pipeline.py): `src/sentry/identity/pipeline.py`

### Platform services

- [Metrics API](https://github.com/getsentry/sentry/blob/master/src/sentry/utils/metrics.py): `src/sentry/utils/metrics.py`
- [SDK metrics backend](https://github.com/getsentry/sentry/blob/master/src/sentry/metrics/sentry_sdk.py): `src/sentry/metrics/sentry_sdk.py`
- [Logging metrics backend](https://github.com/getsentry/sentry/blob/master/src/sentry/metrics/logging.py): `src/sentry/metrics/logging.py`
- [Feature flags](https://github.com/getsentry/sentry/blob/master/src/sentry/features/__init__.py): `src/sentry/features/__init__.py`

### Other components

- **Developers**
- **Official SDKs**

## Connections

- Developers → Official SDKs: instrument apps
- Official SDKs → Sentry platform: send telemetry
- Sentry platform → Event processing: process events
- Event processing → Projects: associate project
- Developers → Issue APIs: investigate issues
- Developers → Event queries: explore events
- Event queries → Snuba utilities: query data
- Developers → Alert conditions: configure alerts
- Developers → Integrations: connect services
- Install flow → Integrations: uses provider (evidence: `src/sentry/integrations/pipeline.py`)
- Developers → Identity flow: authenticate
- Context indexing → Context queries: uses queries (evidence: `src/sentry/tasks/seer/context_engine_index.py`)
- Developers → AI monitoring: inspect AI activity
- Developers → Replay storage: inspect replays
- Metrics API → SDK metrics backend: records metrics (evidence: `src/sentry/utils/metrics.py`)
- Metrics API → Logging metrics backend: records metrics (evidence: `src/sentry/utils/metrics.py`)
- Feature flags → Install flow: gates setup (evidence: `src/sentry/integrations/pipeline.py`)
- Organizations → Projects: owns projects (evidence: `src/sentry/models/project.py`)
