Skip to content

Commit 11b75fe

Browse files
committed
add all values at once
1 parent 60045e6 commit 11b75fe

File tree

1 file changed

+16
-21
lines changed

1 file changed

+16
-21
lines changed

src/sentry/eventstore/models.py

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -549,36 +549,31 @@ def as_dict(self) -> Mapping[str, Any]:
549549
@memoize
550550
def search_message(self) -> str:
551551
"""
552-
The internal search_message attribute is only used for search purposes.
552+
The internal `search_message` attribute is only used for search purposes.
553553
It adds a bunch of data from the metadata and the culprit.
554554
"""
555555
data = self.data
556-
culprit = self.culprit
556+
metadata = self.get_event_metadata() or eventtypes.get(
557+
self.get_event_type()
558+
)().get_metadata(self.data)
559+
search_message_values = set()
557560

558-
event_metadata = self.get_event_metadata()
561+
search_message_values.add(self.culprit or "")
559562

560-
if event_metadata is None:
561-
event_metadata = eventtypes.get(self.get_event_type())().get_metadata(self.data)
562-
563-
message = ""
563+
for key, value in metadata.items():
564+
if key in SEARCH_MESSAGE_SKIPPED_KEYS or isinstance(value, (bool, int, float)):
565+
continue
566+
search_message_values.add(value)
564567

565568
if data.get("logentry"):
566-
message += data["logentry"].get("formatted") or data["logentry"].get("message") or ""
567-
568-
if event_metadata:
569-
for key, value in event_metadata.items():
570-
if key in SEARCH_MESSAGE_SKIPPED_KEYS or isinstance(value, (bool, int, float)):
571-
continue
569+
log_message = data["logentry"].get("formatted") or data["logentry"].get("message") or ""
570+
search_message_values.add(log_message)
572571

573-
value_u = force_str(value, errors="replace")
574-
if value_u not in message:
575-
message = f"{message} {value_u}"
576-
577-
if culprit and culprit not in message:
578-
culprit_u = force_str(culprit, errors="replace")
579-
message = f"{message} {culprit_u}"
572+
concatenated = " ".join(
573+
[force_str(value, errors="replace") for value in search_message_values]
574+
)
580575

581-
return cast(str, trim(message.strip(), settings.SENTRY_MAX_MESSAGE_LENGTH))
576+
return cast(str, trim(concatenated.strip(), settings.SENTRY_MAX_MESSAGE_LENGTH))
582577

583578
def _get_column_name(self, column: Columns) -> str:
584579
# Events are currently populated from the Events dataset

0 commit comments

Comments
 (0)