You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							28 lines
						
					
					
						
							938 B
						
					
					
				
			
		
		
	
	
							28 lines
						
					
					
						
							938 B
						
					
					
				"""Install exception handler for process crash."""
 | 
						|
import sys
 | 
						|
import capnp
 | 
						|
 | 
						|
from selfdrive.swaglog import cloudlog
 | 
						|
from selfdrive.version import version
 | 
						|
 | 
						|
import sentry_sdk
 | 
						|
from sentry_sdk.integrations.threading import ThreadingIntegration
 | 
						|
 | 
						|
def capture_exception(*args, **kwargs):
 | 
						|
  exc_info = sys.exc_info()
 | 
						|
  if not exc_info[0] is capnp.lib.capnp.KjException:
 | 
						|
    sentry_sdk.capture_exception(*args, **kwargs)
 | 
						|
    sentry_sdk.flush()  # https://github.com/getsentry/sentry-python/issues/291
 | 
						|
  cloudlog.error("crash", exc_info=kwargs.get('exc_info', 1))
 | 
						|
 | 
						|
def bind_user(**kwargs):
 | 
						|
  sentry_sdk.set_user(kwargs)
 | 
						|
 | 
						|
def bind_extra(**kwargs):
 | 
						|
  for k, v in kwargs.items():
 | 
						|
    sentry_sdk.set_tag(k, v)
 | 
						|
 | 
						|
def init():
 | 
						|
  sentry_sdk.init("https://a8dc76b5bfb34908a601d67e2aa8bcf9@o33823.ingest.sentry.io/77924",
 | 
						|
                  default_integrations=False, integrations=[ThreadingIntegration(propagate_hub=True)],
 | 
						|
                  release=version)
 | 
						|
 |