### Complete Sentry Setup Example Source: https://context7.com/justtrackio/provider-sentry/llms.txt This comprehensive YAML manifest illustrates the setup of a complete Sentry project, including teams, projects, DSN keys, webhook plugins, and issue alert rules. It defines resources for a 'payments-service' microservice. ```yaml # Complete Sentry setup for a microservice --- # Team for the service owners apiVersion: sentry.justtrack.io/v1alpha1 kind: Team metadata: name: payments-team spec: forProvider: name: "Payments Team" organization: "my-org" slug: "payments-team" --- # Project for the payments service apiVersion: sentry.justtrack.io/v1alpha1 kind: Project metadata: name: payments-service spec: forProvider: name: "payments-service" slug: "payments-service" organization: "my-org" platform: "python" resolveAge: 168 # 1 week teamsRefs: - name: payments-team writeConnectionSecretToRef: name: payments-service-conn namespace: crossplane-system --- # DSN key for the service apiVersion: sentry.justtrack.io/v1alpha1 kind: Key metadata: name: payments-service-key spec: forProvider: name: "payments-service-production" organization: "my-org" projectRef: name: "payments-service" rateLimitCount: 500 rateLimitWindow: 60 writeConnectionSecretToRef: name: payments-dsn namespace: crossplane-system --- # Webhook plugin for external notifications apiVersion: sentry.justtrack.io/v1alpha1 kind: Plugin metadata: name: payments-webhook spec: forProvider: organization: "my-org" projectRef: name: "payments-service" plugin: "webhooks" config: urls: "https://alerts.example.com/sentry/payments" --- # Alert rule for critical payment errors apiVersion: sentry.justtrack.io/v1alpha1 kind: IssueAlert metadata: name: payments-critical-alert spec: forProvider: name: "Critical Payment Errors" organization: "my-org" projectRef: name: "payments-service" environment: "production" actionMatch: "any" filterMatch: "all" frequency: 1 # Alert every minute for critical issues conditions: - id: "sentry.rules.conditions.first_seen_event.FirstSeenEventCondition" - id: "sentry.rules.conditions.event_frequency.EventFrequencyCondition" value: "100" interval: "1h" filters: - id: "sentry.rules.filters.level.LevelFilter" level: "50" # CRITICAL level match: "gte" actions: - id: "sentry.rules.actions.notify_event_service.NotifyEventServiceAction" service: "webhooks" ``` -------------------------------- ### Install Provider Sentry using Up CLI Source: https://github.com/justtrackio/provider-sentry/blob/main/README.md Installs the Provider Sentry Crossplane provider using the Up command-line tool. Ensure you replace 'v0.0.0' with the latest release tag. ```bash up ctp provider install justtrack/provider-sentry:v0.0.0 ``` -------------------------------- ### Apply and Verify Complete Sentry Setup using Kubectl Source: https://context7.com/justtrackio/provider-sentry/llms.txt This section provides bash commands to apply the complete Sentry setup manifest and then wait for the resources to become ready. It also shows how to export the Sentry DSN and list all applied Sentry resources. ```bash # Apply the complete setup kubectl apply -f payments-sentry-setup.yaml # Wait for all resources to be ready kubectl wait --for=condition=Ready teams.sentry.justtrack.io/payments-team --timeout=60s kubectl wait --for=condition=Ready projects.sentry.justtrack.io/payments-service --timeout=60s kubectl wait --for=condition=Ready keys.sentry.justtrack.io/payments-service-key --timeout=60s # Get the DSN to use in your application export SENTRY_DSN=$(kubectl get keys.sentry.justtrack.io payments-service-key \ -o jsonpath='{.status.atProvider.dsnPublic}') echo "Configure your app with: SENTRY_DSN=$SENTRY_DSN" # View all Sentry resources kubectl get teams,projects,keys,issuealerts,plugins --selector=crossplane.io/claim-namespace ``` -------------------------------- ### Install Provider Sentry using kubectl Source: https://github.com/justtrackio/provider-sentry/blob/main/README.md Installs the Provider Sentry Crossplane provider declaratively using kubectl. This method applies a Provider resource definition to your Kubernetes cluster. ```yaml cat <