mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 14:37:29 -06:00
Prune all sensitive data before sending it to Sentry
CURA-7245
This commit is contained in:
parent
e52dc56a64
commit
62dfadecdf
3 changed files with 23 additions and 10 deletions
|
@ -3,6 +3,9 @@
|
|||
|
||||
from UM.Logger import LogOutput
|
||||
from typing import Set
|
||||
|
||||
from cura.CrashHandler import CrashHandler
|
||||
|
||||
try:
|
||||
from sentry_sdk import add_breadcrumb
|
||||
except ImportError:
|
||||
|
@ -10,8 +13,6 @@ except ImportError:
|
|||
from typing import Optional
|
||||
import os
|
||||
|
||||
home_dir = os.path.expanduser("~")
|
||||
|
||||
|
||||
class SentryLogger(LogOutput):
|
||||
# Sentry (https://sentry.io) is the service that Cura uses for logging crashes. This logger ensures that the
|
||||
|
@ -37,7 +38,7 @@ class SentryLogger(LogOutput):
|
|||
# \param message String containing message to be logged
|
||||
def log(self, log_type: str, message: str) -> None:
|
||||
level = self._translateLogType(log_type)
|
||||
message = self._pruneSensitiveData(message)
|
||||
message = CrashHandler.pruneSensitiveData(message)
|
||||
if level is None:
|
||||
if message not in self._show_once:
|
||||
level = self._translateLogType(log_type[0])
|
||||
|
@ -47,12 +48,6 @@ class SentryLogger(LogOutput):
|
|||
else:
|
||||
add_breadcrumb(level = level, message = message)
|
||||
|
||||
@staticmethod
|
||||
def _pruneSensitiveData(message):
|
||||
if home_dir in message:
|
||||
message = message.replace(home_dir, "<user_home>")
|
||||
return message
|
||||
|
||||
@staticmethod
|
||||
def _translateLogType(log_type: str) -> Optional[str]:
|
||||
return SentryLogger._levels.get(log_type)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue