Admin
Admin.
- class controller.sentry.admin.AppAdmin(model, admin_site)[source]
Bases:
ProjectLinkMixin
,AdminConfirmMixin
,ActionFormMixin
,DjangoObjectActions
,DynamicArrayMixin
,ModelAdmin
App Admin.
- actions: Optional[List[str]] = ['bump_sample_rate']
- bump_sample_rate(request: HttpRequest, queryset: QuerySet[App], form: BumpForm = None) None [source]
This method is responsible for the bump sample rate action.
- change_actions = ['bump_sample_rate', 'enable_disable_metrics']
- changelist_actions = ['panic', 'unpanic']
- enable_disable_metrics(request: HttpRequest, queryset: QuerySet[App], form: MetricForm = None) None [source]
This method is responsible for the enable/disable metrics action.
- Parameters:
request (HttpRequest) – The request
queryset (QuerySet[App]) – The Apps to change
form (MetricForm) – The form
- formfield_overrides = {<class 'django.db.models.JSONField'>: {'widget': <django_json_widget.widgets.JSONEditorWidget object>}}
- get_active_status(obj: App) str [source]
This method return the status of the app based on last_seen.
- Parameters:
obj (App) – The app
- Returns:
is active
- Return type:
bool
- get_change_actions(request: HttpRequest, object_id: str, form_url: Optional[str]) list[str] [source]
This method return allowed change actions.
- Parameters:
request (HttpRequest) – The request
object_id (str) – The App reference
form_url (Optional[str]) – The form_url
- Returns:
All possible actions
- Return type:
list[str]
- get_changelist_actions(request: HttpRequest) list[str] [source]
This method return allowed changelist actions.
- Parameters:
request (HttpRequest) – The request
- Returns:
All possible actions
- Return type:
list[str]
- get_event_status(obj: App) str [source]
This method return a pretty event status html string.
- Parameters:
obj (App) – The app
- Returns:
The pretty status
- Return type:
str
- has_bump_sample_rate_permission(request: HttpRequest) bool [source]
This method return True if the user have the permission for bump sample rate action.
- Parameters:
request (HttpRequest) – The request
- Returns:
Is allowed
- Return type:
bool
- has_enable_disable_metrics_permission(request: HttpRequest) bool [source]
This method return True if the user have the permission for enable/disable metrics action.
- Parameters:
request (HttpRequest) – The request
- Returns:
Is allowed
- Return type:
bool
- has_panic_permission(request: HttpRequest) bool [source]
This method return True if the user have the permission for panic action.
- Parameters:
request (HttpRequest) – The request
- Returns:
Is allowed
- Return type:
bool
- has_unpanic_permission(request: HttpRequest) bool [source]
This method return True if the user have the permission for unpanic action.
- Parameters:
request (HttpRequest) – The request
- Returns:
Is allowed
- Return type:
bool
- inlines = [<class 'controller.sentry.inlines.AppEventInline'>]
- list_display = ['reference', 'get_event_status', 'get_project', 'get_active_status', 'default_sample_rate', 'active_sample_rate', 'active_window_end', 'wsgi_collect_metrics', 'celery_collect_metrics']
- list_filter = ['env', 'command', <class 'controller.sentry.filters.IsSpammingListFilter'>]
- property media
- ordering = ['reference', 'project__sentry_project_slug', 'env', 'command']
- panic(request: HttpRequest, queryset: QuerySet[App]) None [source]
This method activate the panic mode.
- Parameters:
request (HttpRequest) – The request
queryset (QuerySet[App]) – All the Apps (unused)
- read_only_fields = ['last_seen']
- save_model(request: HttpRequest, obj: App, form: ModelForm, change: bool) None [source]
This method is responsible to save app in the admin.
- Parameters:
request (HttpRequest) – The request
obj (App) – The app to save
form (ModelForm) – form
change (bool) – change
- search_fields = ['reference', 'project__sentry_project_slug', 'env', 'command']
- class controller.sentry.admin.EventAdmin(model, admin_site)[source]
Bases:
ProjectLinkMixin
,AdminConfirmMixin
,ActionFormMixin
,DjangoObjectActions
,DynamicArrayMixin
,PrettyTypeMixin
,ModelAdmin
Event Admin.
- formfield_overrides = {<class 'django.db.models.JSONField'>: {'widget': <django_json_widget.widgets.JSONEditorWidget object>}}
- list_display = ['reference', 'pretty_type', 'timestamp', 'get_project']
- property media
- ordering = ['reference', 'type', 'project__sentry_project_slug']
- search_fields = ['reference', 'type', 'project__sentry_project_slug']
- class controller.sentry.admin.ProjectAdmin(model, admin_site)[source]
Bases:
ChartMixin
,DynamicArrayMixin
,ModelAdmin
Project Admin.
- formfield_overrides = {<class 'django.db.models.JSONField'>: {'widget': <django_json_widget.widgets.JSONEditorWidget object>}}
- get_chart_data(sentry_id)[source]
This method return the chart data.
- Parameters:
sentry_id (str) – sentry id
- Returns:
tuple of data and options
- Return type:
Optional[Tuple[dict, dict]]
- inlines = [<class 'controller.sentry.inlines.ProjectEventInline'>]
- list_display = ['sentry_id', 'sentry_project_slug']
- property media
- ordering = ['sentry_id', 'sentry_project_slug']
- save_model(request: HttpRequest, obj: Project, form: ModelForm[Project], change: dict) None [source]
This method is responsible to save project in the admin.
We hook into it to start a
perform_detect
task
- search_fields = ['sentry_id', 'sentry_project_slug']