Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions src/sentry/api/endpoints/organization_trace_logs.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
from sentry.models.organization import Organization
from sentry.models.project import Project
from sentry.organizations.services.organization import RpcOrganization
from sentry.search.events.types import SnubaParams, SnubaRow
from sentry.search.events.types import EventsResponse, SnubaParams
from sentry.snuba import ourlogs
from sentry.snuba.referrer import Referrer
from sentry.utils.validators import INVALID_ID_DETAILS, is_event_id
Expand Down Expand Up @@ -56,7 +56,7 @@ def query_logs_data(
orderby: list[str],
offset: int,
limit: int,
) -> list[SnubaRow]:
) -> EventsResponse:
"""Queries log data for a given trace"""
selected_columns = [
"sentry.item_id",
Expand Down Expand Up @@ -84,7 +84,7 @@ def query_logs_data(
limit=limit,
referrer=Referrer.API_TRACE_VIEW_LOGS.value,
)
return results["data"]
return results

def get(self, request: Request, organization: Organization) -> HttpResponse:
try:
Expand All @@ -104,11 +104,12 @@ def get(self, request: Request, organization: Organization) -> HttpResponse:

update_snuba_params_with_timestamp(request, snuba_params)

def data_fn(offset: int, limit: int) -> list[SnubaRow]:
def data_fn(offset: int, limit: int) -> EventsResponse:
with handle_query_errors():
return self.query_logs_data(snuba_params, trace_ids, orderby, offset, limit)

return self.paginate(
request=request,
paginator=GenericOffsetPaginator(data_fn=data_fn),
max_per_page=1000,
)
8 changes: 4 additions & 4 deletions tests/snuba/api/endpoints/test_organization_trace_logs.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ def test_simple(self):
format="json",
)
assert response.status_code == 200, response.content
data = response.data
data = response.data["data"]
assert len(data) == 1
log_data = data[0]
assert log_data["project.id"] == self.project.id
Expand Down Expand Up @@ -105,7 +105,7 @@ def test_multiple_traces(self):
format="json",
)
assert response.status_code == 200, response.content
data = response.data
data = response.data["data"]
assert len(data) == 2
log_data = data[0]
assert log_data["project.id"] == self.project.id
Expand Down Expand Up @@ -138,7 +138,7 @@ def test_orderby(self):
format="json",
)
assert response.status_code == 200, response.content
data = response.data
data = response.data["data"]
assert len(data) == 2
log_data = data[0]
assert log_data["project.id"] == self.project.id
Expand Down Expand Up @@ -196,7 +196,7 @@ def test_cross_project_query(self):
format="json",
)
assert response.status_code == 200, response.content
data = response.data
data = response.data["data"]
assert len(data) == 2
log_data = data[0]
assert log_data["project.id"] == self.project.id
Expand Down
Loading