Skip to content

Instantly share code, notes, and snippets.

@diyan
Last active April 8, 2018 02:27
Show Gist options
  • Save diyan/4541d7e58460f3d911debb35c3d00eaa to your computer and use it in GitHub Desktop.
Save diyan/4541d7e58460f3d911debb35c3d00eaa to your computer and use it in GitHub Desktop.
Payload for storing event in the Sentry. This only scratches the surface - each json.RawMessage is a nested JSON object.
type StoreEventRequest struct {
EventID string `json:"event_id"`
ProjectID int `json:"-"` // TODO type?
Logger string `json:"logger"`
Platform string `json:"platform"`
Culprit string `json:"culprit"`
Extra map[string]interface{} `json:"extra"`
Release string `json:"release"`
Timestamp *time.Time `json:"timestamp"`
Fingerprint []string `json:"fingerprint"`
Modules map[string]string `json:"modules"` // TODO type?
Tags map[string]string `json:"tags"`
Errors []models.EventError `json:"-"`
// Aliases for built-in interfaces
CSP json.RawMessage `json:"csp"`
Device json.RawMessage `json:"device"`
Exception json.RawMessage `json:"exception"`
LogEntry json.RawMessage `json:"logentry"`
Query json.RawMessage `json:"query"`
Repos json.RawMessage `json:"repos"`
Request json.RawMessage `json:"request"`
SDK json.RawMessage `json:"sdk"`
Stacktrace json.RawMessage `json:"stacktrace"`
Template json.RawMessage `json:"template"`
User json.RawMessage `json:"user"`
AppleCrashReport json.RawMessage `json:"applecrashreport"`
Breadcrumbs json.RawMessage `json:"breadcrumbs"`
Contexts json.RawMessage `json:"contexts"`
Threads json.RawMessage `json:"threads"`
DebugMeta json.RawMessage `json:"debug_meta"`
// Canonical path for the interfaces
ExceptionCanon json.RawMessage `json:"sentry.interfaces.Exception"`
LogEntryCanon json.RawMessage `json:"sentry.interfaces.Message"`
StacktraceCanon json.RawMessage `json:"sentry.interfaces.Stacktrace"`
TemplateCanon json.RawMessage `json:"sentry.interfaces.Template"`
QueryCanon json.RawMessage `json:"sentry.interfaces.Query"`
HTTPCanon json.RawMessage `json:"sentry.interfaces.Http"`
UserCanon json.RawMessage `json:"sentry.interfaces.User"`
CSPCanon json.RawMessage `json:"sentry.interfaces.Csp"`
AppleCrashReportCanon json.RawMessage `json:"sentry.interfaces.AppleCrashReport"`
BreadcrumbsCanon json.RawMessage `json:"sentry.interfaces.Breadcrumbs"`
ContextsCanon json.RawMessage `json:"sentry.interfaces.Contexts"`
ThreadsCanon json.RawMessage `json:"sentry.interfaces.Threads"`
DebugMetaCanon json.RawMessage `json:"sentry.interfaces.DebugMeta"`
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment