diff --git a/develop-docs/application/config.mdx b/develop-docs/application/config.mdx index afc9bb08f2e9bd..5f793ded7e5e6e 100644 --- a/develop-docs/application/config.mdx +++ b/develop-docs/application/config.mdx @@ -1,5 +1,6 @@ --- title: Configuration +sidebar_order: 60 --- This document describes configuration available to the Sentry server itself. diff --git a/develop-docs/backend/control-silo.mdx b/develop-docs/application/control-silo.mdx similarity index 99% rename from develop-docs/backend/control-silo.mdx rename to develop-docs/application/control-silo.mdx index 237f8705eb6cbe..730dd33e9a7623 100644 --- a/develop-docs/backend/control-silo.mdx +++ b/develop-docs/application/control-silo.mdx @@ -1,5 +1,6 @@ --- title: Control Silo +sidebar_order: 30 --- Within the Control Silo are features that allow us to provide backwards compatibility for both customer API usage, and integrations diff --git a/develop-docs/backend/cross-region-replication.mdx b/develop-docs/application/cross-region-replication.mdx similarity index 99% rename from develop-docs/backend/cross-region-replication.mdx rename to develop-docs/application/cross-region-replication.mdx index 921f7e82598593..1772e959e719a4 100644 --- a/develop-docs/backend/cross-region-replication.mdx +++ b/develop-docs/application/cross-region-replication.mdx @@ -1,5 +1,6 @@ --- title: Cross Region Replication +sidebar_order: 40 --- Our data-model includes many relations between users and the objects they create or interact with. Eventually users are deleted, and they need to be detached from the records they created, or those records need to be destroyed. Before sentry became a multi-region application, we relied on a mixture of Django callbacks, and postgres constraints to cascade deletions. However, in a multi-region state we arent't able to rely on these anymore as Users are in [Control Silo](/architecture/#silo-modes) and many of the objects they interact with are in the various Region Silos. diff --git a/develop-docs/backend/cross-region-rpc.mdx b/develop-docs/application/cross-region-rpc.mdx similarity index 99% rename from develop-docs/backend/cross-region-rpc.mdx rename to develop-docs/application/cross-region-rpc.mdx index 36b22331736c43..f8ce9bfc1321a7 100644 --- a/develop-docs/backend/cross-region-rpc.mdx +++ b/develop-docs/application/cross-region-rpc.mdx @@ -1,5 +1,6 @@ --- title: Cross Region RPC +sidebar_order: 50 --- When Sentry is deployed in a multi-region deployment (like sentry.io) there are many scenarios and workflows where a region silo requires information that is stored in Control Silo. Similarly there are flows where Control Silo operations need to read or mutate state stored in regions. diff --git a/develop-docs/application/dynamic-sampling/index.mdx b/develop-docs/application/dynamic-sampling/index.mdx index 9d52bdc363a23e..2b42712e5ea6de 100644 --- a/develop-docs/application/dynamic-sampling/index.mdx +++ b/develop-docs/application/dynamic-sampling/index.mdx @@ -1,7 +1,7 @@ --- title: Dynamic Sampling description: Dynamic Sampling is a feature of the ingestion pipeline that allows Sentry to automatically adjust the amount of data retained based on the value of the data. -sidebar_order: 50 +sidebar_order: 10 --- From all the data received by the SDKs, Sentry is able to extract low-granularity information through metrics, while Dynamic Sampling makes the decision of whether to keep or drop data. diff --git a/develop-docs/application/feedback-architecture.mdx b/develop-docs/application/feedback-architecture.mdx index 38001a22c87a4d..b5c064a008c22e 100644 --- a/develop-docs/application/feedback-architecture.mdx +++ b/develop-docs/application/feedback-architecture.mdx @@ -1,5 +1,6 @@ --- title: User Feedback Architecture +sidebar_order: 20 --- **The goal of this doc is to give engineers an in-depth understanding of User Feedback's backend.** diff --git a/develop-docs/application/sentry-vs-getsentry.mdx b/develop-docs/application/sentry-vs-getsentry.mdx index 900116de831115..adb8b9d5163655 100644 --- a/develop-docs/application/sentry-vs-getsentry.mdx +++ b/develop-docs/application/sentry-vs-getsentry.mdx @@ -1,5 +1,6 @@ --- title: sentry vs. getsentry +sidebar_order: 70 --- You'll find numerous references to both `sentry` and `getsentry` in our documentation. Both are [Django](https://www.djangoproject.com/) apps, but `sentry` [is open](https://github.com/getsentry/sentry) and `getsentry` is closed. What's in which? @@ -10,7 +11,7 @@ So what's in `getsentry`, then? It implements billing and account management fea Additionally, `sentry` has many hooks, implemented using Django signals, which `getsentry` subscribes to. For example, there's a Django signal called `event_received` in `sentry` that is triggered when an event is saved. If you're [running self-hosted](/self-hosted/), nothing is subscribed to this hook. But in `getsentry`, we have a counter for billing that runs when that signal fires. -There are also some swappable backends in `sentry` that `getsentry` utilizes, such as `sentry.nodestore`, `sentry.quotas`, and a home-grown feature flagging system. As with hooks, these modular backends are technically available to self-hosted instances, but they're largely undocumented. For example, the feature-flagging system has a hardcoded table of features ([`SENTRY_FEATURES`](https://github.com/getsentry/sentry/blob/master/src/sentry/features/__init__.py)) that [self-hosted installs can use](/feature-flags/) to control feature availability. `getsentry` registers a different feature flag handler that flips flags based on our [billing plans](https://sentry.io/pricing/) and early access program. +There are also some swappable backends in `sentry` that `getsentry` utilizes, such as `sentry.nodestore`, `sentry.quotas`, and a home-grown feature flagging system. As with hooks, these modular backends are technically available to self-hosted instances, but they're largely undocumented. For example, the feature-flagging system has a hardcoded table of features ([`SENTRY_FEATURES`](https://github.com/getsentry/sentry/blob/master/src/sentry/features/__init__.py)) that [self-hosted installs can use](/backend/feature-flags/) to control feature availability. `getsentry` registers a different feature flag handler that flips flags based on our [billing plans](https://sentry.io/pricing/) and early access program. ## Notes for Sentry Engineers diff --git a/develop-docs/application/ab-testing/index.mdx b/develop-docs/backend/ab-testing/index.mdx similarity index 99% rename from develop-docs/application/ab-testing/index.mdx rename to develop-docs/backend/ab-testing/index.mdx index 6817b41ebdaf67..3db09d9c24ce2a 100644 --- a/develop-docs/application/ab-testing/index.mdx +++ b/develop-docs/backend/ab-testing/index.mdx @@ -1,5 +1,6 @@ --- title: A/B Tests with Amplitude +sidebar_order: 190 --- ## Why AB testing? diff --git a/develop-docs/application/api/basics.mdx b/develop-docs/backend/api/basics.mdx similarity index 100% rename from develop-docs/application/api/basics.mdx rename to develop-docs/backend/api/basics.mdx diff --git a/develop-docs/application/api/checklist.mdx b/develop-docs/backend/api/checklist.mdx similarity index 100% rename from develop-docs/application/api/checklist.mdx rename to develop-docs/backend/api/checklist.mdx diff --git a/develop-docs/application/api/concepts.mdx b/develop-docs/backend/api/concepts.mdx similarity index 100% rename from develop-docs/application/api/concepts.mdx rename to develop-docs/backend/api/concepts.mdx diff --git a/develop-docs/application/api/design.mdx b/develop-docs/backend/api/design.mdx similarity index 99% rename from develop-docs/application/api/design.mdx rename to develop-docs/backend/api/design.mdx index 4224dd17fc87b9..84dfc70763e1da 100644 --- a/develop-docs/application/api/design.mdx +++ b/develop-docs/backend/api/design.mdx @@ -2,6 +2,7 @@ title: Designing a New API sidebar_order: 2 --- + [Django REST framework](https://www.django-rest-framework.org/)(DRF) is a powerful and flexible toolkit for building Web APIs. Sentry APIs are built using DRF. Here are some considerations to make when designing APIs at Sentry. diff --git a/develop-docs/application/api/index.mdx b/develop-docs/backend/api/index.mdx similarity index 95% rename from develop-docs/application/api/index.mdx rename to develop-docs/backend/api/index.mdx index 4be1725e068504..20fb5b80ad3f53 100644 --- a/develop-docs/application/api/index.mdx +++ b/develop-docs/backend/api/index.mdx @@ -1,5 +1,6 @@ --- title: API Development +sidebar_order: 1 --- As a developer-facing company it's critical for us to have simple, intuitive, and consistent APIs that our users can call from their dev environment to accomplish key tasks without going to the UI. If you're creating or editing an endpoint, this doc will help you achieve Sentry standards. diff --git a/develop-docs/application/api/public.mdx b/develop-docs/backend/api/public.mdx similarity index 99% rename from develop-docs/application/api/public.mdx rename to develop-docs/backend/api/public.mdx index 575157b724a3a7..c91b313cf8cd68 100644 --- a/develop-docs/application/api/public.mdx +++ b/develop-docs/backend/api/public.mdx @@ -56,7 +56,7 @@ As a guide, use these questions: 2. Will the API change substantially in the future? If your answers are Yes and No, you're in business - make the endpoint public. Head over to the -[public API checklist](/application/api/checklist/) and ensure that your endpoint conforms to the checklist. +[public API checklist](/backend/api/checklist/) and ensure that your endpoint conforms to the checklist. ## Publishing an API diff --git a/develop-docs/application/serializers.mdx b/develop-docs/backend/api/serializers.mdx similarity index 99% rename from develop-docs/application/serializers.mdx rename to develop-docs/backend/api/serializers.mdx index dc5de11e2acf0f..e200064d84306a 100644 --- a/develop-docs/application/serializers.mdx +++ b/develop-docs/backend/api/serializers.mdx @@ -1,5 +1,6 @@ --- title: Serializers +sidebar_order: 10 --- Serializers are used to take complex python models and translate them into json. Serializers can also be used to deserialize json back to the python models after validating the incoming data. diff --git a/develop-docs/services/buffers.mdx b/develop-docs/backend/buffers.mdx similarity index 98% rename from develop-docs/services/buffers.mdx rename to develop-docs/backend/buffers.mdx index 57783ffdca6ab1..76b346fac79742 100644 --- a/develop-docs/services/buffers.mdx +++ b/develop-docs/backend/buffers.mdx @@ -1,5 +1,6 @@ --- title: Write Buffers +sidebar_order: 170 --- Sentry manages database row contention by buffering writes and flushing bulk changes to the database over a period of time. This is extremely helpful if you have high concurrency, especially if they’re frequently the same event. diff --git a/develop-docs/development/database-migrations/img/post-deploy-pipeline-materials.png b/develop-docs/backend/database-migrations/img/post-deploy-pipeline-materials.png similarity index 100% rename from develop-docs/development/database-migrations/img/post-deploy-pipeline-materials.png rename to develop-docs/backend/database-migrations/img/post-deploy-pipeline-materials.png diff --git a/develop-docs/development/database-migrations/img/post-deploy-pipeline-tile.png b/develop-docs/backend/database-migrations/img/post-deploy-pipeline-tile.png similarity index 100% rename from develop-docs/development/database-migrations/img/post-deploy-pipeline-tile.png rename to develop-docs/backend/database-migrations/img/post-deploy-pipeline-tile.png diff --git a/develop-docs/development/database-migrations/img/post-deploy-pipeline-variables.png b/develop-docs/backend/database-migrations/img/post-deploy-pipeline-variables.png similarity index 100% rename from develop-docs/development/database-migrations/img/post-deploy-pipeline-variables.png rename to develop-docs/backend/database-migrations/img/post-deploy-pipeline-variables.png diff --git a/develop-docs/development/database-migrations/index.mdx b/develop-docs/backend/database-migrations/index.mdx similarity index 100% rename from develop-docs/development/database-migrations/index.mdx rename to develop-docs/backend/database-migrations/index.mdx diff --git a/develop-docs/backend/development-server.mdx b/develop-docs/backend/development-server.mdx index ce5a0bb8c0636c..21e3e69e240ed3 100644 --- a/develop-docs/backend/development-server.mdx +++ b/develop-docs/backend/development-server.mdx @@ -1,5 +1,6 @@ --- title: Backend Development Server +sidebar_order: 10 --- (*see also: [Frontend Development Server](/frontend/development-server/)*) diff --git a/develop-docs/services/digests.mdx b/develop-docs/backend/digests.mdx similarity index 99% rename from develop-docs/services/digests.mdx rename to develop-docs/backend/digests.mdx index 158f40432fac61..abc979151d6e88 100644 --- a/develop-docs/services/digests.mdx +++ b/develop-docs/backend/digests.mdx @@ -1,5 +1,6 @@ --- title: Notification Digests +sidebar_order: 140 --- Sentry provides a service that will collect notifications as they occur and schedule them for delivery as aggregated “digest” notifications. diff --git a/develop-docs/services/email.mdx b/develop-docs/backend/email.mdx similarity index 99% rename from develop-docs/services/email.mdx rename to develop-docs/backend/email.mdx index f61ef200bdba8b..63e3672d7ff5c2 100644 --- a/develop-docs/services/email.mdx +++ b/develop-docs/backend/email.mdx @@ -1,5 +1,6 @@ --- title: Email +sidebar_order: 110 --- Sentry provides support for both outbound, and incoming email. diff --git a/develop-docs/application/feature-flags/flagpole.mdx b/develop-docs/backend/feature-flags/flagpole.mdx similarity index 100% rename from develop-docs/application/feature-flags/flagpole.mdx rename to develop-docs/backend/feature-flags/flagpole.mdx diff --git a/develop-docs/application/feature-flags/index.mdx b/develop-docs/backend/feature-flags/index.mdx similarity index 96% rename from develop-docs/application/feature-flags/index.mdx rename to develop-docs/backend/feature-flags/index.mdx index a85ddc30ff9c1a..142752829ed3a8 100644 --- a/develop-docs/application/feature-flags/index.mdx +++ b/develop-docs/backend/feature-flags/index.mdx @@ -1,5 +1,6 @@ --- title: 'Feature Flags' +sidebar_order: 40 --- Feature flags are declared in Sentry's codebase (look for `SENTRY_FEATURES` in @@ -67,7 +68,7 @@ be included in the results of the organization details response. ### Add your feature to the FeatureManager -If you want to back your feature flag via options, you can do so using the [Flagpole](/feature-flags/flagpole/) library +If you want to back your feature flag via options, you can do so using the [Flagpole](/backend/feature-flags/flagpole/) library by adding the feature to the `FeatureManager` with the `FLAGPOLE` enum set as the feature strategy: ```python @@ -184,7 +185,7 @@ SENTRY_FEATURES['organizations:test-feature'] = True ``` Alternatively, you can test Flagpole features by setting custom options locally. -See the [Flagpole Local Development](/feature-flags/flagpole/#testing-a-flagpole-feature-locally) docs for more information on this. +See the [Flagpole Local Development](/backend/feature-flags/flagpole/#testing-a-flagpole-feature-locally) docs for more information on this. ## Enabling your feature in production @@ -193,7 +194,7 @@ flags are then configured via `sentry.conf.py`. For Sentry's SaaS deployment, you have the choice of using an option backed rollout via Options Automator with Flagpole, or by writing a custom feature flag handler. -- [Flagpole](/feature-flags/flagpole/) is Sentry's internal feature flagging library, allowing a feature +- [Flagpole](/backend/feature-flags/flagpole/) is Sentry's internal feature flagging library, allowing a feature with multiple target segments and condition filters to be defined in YAML within Options Automator. - [Options based features](options-backed-features/) [DEPRECATED] allow a feature diff --git a/develop-docs/application/feature-flags/options-backed-features.mdx b/develop-docs/backend/feature-flags/options-backed-features.mdx similarity index 95% rename from develop-docs/application/feature-flags/options-backed-features.mdx rename to develop-docs/backend/feature-flags/options-backed-features.mdx index 721792ff5152c6..6f4279f3638b84 100644 --- a/develop-docs/application/feature-flags/options-backed-features.mdx +++ b/develop-docs/backend/feature-flags/options-backed-features.mdx @@ -4,7 +4,7 @@ title: Options Backed Features [DEPRECATED] Options backed features using the `OPTIONS` strategy enum were a temporary stopgap that was used to formalize options-backed feature flags. These have since been -replaced by [Flagpole](/feature-flags/flagpole/), which is Sentry's preferred +replaced by [Flagpole](/backend/feature-flags/flagpole/), which is Sentry's preferred means of setting feature flags now. diff --git a/develop-docs/application/grouping.mdx b/develop-docs/backend/grouping.mdx similarity index 99% rename from develop-docs/application/grouping.mdx rename to develop-docs/backend/grouping.mdx index 1b086ebb424591..96ade53555b08b 100644 --- a/develop-docs/application/grouping.mdx +++ b/develop-docs/backend/grouping.mdx @@ -1,5 +1,6 @@ --- title: Grouping +sidebar_order: 60 --- Sentry has an extensive grouping system ([public documentation](https://docs.sentry.io/product/sentry-basics/grouping-and-fingerprints/)) diff --git a/develop-docs/application/issue-platform-detectors/img/issuePlatformAdminDetectionSettings.png b/develop-docs/backend/issue-platform-detectors/img/issuePlatformAdminDetectionSettings.png similarity index 100% rename from develop-docs/application/issue-platform-detectors/img/issuePlatformAdminDetectionSettings.png rename to develop-docs/backend/issue-platform-detectors/img/issuePlatformAdminDetectionSettings.png diff --git a/develop-docs/application/issue-platform-detectors/img/issuePlatformCustomerDetectorSettings.png b/develop-docs/backend/issue-platform-detectors/img/issuePlatformCustomerDetectorSettings.png similarity index 100% rename from develop-docs/application/issue-platform-detectors/img/issuePlatformCustomerDetectorSettings.png rename to develop-docs/backend/issue-platform-detectors/img/issuePlatformCustomerDetectorSettings.png diff --git a/develop-docs/application/issue-platform-detectors/img/issuePlatformDbonMainThreadDetectorSetting.png b/develop-docs/backend/issue-platform-detectors/img/issuePlatformDbonMainThreadDetectorSetting.png similarity index 100% rename from develop-docs/application/issue-platform-detectors/img/issuePlatformDbonMainThreadDetectorSetting.png rename to develop-docs/backend/issue-platform-detectors/img/issuePlatformDbonMainThreadDetectorSetting.png diff --git a/develop-docs/application/issue-platform-detectors/img/issuePlatformFingerprinting01.png b/develop-docs/backend/issue-platform-detectors/img/issuePlatformFingerprinting01.png similarity index 100% rename from develop-docs/application/issue-platform-detectors/img/issuePlatformFingerprinting01.png rename to develop-docs/backend/issue-platform-detectors/img/issuePlatformFingerprinting01.png diff --git a/develop-docs/application/issue-platform-detectors/img/issuePlatformFingerprinting02.png b/develop-docs/backend/issue-platform-detectors/img/issuePlatformFingerprinting02.png similarity index 100% rename from develop-docs/application/issue-platform-detectors/img/issuePlatformFingerprinting02.png rename to develop-docs/backend/issue-platform-detectors/img/issuePlatformFingerprinting02.png diff --git a/develop-docs/application/issue-platform-detectors/img/issuePlatformFingerprinting03.png b/develop-docs/backend/issue-platform-detectors/img/issuePlatformFingerprinting03.png similarity index 100% rename from develop-docs/application/issue-platform-detectors/img/issuePlatformFingerprinting03.png rename to develop-docs/backend/issue-platform-detectors/img/issuePlatformFingerprinting03.png diff --git a/develop-docs/application/issue-platform-detectors/index.mdx b/develop-docs/backend/issue-platform-detectors/index.mdx similarity index 98% rename from develop-docs/application/issue-platform-detectors/index.mdx rename to develop-docs/backend/issue-platform-detectors/index.mdx index 8c5d2f945791b5..f2babbd81d6b93 100644 --- a/develop-docs/application/issue-platform-detectors/index.mdx +++ b/develop-docs/backend/issue-platform-detectors/index.mdx @@ -1,8 +1,9 @@ --- title: Issue Platform - Writing Detectors +sidebar_order: 90 --- -Issue detectors identify application issues by examining one or more datasets collected by Sentry, and report detected issue occurrences via the Issue Platform. Detectors must fingerprint issues accurately and provide actionable information to developers. +Issue detectors identify application issues by examining one or more datasets collected by Sentry, and report detected issue occurrences via the Issue Platform. Detectors must fingerprint issues accurately and provide actionable information to developers. # Considerations diff --git a/develop-docs/application/issue-platform/img/issueProperties.jpg b/develop-docs/backend/issue-platform/img/issueProperties.jpg similarity index 100% rename from develop-docs/application/issue-platform/img/issueProperties.jpg rename to develop-docs/backend/issue-platform/img/issueProperties.jpg diff --git a/develop-docs/application/issue-platform/index.mdx b/develop-docs/backend/issue-platform/index.mdx similarity index 98% rename from develop-docs/application/issue-platform/index.mdx rename to develop-docs/backend/issue-platform/index.mdx index a4d9b6baea84ae..c8b05fb1402a1a 100644 --- a/develop-docs/application/issue-platform/index.mdx +++ b/develop-docs/backend/issue-platform/index.mdx @@ -1,5 +1,6 @@ --- title: Issue Platform +sidebar_order: 80 --- The Issue Platform allows developers to create new issue types from arbitrary data sources. If you have data about something that you want to track via an issue, you can build it on the issue platform. For example, building profiling issues on the issue platform allowed us to turn things like “JSON decoding on the main thread” into their own issue types. @@ -15,7 +16,7 @@ To use the Issue Platform you need to: The first step to introducing a new issue type to Sentry is to determine what type of issue you want to detect. It can be from any data stream, as long as you can produce an Occurrence representing the issue. -Writing a detector is the hardest part of creating a new issue type. Refer to this guide for tips on how to write one. +Writing a detector is the hardest part of creating a new issue type. Refer to this guide for tips on how to write one. ## Register an Issue Type diff --git a/develop-docs/backend/kafka.mdx b/develop-docs/backend/kafka.mdx index d37b008fc121d0..50d0694c451322 100644 --- a/develop-docs/backend/kafka.mdx +++ b/develop-docs/backend/kafka.mdx @@ -1,5 +1,6 @@ --- title: Kafka consumers +sidebar_order: 110 --- ## Creating a new consumer in Sentry diff --git a/develop-docs/services/metrics.mdx b/develop-docs/backend/metrics.mdx similarity index 99% rename from develop-docs/services/metrics.mdx rename to develop-docs/backend/metrics.mdx index 02079af2ceabc6..e885681cb2f5f1 100644 --- a/develop-docs/services/metrics.mdx +++ b/develop-docs/backend/metrics.mdx @@ -1,5 +1,6 @@ --- title: Metrics +sidebar_order: 120 --- Sentry provides an abstraction called ‘metrics’ which is used for internal monitoring, generally timings and various counters. diff --git a/develop-docs/services/nodestore.mdx b/develop-docs/backend/nodestore.mdx similarity index 97% rename from develop-docs/services/nodestore.mdx rename to develop-docs/backend/nodestore.mdx index c98dbe72b759c3..7acd4617d5f6b6 100644 --- a/develop-docs/services/nodestore.mdx +++ b/develop-docs/backend/nodestore.mdx @@ -1,5 +1,6 @@ --- title: Node Storage +sidebar_order: 130 --- Sentry provides an abstraction called ‘nodestore’ which is used for storing key/value blobs. diff --git a/develop-docs/backend/options/index.mdx b/develop-docs/backend/options/index.mdx index 3e59f9486805ac..3bb67b281c3097 100644 --- a/develop-docs/backend/options/index.mdx +++ b/develop-docs/backend/options/index.mdx @@ -1,5 +1,6 @@ --- title: Options +sidebar_order: 50 --- Options are a way to store generic system-wide configuration. They serve a similar purpose to configuration files, but they are backed by a database, so it's possible to change them at runtime without a deploy. Options are stored in the database and cached, so they are performant and reliable. This makes options well-suited for rates, quotas, and limits. diff --git a/develop-docs/backend/outboxes.mdx b/develop-docs/backend/outboxes.mdx index bb6c235f8fd95e..f0a353a68af400 100644 --- a/develop-docs/backend/outboxes.mdx +++ b/develop-docs/backend/outboxes.mdx @@ -1,5 +1,6 @@ --- title: Outboxes +sidebar_order: 70 --- Outboxes are database backed deferred units of work that drive a large portion of our system's eventual consistency workflows. They were designed with a couple of key features in mind: diff --git a/develop-docs/application/pii/index.mdx b/develop-docs/backend/pii/index.mdx similarity index 93% rename from develop-docs/application/pii/index.mdx rename to develop-docs/backend/pii/index.mdx index 1685e79b75a0a4..46ca1dc7f7ba3b 100644 --- a/develop-docs/application/pii/index.mdx +++ b/develop-docs/backend/pii/index.mdx @@ -1,7 +1,7 @@ --- title: PII and Data Scrubbing description: This document describes a configuration format that we would like to hide from the user eventually. The only reason this page still exists is, because currently Relay accepts this format in alternative to regular data scrubbing settings. -sidebar_order: 40 +sidebar_order: 170 --- The following document explores the syntax and semantics of the configuration @@ -25,7 +25,7 @@ It reads as "replace all IP addresses in all strings", or "apply `@ip:replace` to all `$string` fields". `@ip:replace` is called a rule, and `$string` is a selector. +to="/backend/pii/selectors/">selector. ## Built-in Rules @@ -50,10 +50,10 @@ The following rules exist by default: Rules generally consist of two parts: -- _Rule types_ describe what to match. See PII Rule +- _Rule types_ describe what to match. See PII Rule Types for an exhaustive list. - _Rule redaction methods_ describe what to do with the match. See PII Redaction Methods for a list. + to="/backend/pii/methods/">PII Redaction Methods for a list. Each page comes with examples. Try those examples out by pasting them into the "PII config" column of [Piinguin] and clicking on fields to get suggestions. diff --git a/develop-docs/application/pii/methods.mdx b/develop-docs/backend/pii/methods.mdx similarity index 100% rename from develop-docs/application/pii/methods.mdx rename to develop-docs/backend/pii/methods.mdx diff --git a/develop-docs/application/pii/selectors.mdx b/develop-docs/backend/pii/selectors.mdx similarity index 100% rename from develop-docs/application/pii/selectors.mdx rename to develop-docs/backend/pii/selectors.mdx diff --git a/develop-docs/application/pii/types.mdx b/develop-docs/backend/pii/types.mdx similarity index 100% rename from develop-docs/application/pii/types.mdx rename to develop-docs/backend/pii/types.mdx diff --git a/develop-docs/development/python-dependencies.mdx b/develop-docs/backend/python-dependencies.mdx similarity index 99% rename from develop-docs/development/python-dependencies.mdx rename to develop-docs/backend/python-dependencies.mdx index f632560f4f8048..9c14c57e0ac36f 100644 --- a/develop-docs/development/python-dependencies.mdx +++ b/develop-docs/backend/python-dependencies.mdx @@ -1,6 +1,6 @@ --- title: Python Dependencies -sidebar_order: 9000 +sidebar_order: 20 --- Unlike our frontend JavaScript story, where we're generally very happy pulling in dependencies, we're much more conservative on diff --git a/develop-docs/services/queue.mdx b/develop-docs/backend/queue.mdx similarity index 99% rename from develop-docs/services/queue.mdx rename to develop-docs/backend/queue.mdx index f680b97a6baf02..941852c5e58918 100644 --- a/develop-docs/services/queue.mdx +++ b/develop-docs/backend/queue.mdx @@ -1,5 +1,6 @@ --- title: Asynchronous Workers +sidebar_order: 100 --- Sentry comes with a built-in queue to process tasks in a more asynchronous fashion. For example when an event comes in instead of writing it to the database immediately, it sends a job to the queue so that the request can be returned right away, and the background workers handle actually saving that data. diff --git a/develop-docs/services/quotas.mdx b/develop-docs/backend/quotas.mdx similarity index 99% rename from develop-docs/services/quotas.mdx rename to develop-docs/backend/quotas.mdx index bba335e66954fd..354b1cc1d057bf 100644 --- a/develop-docs/services/quotas.mdx +++ b/develop-docs/backend/quotas.mdx @@ -1,5 +1,6 @@ --- title: Quotas +sidebar_order: 150 --- With the way Sentry works you may find yourself in a situation where you’ll see too much inbound traffic without a good way to drop excess messages. There’s a few solutions to this, and you’ll likely want to employ them all if you are faced with this problem. diff --git a/develop-docs/application/transaction-clustering/index.mdx b/develop-docs/backend/transaction-clustering/index.mdx similarity index 99% rename from develop-docs/application/transaction-clustering/index.mdx rename to develop-docs/backend/transaction-clustering/index.mdx index 4d0b75448429e8..052f1b530c328f 100644 --- a/develop-docs/application/transaction-clustering/index.mdx +++ b/develop-docs/backend/transaction-clustering/index.mdx @@ -6,8 +6,8 @@ sidebar_order: 60 Sentry attempts to scrub high-cardinality identifiers from URL transactions to aggregate performance data and provide more valuable insights. -In terms of user experience, this feature plays a similar role as [Issue Grouping](/grouping/). -In terms of technical implementation, it is similar to [Data Scrubbing](/pii/). +In terms of user experience, this feature plays a similar role as [Issue Grouping](/backend/grouping/). +In terms of technical implementation, it is similar to [Data Scrubbing](/backend/pii/). ## The Problem diff --git a/develop-docs/application/transaction-clustering/merged.png b/develop-docs/backend/transaction-clustering/merged.png similarity index 100% rename from develop-docs/application/transaction-clustering/merged.png rename to develop-docs/backend/transaction-clustering/merged.png diff --git a/develop-docs/application/transaction-clustering/transaction-clustering-arch.png b/develop-docs/backend/transaction-clustering/transaction-clustering-arch.png similarity index 100% rename from develop-docs/application/transaction-clustering/transaction-clustering-arch.png rename to develop-docs/backend/transaction-clustering/transaction-clustering-arch.png diff --git a/develop-docs/application/transaction-clustering/transaction-clustering-arch.svg b/develop-docs/backend/transaction-clustering/transaction-clustering-arch.svg similarity index 100% rename from develop-docs/application/transaction-clustering/transaction-clustering-arch.svg rename to develop-docs/backend/transaction-clustering/transaction-clustering-arch.svg diff --git a/develop-docs/application/transaction-clustering/tree.png b/develop-docs/backend/transaction-clustering/tree.png similarity index 100% rename from develop-docs/application/transaction-clustering/tree.png rename to develop-docs/backend/transaction-clustering/tree.png diff --git a/develop-docs/application/transaction-clustering/unparameterized.png b/develop-docs/backend/transaction-clustering/unparameterized.png similarity index 100% rename from develop-docs/application/transaction-clustering/unparameterized.png rename to develop-docs/backend/transaction-clustering/unparameterized.png diff --git a/develop-docs/application/translations.mdx b/develop-docs/backend/translations.mdx similarity index 99% rename from develop-docs/application/translations.mdx rename to develop-docs/backend/translations.mdx index 3d787e4ed98a99..a749bd5a8195fb 100644 --- a/develop-docs/application/translations.mdx +++ b/develop-docs/backend/translations.mdx @@ -1,6 +1,6 @@ --- title: Translations -sidebar_order: 90 +sidebar_order: 180 --- We use [**Transifex**](https://www.transifex.com/getsentry/sentry) to translate Sentry. diff --git a/develop-docs/services/tsdb.mdx b/develop-docs/backend/tsdb.mdx similarity index 98% rename from develop-docs/services/tsdb.mdx rename to develop-docs/backend/tsdb.mdx index ab66232446f3ec..8fad662938101c 100644 --- a/develop-docs/services/tsdb.mdx +++ b/develop-docs/backend/tsdb.mdx @@ -1,5 +1,6 @@ --- title: Time-series Storage +sidebar_order: 160 --- Sentry provides a service to store time-series data. Primarily this is used to display aggregate information for events and projects, as well as calculating (in real-time) the rates of events. diff --git a/develop-docs/development/analytics.mdx b/develop-docs/development/analytics.mdx index 3e1510668bf1ca..19694332ba1fc1 100644 --- a/develop-docs/development/analytics.mdx +++ b/develop-docs/development/analytics.mdx @@ -1,7 +1,7 @@ --- title: Analytics description: This guide steps you through instrumenting your code with Sentry's 3rd-party analytics infrastructure. -sidebar_order: 9000 +sidebar_order: 100 --- @@ -102,7 +102,7 @@ analytics.record( Run the tests that touch the endpoint to ensure everything is Gucci. -### Step 3: +### Step 3: By default, a new event type is aggregated and sent to Amplitude as long as there is a user_id sent along with the event. If you would like to send events unaggregated, refer to [our Amplitude aggregation docs](https://github.com/getsentry/etl/blob/master/documentation/amplitude_analytics.md) ## Route-Based Frontend Analytics @@ -290,7 +290,7 @@ class ExampleComponent extends React.Component { ## Metrics -Track aggregrate stats with [Metrics](/services/metrics/). For example, this can be used to track aggregate response codes for an endpoint. +Track aggregrate stats with [Metrics](/backend/metrics/). For example, this can be used to track aggregate response codes for an endpoint. Import the metrics library and use the `metrics.inc` function. The key needs to be unique. diff --git a/develop-docs/development/code-review.mdx b/develop-docs/development/code-review.mdx index 504d312dedfbc0..1d227405f56245 100644 --- a/develop-docs/development/code-review.mdx +++ b/develop-docs/development/code-review.mdx @@ -1,7 +1,7 @@ --- title: Code Review description: Code review is mandatory at Sentry. This adds overhead to each change, but ensures that simple, often overlooked problems are more easily avoided. -sidebar_order: 30 +sidebar_order: 20 --- Code review helps build shared context and collective ownership. It is also an opportunity to collaborate with other teams. Finally, code review can identify several classes of problem before customers are exposed to them. diff --git a/develop-docs/development/commit-messages.mdx b/develop-docs/development/commit-messages.mdx index ce2bd8ead6b66b..7eedde9ec7d789 100644 --- a/develop-docs/development/commit-messages.mdx +++ b/develop-docs/development/commit-messages.mdx @@ -1,7 +1,7 @@ --- title: Commit Messages description: We have very precise rules over how our git commit messages can be formatted. This leads to more readable messages that are easy to follow when looking through the project history. -sidebar_order: 20 +sidebar_order: 10 --- ### General Rules diff --git a/develop-docs/development/continuous-integration.mdx b/develop-docs/development/continuous-integration.mdx index 2ac780bdca24e7..2bd7d9ea2608b8 100644 --- a/develop-docs/development/continuous-integration.mdx +++ b/develop-docs/development/continuous-integration.mdx @@ -1,7 +1,7 @@ --- title: Continuous Integration description: Sentry uses a variety of continuous integration services to help ensure we don't accidentally break the application. -sidebar_order: 35 +sidebar_order: 60 --- ## Deployments diff --git a/develop-docs/services/devservices.mdx b/develop-docs/development/devservices.mdx similarity index 98% rename from develop-docs/services/devservices.mdx rename to develop-docs/development/devservices.mdx index 67ceb3da69e022..788d121b665f0a 100644 --- a/develop-docs/services/devservices.mdx +++ b/develop-docs/development/devservices.mdx @@ -1,5 +1,6 @@ --- title: Service Manager (devservices) +sidebar_order: 80 --- Sentry provides an abstraction to Docker to run required services within development called `devservices`. diff --git a/develop-docs/development/docs/index.mdx b/develop-docs/development/documentation.mdx similarity index 96% rename from develop-docs/development/docs/index.mdx rename to develop-docs/development/documentation.mdx index 430d9c4199b2eb..662a35a213c307 100644 --- a/develop-docs/development/docs/index.mdx +++ b/develop-docs/development/documentation.mdx @@ -1,7 +1,7 @@ --- title: Documentation description: A part of every development project (especially Open Source projects) is documentation that explains how it works. Sentry is not any different. -sidebar_order: 50 +sidebar_order: 30 --- Because documentation is a big part of what makes Sentry work we’ve outlined some guidelines about how this documentation is structured and how to extend it. @@ -44,4 +44,4 @@ Avoid adjacent code blocks without a paragraph of text in between. A code block ### Inclusive Language -Sentry is a product used and developed by many people from different cultural backgrounds and we try to avoid language that has been identified as hurtful or insensitive. For detailed recommendations see Inclusive Language. +Sentry is a product used and developed by many people from different cultural backgrounds and we try to avoid language that has been identified as hurtful or insensitive. For detailed recommendations see Inclusive Language. diff --git a/develop-docs/development/environment/index.mdx b/develop-docs/development/environment/index.mdx index 919eaeeac5fcf9..62387d5860efbb 100644 --- a/develop-docs/development/environment/index.mdx +++ b/develop-docs/development/environment/index.mdx @@ -24,7 +24,7 @@ NOTE: After running `devenv sync` you may need to restart your terminal to conti ## Running the Development Server -The `devservices` ensure that you have all the services required for local development running. See the [devservices docs](/services/devservices/) for more information on managing services. +The `devservices` ensure that you have all the services required for local development running. See the [devservices docs](/development/devservices/) for more information on managing services. When setting up `sentry`, execute the following command in the `sentry` folder: ```shell @@ -116,7 +116,7 @@ sentry devservices up snuba Only Sentry employees have access to getsentry. -See also: Sentry vs Getsentry +See also: Sentry vs Getsentry Before running `getsentry`, you might need to run `devenv sync` inside the `getsentry` directory if you have previously run `sentry` locally, as there might be differences between the environments. @@ -149,7 +149,7 @@ getsentry devserver --workers --ingest ## Running siloed instances -By default `sentry devserver` will run a monolith mode application server. You can also run `devserver` with siloed application instances. Before you do, you need to create split silo databases. +By default `sentry devserver` will run a monolith mode application server. You can also run `devserver` with siloed application instances. Before you do, you need to create split silo databases. The devserver command supports `--silo` option that lets you create siloed instances. Any workers, consumers, or celery-beat processes will be started with the same silo mode. @@ -187,7 +187,7 @@ SENTRY_SILO_DEVSERVER=1 SENTRY_SILO_MODE=REGION SENTRY_REGION=us getsentry djang ## Troubleshooting -You might also be interested in troubleshooting CI. +You might also be interested in troubleshooting CI. --- diff --git a/develop-docs/services/ports.mdx b/develop-docs/development/environment/ports.mdx similarity index 78% rename from develop-docs/services/ports.mdx rename to develop-docs/development/environment/ports.mdx index 556dbcf0f1fbbd..465383880cdf82 100644 --- a/develop-docs/services/ports.mdx +++ b/develop-docs/development/environment/ports.mdx @@ -1,5 +1,6 @@ --- title: Assigned ports +sidebar_order: 10 --- The following is a non-exhaustive list of ports used by Sentry services or any dependency of a Sentry service in development setups. It serves two purposes: @@ -9,16 +10,16 @@ The following is a non-exhaustive list of ports used by Sentry services or any d | Port | Service | Description |:-----|:-------------------------------------------|:----------- -| 9000 | Clickhouse | Devservice `clickhouse`. Database for Snuba. +| 9000 | Clickhouse | Devservice `clickhouse`. Database for Snuba. | 8123 | Clickhouse | | 9009 | Clickhouse | -| 3021 | Symbolicator | Devservice `symbolicator`. For processing stacktraces. -| 1218 | [Snuba][] | Devservice `snuba`. For searching events. +| 3021 | Symbolicator | Devservice `symbolicator`. For processing stacktraces. +| 1218 | [Snuba][] | Devservice `snuba`. For searching events. | 1219 | [Snuba][] admin | Not part of devservices setup, but running `snuba admin` will listen on this port. -| 9092 | Kafka | Devservice `kafka`. for relay-sentry communication and optionally for sentry-snuba communication -| 6379 | Redis | Devservice `redis` (or perhaps installed via Homebrew in rustier setups), responsible for caches, relay projectconfigs and Celery queues -| 5432 | Postgres | Devservice `postgres` (or perhaps installed via Homebrew in rustier setups) -| 7899 | [Relay][] | Devservice `relay`. Serves APIs for SDKs to send events to (aka event ingestion). Webpack on 8000 reverse-proxies to this server. Starts/stops with `sentry devserver`. +| 9092 | Kafka | Devservice `kafka`. for relay-sentry communication and optionally for sentry-snuba communication +| 6379 | Redis | Devservice `redis` (or perhaps installed via Homebrew in rustier setups), responsible for caches, relay projectconfigs and Celery queues +| 5432 | Postgres | Devservice `postgres` (or perhaps installed via Homebrew in rustier setups) +| 7899 | [Relay][] | Devservice `relay`. Serves APIs for SDKs to send events to (aka event ingestion). Webpack on 8000 reverse-proxies to this server. Starts/stops with `sentry devserver`. | 8000 | Sentry Dev | Webpack devserver, routing all ingest paths to Relay, and the rest to uWSGI. Routing is defined in `webpack.config.ts` in Sentry. | 8001 | uWSGI | Starts/stops with `sentry devserver`. Serves the Django app/API. Webpack on 8000 reverse-proxies to this server. In a siloed devserver, this port is used for control silo. | 8010 | uWSGI (region silo) | Starts/stops with `sentry devserver --silo=region`. Serves the Django app/API. Webpack on 8000 reverse-proxies to this server. diff --git a/develop-docs/development/environment/pycharm/index.mdx b/develop-docs/development/environment/pycharm/index.mdx index d14182619a6833..dba69f48c96be2 100644 --- a/develop-docs/development/environment/pycharm/index.mdx +++ b/develop-docs/development/environment/pycharm/index.mdx @@ -1,6 +1,7 @@ --- title: Configuring PyCharm description: If you use PyCharm for developing there are a few things you need to configure in order to be able to run and debug. +sidebar_order: 30 --- This document describes a few useful configurations for sentry development. diff --git a/develop-docs/development/environment/u2f.mdx b/develop-docs/development/environment/u2f.mdx index 63febb68ba4894..a632d9a2d1e6f9 100644 --- a/develop-docs/development/environment/u2f.mdx +++ b/develop-docs/development/environment/u2f.mdx @@ -1,5 +1,6 @@ --- title: Configuring U2F +sidebar_order: 20 --- You will need an HTTPS-accessible development server to enable u2f. The easiest way to achieve this is by using [ngrok](https://ngrok.com/). diff --git a/develop-docs/development/ngrok.mdx b/develop-docs/development/ngrok.mdx index 9d66122c807db7..9e48ed84cf089d 100644 --- a/develop-docs/development/ngrok.mdx +++ b/develop-docs/development/ngrok.mdx @@ -2,12 +2,12 @@ title: Developing with Ngrok description: This document explains how to use ngrok with the development server. sidebar_title: Ngrok -sidebar_order: 30 +sidebar_order: 70 --- # Using Ngrok -The development server can be operated behind ngrok for when you need to receive traffic from the outside world. This comes up frequently when working with integrations. +The development server can be operated behind ngrok for when you need to receive traffic from the outside world. This comes up frequently when working with integrations. It is recommended to use `getsentry` while working with integrations as it will automatically set up the correct configurations for you. @@ -59,13 +59,13 @@ getsentry devserver --ngrok=.ngrok.io ## Ngrok in Silo mode -To debug issues related to integration middleware as well as issues relating to latency induced by RPC calls, you can run your local environment in silo mode. +To debug issues related to integration middleware as well as issues relating to latency induced by RPC calls, you can run your local environment in silo mode. -To learn more about how silo mode works in the dev environment, refer to Running Siloed Instances. +To learn more about how silo mode works in the dev environment, refer to Running Siloed Instances. ### Step 1: Split Local DB into Silos -By default `sentry devserver` will run a monolith mode application server. You can also run ``devserver`` with siloed application instances. Before you do, you need to create split silo databases. +By default `sentry devserver` will run a monolith mode application server. You can also run ``devserver`` with siloed application instances. Before you do, you need to create split silo databases. ### Step 2: Create Ngrok Config File @@ -108,4 +108,4 @@ getsentry devserver --ngrok .ngrok.io --workers --celery-beat --silo=c This setup will result in both the region and control servers responding to different domains. The multi-region setup with ngrok also enables customer-domains and you'll need ngrok domains for each organization you plan on using. In this configuration, CORS will work similar to production. ### Setting up integrations -When setting up integrations for your local environment and the above setup, you should add the secrets and configurations for the integrations in the `getsentry/conf/settings/devlocal.py` file. +When setting up integrations for your local environment and the above setup, you should add the secrets and configurations for the integrations in the `getsentry/conf/settings/devlocal.py` file. diff --git a/develop-docs/development/rust.mdx b/develop-docs/development/rust.mdx index 37fea41659acda..49872f78fcc9ae 100644 --- a/develop-docs/development/rust.mdx +++ b/develop-docs/development/rust.mdx @@ -1,7 +1,7 @@ --- title: Rust Development description: This is a document that contains a bunch of useful resources for getting started with Rust and adhering to our coding principles. -sidebar_order: 9050 +sidebar_order: 90 --- ## Getting Started diff --git a/develop-docs/development/testing.mdx b/develop-docs/development/testing.mdx index 49ec28fed65432..d70dfcf60133ab 100644 --- a/develop-docs/development/testing.mdx +++ b/develop-docs/development/testing.mdx @@ -1,7 +1,7 @@ --- title: Testing Tips description: We run several kinds of tests at Sentry as part of our CI process. This section aims to document some of the sentry specific helpers and give guidelines on what kinds of tests you should consider including when building new features. -sidebar_order: 20 +sidebar_order: 50 --- ## Getting Setup @@ -28,7 +28,7 @@ sentry devservices down --project test && sentry devservices up When using the `--project` option you can confirm which containers are running `docker ps`. Each running container should be prefixed with `test_`. See the -[devservices docs](/services/devservices/) section for more information on +[devservices docs](/development/devservices/) section for more information on managing services. ## Python Tests @@ -146,10 +146,10 @@ To create test models, modify the `Meta` of your test model, and assign the mode ```python class MyTestModel(models.Model): ... # some fields - + class Meta: app_label = "fixtures" - + ``` ### External Services diff --git a/develop-docs/development/workflow.mdx b/develop-docs/development/workflow.mdx index 5daf4399f80416..9e5ccd2510d25b 100644 --- a/develop-docs/development/workflow.mdx +++ b/develop-docs/development/workflow.mdx @@ -1,9 +1,9 @@ --- title: Workflow -sidebar_order: 80 +sidebar_order: 40 --- -You may also be interested in sentry vs. getsentry. +You may also be interested in sentry vs. getsentry. ## Testing Sentry commits in Getsentry diff --git a/develop-docs/development/inclusive-language.mdx b/develop-docs/getting-started/inclusive-language.mdx similarity index 100% rename from develop-docs/development/inclusive-language.mdx rename to develop-docs/getting-started/inclusive-language.mdx diff --git a/develop-docs/getting-started/index.mdx b/develop-docs/getting-started/index.mdx index b310965e589d45..799d8388fa88c3 100644 --- a/develop-docs/getting-started/index.mdx +++ b/develop-docs/getting-started/index.mdx @@ -8,13 +8,11 @@ sidebar_order: 1 We recommend going through the general documentation before contributing a change to Sentry. -- Development Philosophy (and SDK Development Philosophy) +- Development Philosophy (and SDK Development Philosophy) - Commit Messages - Code Review - Environment - Workflow -- Python Dependencies -- Documentation Guide -- Translations +- Application Architecture You can also take a glance at the [Sentry Dockerfile](https://github.com/getsentry/sentry/blob/master/self-hosted/Dockerfile) for more information on how the Sentry server is configured, including its system dependencies. diff --git a/develop-docs/development/philosophy.mdx b/develop-docs/getting-started/philosophy.mdx similarity index 100% rename from develop-docs/development/philosophy.mdx rename to develop-docs/getting-started/philosophy.mdx diff --git a/develop-docs/self-hosted/email.mdx b/develop-docs/self-hosted/email.mdx index 87d8047f59bef6..50f94a18f98936 100644 --- a/develop-docs/self-hosted/email.mdx +++ b/develop-docs/self-hosted/email.mdx @@ -12,7 +12,7 @@ sidebar_order: 40 Self-hosted Sentry ships with a built-in outgoing SMTP server powered by [exim4](https://hub.docker.com/r/tianon/exim4). The default configuration is set to use this server. All you need to do is to set a valid address for `mail.from` setting in `config.yml` and the [FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) of your Sentry instance for `SENTRY_MAIL_HOST` in `.env`. Keep in mind that if you start sending too many emails to public addresses, your new server may get marked as a spammer and banned. -If you want to use an external SMTP server you can set the relevant `mail.*` settings in `config.yml` file and ignore the built-in SMTP server. Refer to our [email service documentation](/services/email/) for all the details on what each setting means and does. If your MX records usually resolve to internal private network mail handlers, see [this ticket](https://github.com/getsentry/self-hosted/issues/1202) for some pointers. +If you want to use an external SMTP server you can set the relevant `mail.*` settings in `config.yml` file and ignore the built-in SMTP server. Refer to our [email service documentation](/backend/email/) for all the details on what each setting means and does. If your MX records usually resolve to internal private network mail handlers, see [this ticket](https://github.com/getsentry/self-hosted/issues/1202) for some pointers. Because of the way configuration is layered, if you update mail settings through the web interface, you will need to also comment out the mail.host: 'smtp' default in your config.yml in order for your desired settings to be picked up. @@ -20,4 +20,4 @@ If you want to use an external SMTP server you can set the relevant `mail.*` set ## Inbound Email -Sentry has very limited inbound mail support through [Mailgun](https://documentation.mailgun.com/en/latest/quickstart-receiving.html). You can find all the information regarding how to set this up over at our [inbound email service documentation](/services/email/#inbound-email). +Sentry has very limited inbound mail support through [Mailgun](https://documentation.mailgun.com/en/latest/quickstart-receiving.html). You can find all the information regarding how to set this up over at our [inbound email service documentation](/backend/email/#inbound-email). diff --git a/redirects.js b/redirects.js index 3bf2d88e99d52e..6f416026d95720 100644 --- a/redirects.js +++ b/redirects.js @@ -94,6 +94,106 @@ const developerDocsRedirects = [ source: '/sdk/processes/:path*', destination: '/sdk/development-process/:path*', }, + { + source: '/application/ab-testing/', + destination: '/backend/ab-testing/', + }, + { + source: '/application/api/:path*', + destination: '/backend/api/:path*', + }, + { + source: '/application/serializers/', + destination: '/backend/serializers/', + }, + { + source: '/application/feature-flags/:path*', + destination: '/backend/feature-flags/:path*', + }, + { + source: '/application/grouping/', + destination: '/backend/grouping/', + }, + { + source: '/application/issue-platform/', + destination: '/backend/issue-platform/', + }, + { + source: '/application/transaction-clustering/', + destination: '/backend/transaction-clustering/', + }, + { + source: '/application/translations/', + destination: '/backend/translations/', + }, + { + source: '/application/pii/:path*', + destination: '/backend/pii/:path*', + }, + { + source: '/backend/control-silo/', + destination: '/application/control-silo/', + }, + { + source: '/backend/cross-region-replication/', + destination: '/application/cross-region-replication/', + }, + { + source: '/backend/cross-region-rpc/', + destination: '/application/cross-region-rpc/', + }, + { + source: '/development/python-dependencies/', + destination: '/backend/python-dependencies/', + }, + { + source: '/development/docs/', + destination: '/development/documentation/', + }, + { + source: '/development/philosophy/', + destination: '/getting-started/philosophy/', + }, + { + source: '/services/metrics/', + destination: '/backend/metrics/', + }, + { + source: '/services/nodestore/', + destination: '/backend/nodestore/', + }, + { + source: '/services/devservices/', + destination: '/development/devservices/', + }, + { + source: '/services/queue/', + destination: '/backend/queue/', + }, + { + source: '/services/quotas/', + destination: '/backend/quotas/', + }, + { + source: '/services/tsdb/', + destination: '/services/tsdb/', + }, + { + source: '/services/ports/', + destination: '/development/environment/ports/', + }, + { + source: '/services/buffers/', + destination: '/backend/buffers/', + }, + { + source: '/services/digests/', + destination: '/backend/digests/', + }, + { + source: '/services/emails/', + destination: '/backend/emails/', + }, ]; /** @type {import('next/dist/lib/load-custom-routes').Redirect[]} */