Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sentry: Destination Connector #393

Open
Mohith93 opened this issue Sep 30, 2024 · 3 comments
Open

Sentry: Destination Connector #393

Mohith93 opened this issue Sep 30, 2024 · 3 comments
Assignees

Comments

@Mohith93
Copy link

Feature Request: Sentry Destination Connector

Issue Type: New Feature / Connector Request

Description

We need to build a Sentry Destination Connector that allows users to send error logs and performance data from Multiwoven to their Sentry account. This connector will help users automate the tracking and reporting of errors, exceptions, and performance metrics in Sentry, providing deeper insights into application health and error diagnostics.

Requirements

  • Authentication:
    The connector should support API Key or Token-based Authentication to interact securely with the Sentry API. The user will need to generate an API token from their Sentry account.

  • Configuration:
    The connector should require the following configuration parameters:

    • api_token: The API token generated in Sentry.
    • organization_slug: The organization identifier within Sentry.
    • project_slug: The project identifier in Sentry where events and errors will be sent.
  • Connector Features:
    The destination connector should be able to:

    1. Send error logs, exception details, and performance metrics to Sentry.
    2. Provide real-time error reporting and monitoring.
    3. Allow users to map error data from Multiwoven to relevant Sentry fields.
    4. Track the success or failure of data sent to Sentry and handle any errors during the sync process.
  • API Interaction:
    The connector should use the Sentry API to send events, errors, and logs. API documentation can be found here:
    Sentry API Documentation

  • Data Format:
    Data sent to Sentry must follow the required structure for event logging, including error type, stack trace, message, severity level, and additional metadata (e.g., environment, release, and tags).

  • Error Handling:
    The connector should handle errors gracefully, providing meaningful error messages for issues like invalid API tokens, organization or project mismatches, or data format problems.

Steps to Implement

  1. Authentication Setup:

    • Implement API Key or Token-based authentication to securely interact with Sentry’s API.
  2. Connector Configuration:

    • Create a configuration file that accepts the required parameters such as api_token, organization_slug, and project_slug.
  3. API Integration:

    • Implement the logic to:
      • Send error events and performance data to the Sentry API.
      • Support reporting of various log levels (e.g., error, warning, info).
      • Send additional metadata such as environment information, release tags, or user context.
  4. Field Mapping:

    • Enable users to map error data fields from Multiwoven to Sentry's data fields (e.g., stack trace, error message, severity level).
    • Handle custom tags and metadata.
  5. Error Handling & Logging:

    • Implement error handling for authentication failures, invalid organization or project identifiers, and API rate limits.
    • Provide detailed logs for successful and failed error/event submissions.
  6. Testing:

    • Write unit tests and integration tests to ensure the connector functions correctly.
    • Simulate API interactions using mocks to handle different types of errors and events.
  7. Documentation:

    • Provide a detailed README.md explaining how to configure and use the connector.
    • Include examples of error reporting, event logging, and field mappings.

Acceptance Criteria

  • The connector successfully sends error logs and performance metrics to Sentry.
  • Proper error handling is implemented, and detailed logs are available for troubleshooting.
  • Unit and integration tests provide coverage for key scenarios such as event logging, error reporting, and metadata syncing.
  • Comprehensive documentation is provided to help users configure and use the connector.

Resources

Copy link

linear bot commented Sep 30, 2024

@Raushan998
Copy link

@Mohith93 I want to contribute on this enhancement.

@macintushar
Copy link
Member

@Raushan998 FYI this is for a Multiwoven Connector, similar to Postgres or Iterable, not for integrating Sentry into the platform.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants