Browse Source

feat(alerts): Add consumer configs for eap results (#78969)

Adds subscription consumer for EAP results
edwardgou-sentry 3 months ago
parent
commit
c7987c94ed

+ 1 - 0
src/sentry/conf/server.py

@@ -2883,6 +2883,7 @@ KAFKA_TOPIC_TO_CLUSTER: Mapping[str, str] = {
     "transactions-subscription-results": "default",
     "generic-metrics-subscription-results": "default",
     "metrics-subscription-results": "default",
+    "eap-spans-subscription-results": "default",
     "ingest-events": "default",
     "ingest-feedback-events": "default",
     "ingest-feedback-events-dlq": "default",

+ 1 - 0
src/sentry/conf/types/kafka_definition.py

@@ -26,6 +26,7 @@ class Topic(Enum):
     TRANSACTIONS_SUBSCRIPTIONS_RESULTS = "transactions-subscription-results"
     GENERIC_METRICS_SUBSCRIPTIONS_RESULTS = "generic-metrics-subscription-results"
     METRICS_SUBSCRIPTIONS_RESULTS = "metrics-subscription-results"
+    EAP_SPANS_SUBSCRIPTIONS_RESULTS = "eap-spans-subscription-results"
     INGEST_EVENTS = "ingest-events"
     INGEST_EVENTS_DLQ = "ingest-events-dlq"
     INGEST_FEEDBACK_EVENTS = "ingest-feedback-events"

+ 6 - 0
src/sentry/consumers/__init__.py

@@ -301,6 +301,12 @@ KAFKA_CONSUMERS: Mapping[str, ConsumerDefinition] = {
         "click_options": multiprocessing_options(default_max_batch_size=100),
         "static_args": {"dataset": "metrics"},
     },
+    "eap-spans-subscription-results": {
+        "topic": Topic.EAP_SPANS_SUBSCRIPTIONS_RESULTS,
+        "strategy_factory": "sentry.snuba.query_subscriptions.run.QuerySubscriptionStrategyFactory",
+        "click_options": multiprocessing_options(default_max_batch_size=100),
+        "static_args": {"dataset": "events_analytics_platform"},
+    },
     "ingest-events": {
         "topic": Topic.INGEST_EVENTS,
         "strategy_factory": "sentry.ingest.consumer.factory.IngestStrategyFactory",

+ 1 - 0
src/sentry/runner/commands/devserver.py

@@ -37,6 +37,7 @@ _SUBSCRIPTION_RESULTS_CONSUMERS = [
     "transactions-subscription-results",
     "generic-metrics-subscription-results",
     "metrics-subscription-results",
+    "eap-spans-subscription-results",
 ]
 
 

+ 1 - 0
src/sentry/snuba/query_subscriptions/constants.py

@@ -7,6 +7,7 @@ dataset_to_logical_topic = {
     Dataset.Transactions: "transactions-subscription-results",
     Dataset.PerformanceMetrics: "generic-metrics-subscription-results",
     Dataset.Metrics: "metrics-subscription-results",
+    Dataset.EventsAnalyticsPlatform: "eap-spans-subscription-results",
 }
 
 topic_to_dataset = {

+ 1 - 0
tests/sentry/consumers/test_run.py

@@ -31,6 +31,7 @@ def test_dlq(consumer_def) -> None:
         "transactions-subscription-results",
         "generic-metrics-subscription-results",
         "metrics-subscription-results",
+        "eap-spans-subscription-results",
     ]
     consumers_that_should_have_dlq_but_dont = [
         "process-spans",