Skip to content

[Python] Fix duplicate content in integration guides #5669

@antonpirker

Description

@antonpirker

Core or SDK?

Platform/SDK

Which part? Which one?

Python SDK, all the integration guides

Description

We have around 20 integrations in the Python SDK.
We have one guide for each of our integrations, like this one:
https://docs.sentry.io/platforms/python/guides/django/

The guide shows how to install, configure and verify a correct installation of a integrations. Plus sometimes describes the behavior of the integration.

This is good.

But all the documentation that is not specific to an integration, but relate to the general Python SDK and is the same for all the integrations is duplicated inside the integration guides.

See this one example for "Set transaction name":
https://docs.sentry.io/platforms/python/guides/django/enriching-events/transaction-name/
https://docs.sentry.io/platforms/python/guides/bottle/enriching-events/transaction-name/
https://docs.sentry.io/platforms/python/guides/celery/enriching-events/transaction-name/
https://docs.sentry.io/platforms/python/guides/chalice/enriching-events/transaction-name/
https://docs.sentry.io/platforms/python/guides/falcon/enriching-events/transaction-name/
https://docs.sentry.io/platforms/python/guides/fastapi/enriching-events/transaction-name/
https://docs.sentry.io/platforms/python/guides/flask/enriching-events/transaction-name/
https://docs.sentry.io/platforms/python/guides/pyramid/enriching-events/transaction-name/

And here is the page in the "normal" Python documentation:
https://docs.sentry.io/platforms/python/enriching-events/transaction-name/

This is very confusing. If I am in the Django guide and I search for "transaction name" and then get a result of the Flask guide for transaction naming I ask myself: "Is this the same as it is in Django? I probably have to find the Django one. But there is also a general Python page for transacting naming... Does it work differently in Django than in normal Python?"

Suggested Solution

Keep the "Start Page" of the integration guides with the same URLs:
https://docs.sentry.io/platforms/python/guides/django/

We then put all the integration guides in the the left sidebar menu so the structure is like this:

SENTRY FOR PYTHON
- Getting Started
- Integrations
    - Django
    - Flask
    - FastAPI
    - ...
- Configuration
- ...

These integration pages contain everything that is Integration specific (which is most of the time just the installation and some description of the behavior. I also guess this is the page that people find on Google)

We remove all the duplicate pages and make a permanent redirect (HTTP 301 Moved Permanently) on those URLs to the standard Python page of that page. This way the duplicate pages will be dropped from the Google index and only the "normal" Python page will show up in search results.

Additionally we remove the "Related Guides" from the right sidebar (see for example here: https://docs.sentry.io/platforms/python/) because it noisy and removed focus from the "On this page" section above.

The list of guides is now in the main sidebar on the left, so no need to have it in two sidebars.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions