Safe Haskell | None |
---|---|
Language | Haskell2010 |
Network.Bugsnag
Description
A module for building Bugsnag report payloads. Please see the README at https://github.com/jwoudenberg/bugsnag-hs.
Synopsis
- sendEvents :: Manager -> ApiKey -> [Event] -> IO (Either HttpException ())
- data ApiKey
- apiKey :: Text -> ApiKey
- data Report
- defaultReport :: Report
- report_apiKey :: Report -> Maybe ApiKey
- report_payloadVersion :: Report -> PayloadVersion
- report_notifier :: Report -> Notifier
- report_events :: Report -> [Event]
- data Event
- defaultEvent :: Event
- event_exceptions :: Event -> [Exception]
- event_breadcrumbs :: Event -> Maybe [Breadcrumb]
- event_request :: Event -> Maybe Request
- event_threads :: Event -> Maybe [Thread]
- event_context :: Event -> Maybe Text
- event_groupingHash :: Event -> Maybe Text
- event_unhandled :: Event -> Maybe Bool
- event_severity :: Event -> Maybe Severity
- event_severityReason :: Event -> Maybe SeverityReason
- event_user :: Event -> Maybe User
- event_app :: Event -> Maybe App
- event_device :: Event -> Maybe Device
- event_session :: Event -> Maybe Session
- event_metaData :: Event -> Maybe Object
- data Exception
- defaultException :: Exception
- exception_errorClass :: Exception -> Text
- exception_message :: Exception -> Maybe Text
- exception_stacktrace :: Exception -> [StackFrame]
- exception_type :: Exception -> Maybe ExceptionType
- data StackFrame
- defaultStackFrame :: StackFrame
- stackFrame_file :: StackFrame -> Text
- stackFrame_lineNumber :: StackFrame -> Int
- stackFrame_columnNumber :: StackFrame -> Maybe Int
- stackFrame_method :: StackFrame -> Text
- stackFrame_inProject :: StackFrame -> Maybe Bool
- stackFrame_code :: StackFrame -> Maybe (HashMap Int Text)
- data Breadcrumb
- defaultBreadcrumb :: Breadcrumb
- breadcrumb_timestamp :: Breadcrumb -> Text
- breadcrumb_name :: Breadcrumb -> Text
- breadcrumb_type :: Breadcrumb -> BreadcrumbType
- breadcrumb_metaData :: Breadcrumb -> Maybe (HashMap Text Text)
- data Request
- defaultRequest :: Request
- request_clientIp :: Request -> Maybe Text
- request_headers :: Request -> Maybe (HashMap Text Text)
- request_httpMethod :: Request -> Maybe Text
- request_url :: Request -> Maybe Text
- request_referer :: Request -> Maybe Text
- data Thread
- defaultThread :: Thread
- thread_id :: Thread -> Maybe Text
- thread_name :: Thread -> Maybe Text
- thread_errorReportingThread :: Thread -> Maybe Bool
- thread_stacktrace :: Thread -> Maybe [StackFrame]
- thread_type :: Thread -> Maybe ThreadType
- data SeverityReason
- defaultSeverityReason :: SeverityReason
- severityReason_type :: SeverityReason -> SeverityReasonType
- severityReason_attributes :: SeverityReason -> SeverityReasonAttributes
- data SeverityReasonAttributes
- defaultSeverityReasonAttributes :: SeverityReasonAttributes
- severityReasonAttributes_errorType :: SeverityReasonAttributes -> Maybe Text
- severityReasonAttributes_level :: SeverityReasonAttributes -> Maybe Text
- severityReasonAttributes_signalType :: SeverityReasonAttributes -> Maybe Text
- severityReasonAttributes_violationType :: SeverityReasonAttributes -> Maybe Text
- severityReasonAttributes_errorClass :: SeverityReasonAttributes -> Maybe Text
- data User
- defaultUser :: User
- user_id :: User -> Maybe Text
- user_name :: User -> Maybe Text
- user_email :: User -> Maybe Text
- data App
- defaultApp :: App
- app_id :: App -> Maybe Text
- app_version :: App -> Maybe Text
- app_versionCode :: App -> Maybe Int
- app_bundleVersion :: App -> Maybe Text
- app_codeBundleId :: App -> Maybe Text
- app_buildUUID :: App -> Maybe Text
- app_releaseStage :: App -> Maybe Text
- app_type :: App -> Maybe Text
- app_dsymUUIDs :: App -> Maybe [Text]
- app_duration :: App -> Maybe Int
- app_durationInForeground :: App -> Maybe Int
- app_inForeground :: App -> Maybe Bool
- app_binaryArch :: App -> Maybe BinaryArch
- data Device
- defaultDevice :: Device
- device_hostname :: Device -> Maybe Text
- device_id :: Device -> Maybe Text
- device_manufacturer :: Device -> Maybe Text
- device_model :: Device -> Maybe Text
- device_modelNumber :: Device -> Maybe Text
- device_osName :: Device -> Maybe Text
- device_osVersion :: Device -> Maybe Text
- device_freeMemory :: Device -> Maybe Int
- device_totalMemory :: Device -> Maybe Int
- device_freeDisk :: Device -> Maybe Int
- device_browserName :: Device -> Maybe Text
- device_browserVersion :: Device -> Maybe Text
- device_jailBroken :: Device -> Maybe Bool
- device_orientation :: Device -> Maybe Text
- device_time :: Device -> Maybe Text
- device_cpuAbi :: Device -> Maybe [CpuAbi]
- device_runtimeVersions :: Device -> Maybe RuntimeVersions
- data RuntimeVersions
- defaultRuntimeVersions :: RuntimeVersions
- runtimeVersions_androidApi :: RuntimeVersions -> Maybe Text
- runtimeVersions_bottle :: RuntimeVersions -> Maybe Text
- runtimeVersions_celery :: RuntimeVersions -> Maybe Text
- runtimeVersions_clangVersion :: RuntimeVersions -> Maybe Text
- runtimeVersions_cocos2dx :: RuntimeVersions -> Maybe Text
- runtimeVersions_delayedJob :: RuntimeVersions -> Maybe Text
- runtimeVersions_django :: RuntimeVersions -> Maybe Text
- runtimeVersions_dotnet :: RuntimeVersions -> Maybe Text
- runtimeVersions_dotnetApiCompatibility :: RuntimeVersions -> Maybe Text
- runtimeVersions_dotnetClr :: RuntimeVersions -> Maybe Text
- runtimeVersions_dotnetScriptingRuntime :: RuntimeVersions -> Maybe Text
- runtimeVersions_eventMachine :: RuntimeVersions -> Maybe Text
- runtimeVersions_expoApp :: RuntimeVersions -> Maybe Text
- runtimeVersions_expoSdk :: RuntimeVersions -> Maybe Text
- runtimeVersions_flask :: RuntimeVersions -> Maybe Text
- runtimeVersions_gin :: RuntimeVersions -> Maybe Text
- runtimeVersions_go :: RuntimeVersions -> Maybe Text
- runtimeVersions_javaType :: RuntimeVersions -> Maybe Text
- runtimeVersions_javaVersion :: RuntimeVersions -> Maybe Text
- runtimeVersions_jruby :: RuntimeVersions -> Maybe Text
- runtimeVersions_laravel :: RuntimeVersions -> Maybe Text
- runtimeVersions_lumen :: RuntimeVersions -> Maybe Text
- runtimeVersions_magento :: RuntimeVersions -> Maybe Text
- runtimeVersions_mailman :: RuntimeVersions -> Maybe Text
- runtimeVersions_martini :: RuntimeVersions -> Maybe Text
- runtimeVersions_negroni :: RuntimeVersions -> Maybe Text
- runtimeVersions_node :: RuntimeVersions -> Maybe Text
- runtimeVersions_osBuild :: RuntimeVersions -> Maybe Text
- runtimeVersions_php :: RuntimeVersions -> Maybe Text
- runtimeVersions_python :: RuntimeVersions -> Maybe Text
- runtimeVersions_que :: RuntimeVersions -> Maybe Text
- runtimeVersions_rack :: RuntimeVersions -> Maybe Text
- runtimeVersions_rails :: RuntimeVersions -> Maybe Text
- runtimeVersions_rake :: RuntimeVersions -> Maybe Text
- runtimeVersions_reactNative :: RuntimeVersions -> Maybe Text
- runtimeVersions_reactNativeJsEngine :: RuntimeVersions -> Maybe Text
- runtimeVersions_resque :: RuntimeVersions -> Maybe Text
- runtimeVersions_revel :: RuntimeVersions -> Maybe Text
- runtimeVersions_ruby :: RuntimeVersions -> Maybe Text
- runtimeVersions_shoryoken :: RuntimeVersions -> Maybe Text
- runtimeVersions_sidekiq :: RuntimeVersions -> Maybe Text
- runtimeVersions_silex :: RuntimeVersions -> Maybe Text
- runtimeVersions_sinatra :: RuntimeVersions -> Maybe Text
- runtimeVersions_springBoot :: RuntimeVersions -> Maybe Text
- runtimeVersions_springFramework :: RuntimeVersions -> Maybe Text
- runtimeVersions_swift :: RuntimeVersions -> Maybe Text
- runtimeVersions_symfony :: RuntimeVersions -> Maybe Text
- runtimeVersions_tornado :: RuntimeVersions -> Maybe Text
- runtimeVersions_unity :: RuntimeVersions -> Maybe Text
- runtimeVersions_unityScriptingBackend :: RuntimeVersions -> Maybe Text
- runtimeVersions_wordpress :: RuntimeVersions -> Maybe Text
- data Session
- defaultSession :: Session
- session_id :: Session -> Text
- session_startedAt :: Session -> Text
- session_events :: Session -> SessionEvents
- data SessionEvents
- defaultSessionEvents :: SessionEvents
- sessionEvents_handled :: SessionEvents -> Int
- sessionEvents_unhandled :: SessionEvents -> Int
- data PayloadVersion
- payloadVersion5 :: PayloadVersion
- data Notifier
- thisNotifier :: Notifier
- data ExceptionType
- cocoaExceptionType :: ExceptionType
- androidExceptionType :: ExceptionType
- browserjsExceptionType :: ExceptionType
- expojsExceptionType :: ExceptionType
- nodejsExceptionType :: ExceptionType
- data BreadcrumbType
- navigationBreadcrumbType :: BreadcrumbType
- requestBreadcrumbType :: BreadcrumbType
- processBreadcrumbType :: BreadcrumbType
- logBreadcrumbType :: BreadcrumbType
- userBreadcrumbType :: BreadcrumbType
- stateBreadcrumbType :: BreadcrumbType
- errorBreadcrumbType :: BreadcrumbType
- manualBreadcrumbType :: BreadcrumbType
- data ThreadType
- cocoaThreadType :: ThreadType
- androidThreadType :: ThreadType
- browserjsThreadType :: ThreadType
- data Severity
- errorSeverity :: Severity
- warningSeverity :: Severity
- infoSeverity :: Severity
- data SeverityReasonType
- unhandledExceptionSeverityReasonType :: SeverityReasonType
- unhandledErrorSeverityReasonType :: SeverityReasonType
- logSeverityReasonType :: SeverityReasonType
- signalSeverityReasonType :: SeverityReasonType
- strictModeSeverityReasonType :: SeverityReasonType
- unhandledPromiseRejectionSeverityReasonType :: SeverityReasonType
- callbackErrorInterceptSeverityReasonType :: SeverityReasonType
- errorClassSeverityReasonType :: SeverityReasonType
- unhandledPanicSeverityReasonType :: SeverityReasonType
- userCallbackSetSeveritySeverityReasonType :: SeverityReasonType
- userSpecifiedSeveritySeverityReasonType :: SeverityReasonType
- handledExceptionSeverityReasonType :: SeverityReasonType
- handledErrorSeverityReasonType :: SeverityReasonType
- handledPanicSeverityReasonType :: SeverityReasonType
- userContextSetSeveritySeverityReasonType :: SeverityReasonType
- anrErrorSeverityReasonType :: SeverityReasonType
- outOfMemorySeverityReasonType :: SeverityReasonType
- data BinaryArch
- x86BinaryArch :: BinaryArch
- x86_64BinaryArch :: BinaryArch
- arm32BinaryArch :: BinaryArch
- arm64BinaryArch :: BinaryArch
- data CpuAbi
- x86_64CpuAbi :: CpuAbi
Sending reports
sendEvents :: Manager -> ApiKey -> [Event] -> IO (Either HttpException ()) Source #
Send a batch of Event
s to Rollbar using a single HTTP request.
ApiKey
The API Key associated with the project. Informs Bugsnag which project has generated this error.
Report
The payload of a POST request to https://notify.bugsnag.com/
Instances
Show Report Source # | |
Generic Report Source # | |
ToJSON Report Source # | |
Defined in Network.Bugsnag | |
FromJSON Report Source # | |
type Rep Report Source # | |
Defined in Network.Bugsnag type Rep Report = D1 ('MetaData "Report" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'False) (C1 ('MetaCons "Report" 'PrefixI 'True) ((S1 ('MetaSel ('Just "report_apiKey") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ApiKey)) :*: S1 ('MetaSel ('Just "report_payloadVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PayloadVersion)) :*: (S1 ('MetaSel ('Just "report_notifier") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Notifier) :*: S1 ('MetaSel ('Just "report_events") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Event])))) |
defaultReport :: Report Source #
A default report.
report_apiKey :: Report -> Maybe ApiKey Source #
The API Key associated with the project. Informs Bugsnag which project has generated this error. This is provided for legacy notifiers. It is preferable to use the Bugsnag-Api-Key header instead.
report_payloadVersion :: Report -> PayloadVersion Source #
The version number of the payload. This is currently 5. The Bugsnag-Payload-Version header should be included as well, for compatibility reasons.
report_notifier :: Report -> Notifier Source #
Describes the notifier itself. These properties are used within Bugsnag to track error rates from a notifier.
report_events :: Report -> [Event] Source #
An array of error events that Bugsnag should be notified of. A notifier can choose to group notices into an array to minimize network traffic, or can notify Bugsnag each time an event occurs.
Event
An array of error events that Bugsnag should be notified of. A notifier can choose to group notices into an array to minimize network traffic, or can notify Bugsnag each time an event occurs.
Instances
defaultEvent :: Event Source #
A default event.
event_exceptions :: Event -> [Exception] Source #
An array of exceptions that occurred during this event. There must be at least one entry. Most of the time there will only be one exception, but some languages support "nested" or "caused by" exceptions. In this case, exceptions should be unwrapped and added to the array one at a time. The first exception raised should be first in this array.
event_breadcrumbs :: Event -> Maybe [Breadcrumb] Source #
An array of user- and system-initiated events which led up to an error, providing additional context. This list is sequential and ordered newest to oldest.
event_request :: Event -> Maybe Request Source #
Details about the web request from the client that experienced the error, if relevant. To display custom request data alongside these standard fields on the Bugsnag website, the custom data should be included in the metaData object in a request object.
event_threads :: Event -> Maybe [Thread] Source #
An array of background threads. This is optional but recommended for apps that rely heavily on threading. Threads should be in an order that makes sense for your application.
event_context :: Event -> Maybe Text Source #
A string representing what was happening in the application at the time of the error. This string could be used for grouping purposes, depending on the event. Usually this would represent the controller and action in a server based project. It could represent the screen that the user was interacting with in a client side project. For example: - On Ruby on Rails the context could be controller#action. - In Android, the context could be the top most Activity. - In iOS, the context could be the name of the top most UIViewController.
event_groupingHash :: Event -> Maybe Text Source #
Bugsnag's default error grouping can be overridden by specifying a custom grouping hash.
event_unhandled :: Event -> Maybe Bool Source #
Whether the error was unhandled. If true, the error was detected by the notifier because it was not handled by the application. If false, the errors was handled and reported using Bugsnag.notify.
event_severityReason :: Event -> Maybe SeverityReason Source #
Information about why the severity was picked.
event_user :: Event -> Maybe User Source #
Information about the user affected by the error. These fields are optional but highly recommended. To display custom user data alongside these standard fields on the Bugsnag website, the custom data should be included in the metaData object in a user object.
event_app :: Event -> Maybe App Source #
Information about the app where the error occurred. These fields are optional but highly recommended. To display custom app data alongside these standard fields on the Bugsnag website, the custom data should be included in the metaData object in an app object.
event_device :: Event -> Maybe Device Source #
Information about the computer/device running the app. These fields are optional but highly recommended. To display custom device data alongside these standard fields on the Bugsnag website, the custom data should be included in the metaData object in a device object.
event_session :: Event -> Maybe Session Source #
Details of any session information associated with the event. This can be used alongside the Bugsnag Session Tracking API to associate the event with a session so that a release's crash rate can be determined.
event_metaData :: Event -> Maybe Object Source #
An object containing any further data you wish to attach to this error event. This should contain one or more objects, with each object being displayed in its own tab on the event details on Bugsnag.
Exception
An exception that occurred during this event.
Instances
Show Exception Source # | |
Generic Exception Source # | |
ToJSON Exception Source # | |
Defined in Network.Bugsnag | |
FromJSON Exception Source # | |
type Rep Exception Source # | |
Defined in Network.Bugsnag type Rep Exception = D1 ('MetaData "Exception" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'False) (C1 ('MetaCons "Exception" 'PrefixI 'True) ((S1 ('MetaSel ('Just "exception_errorClass") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "exception_message") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "exception_stacktrace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [StackFrame]) :*: S1 ('MetaSel ('Just "exception_type") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ExceptionType))))) |
defaultException :: Exception Source #
A default exception.
exception_errorClass :: Exception -> Text Source #
The class of error which occurred. This field is used to group the errors together so should not contain any contextual information that would prevent correct grouping. This would ordinarily be the Exception name when dealing with an exception.
exception_message :: Exception -> Maybe Text Source #
The error message associated with the error. Usually this will contain some information about this specific instance of the error and is not used to group the errors.
exception_stacktrace :: Exception -> [StackFrame] Source #
An array of stackframe objects. Each object represents one line in the exception's stacktrace. Bugsnag uses this information to help with error grouping, as well as displaying it to the user.
exception_type :: Exception -> Maybe ExceptionType Source #
This should be set for the following platforms so that the stacktrace can be parsed correctly:
StackFrame
data StackFrame Source #
Each stackrame represents one line in the exception's stacktrace. Bugsnag uses this information to help with error grouping, as well as displaying it to the user.
Instances
defaultStackFrame :: StackFrame Source #
A default stackFrame.
stackFrame_file :: StackFrame -> Text Source #
The file that this stack frame was executing. It is recommended that you strip any unnecessary or common information from the beginning of the path.
stackFrame_lineNumber :: StackFrame -> Int Source #
The line of the file that this frame of the stack was in.
stackFrame_columnNumber :: StackFrame -> Maybe Int Source #
The column of the file that this frame of the stack was in.
stackFrame_method :: StackFrame -> Text Source #
The method that this particular stack frame is within.
stackFrame_inProject :: StackFrame -> Maybe Bool Source #
If this stacktrace line is in the user's project code, set this to true. It is useful for developers to be able to see which lines of a stacktrace are within their own application, and which are within third party libraries. This boolean field allows Bugsnag to display this information in the stacktrace as well as use the information to help group errors better.
stackFrame_code :: StackFrame -> Maybe (HashMap Int Text) Source #
The code in this file surrounding this line. This is an object containing key value pairs where each key is a line number and each value is the code from that line. You can include up to three lines on either side of the line where the error occurred. These will be displayed on the bugsnag dashboard when you expand that line.
Breadcrumb
data Breadcrumb Source #
User- and system-initiated event which led up to an error, providing additional context.
Instances
defaultBreadcrumb :: Breadcrumb Source #
A default breadcrumb.
breadcrumb_timestamp :: Breadcrumb -> Text Source #
The time at which the event occurred, in ISO 8601 format.
breadcrumb_name :: Breadcrumb -> Text Source #
A short summary describing the event, such as the user action taken or a new application state.
breadcrumb_type :: Breadcrumb -> BreadcrumbType Source #
A category which describes the breadcrumb, from the list of allowed values.
breadcrumb_metaData :: Breadcrumb -> Maybe (HashMap Text Text) Source #
Additional information about the event, as key/value pairs.
Request
Details about the web request from the client that experienced the error, if relevant. To display custom request data alongside these standard fields on the Bugsnag website, the custom data should be included in the metaData object in a request object.
Instances
Show Request Source # | |
Generic Request Source # | |
ToJSON Request Source # | |
Defined in Network.Bugsnag | |
FromJSON Request Source # | |
type Rep Request Source # | |
Defined in Network.Bugsnag type Rep Request = D1 ('MetaData "Request" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'False) (C1 ('MetaCons "Request" 'PrefixI 'True) ((S1 ('MetaSel ('Just "request_clientIp") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "request_headers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (HashMap Text Text)))) :*: (S1 ('MetaSel ('Just "request_httpMethod") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "request_url") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "request_referer") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)))))) |
defaultRequest :: Request Source #
A default request.
request_clientIp :: Request -> Maybe Text Source #
The IP address of the client that experienced the error.
request_referer :: Request -> Maybe Text Source #
The HTTP referer
Thread
An array of background threads. This is optional but recommended for apps that rely heavily on threading. Threads should be in an order that makes sense for your application.
Instances
Show Thread Source # | |
Generic Thread Source # | |
ToJSON Thread Source # | |
Defined in Network.Bugsnag | |
FromJSON Thread Source # | |
type Rep Thread Source # | |
Defined in Network.Bugsnag type Rep Thread = D1 ('MetaData "Thread" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'False) (C1 ('MetaCons "Thread" 'PrefixI 'True) ((S1 ('MetaSel ('Just "thread_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "thread_name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "thread_errorReportingThread") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "thread_stacktrace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe [StackFrame])) :*: S1 ('MetaSel ('Just "thread_type") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ThreadType)))))) |
defaultThread :: Thread Source #
A default thread.
thread_errorReportingThread :: Thread -> Maybe Bool Source #
If this is the thread that the error was reported from (either an unhandled error or a call to bugsnag.notify), set this to true.
thread_stacktrace :: Thread -> Maybe [StackFrame] Source #
An array of stacktrace objects. Each object represents one line in the stacktrace of the thread at the point that the error occurred.
thread_type :: Thread -> Maybe ThreadType Source #
Setting this allows the stacktrace to be parsed correctly.
SeverityReason
data SeverityReason Source #
Information about why the severity was picked.
Instances
defaultSeverityReason :: SeverityReason Source #
A default severityReason.
severityReason_type :: SeverityReason -> SeverityReasonType Source #
A type key that represents the reason for the assigned severity.
severityReason_attributes :: SeverityReason -> SeverityReasonAttributes Source #
Optional attributes to provide extra information about the severity reason.
SeverityReasonAttributes
data SeverityReasonAttributes Source #
Optional attributes to provide extra information about the severity reason.
Instances
defaultSeverityReasonAttributes :: SeverityReasonAttributes Source #
A default severityReasonAttributes.
severityReasonAttributes_errorType :: SeverityReasonAttributes -> Maybe Text Source #
Included for unhandledError severity reason. See PHP Error Constants.
severityReasonAttributes_level :: SeverityReasonAttributes -> Maybe Text Source #
Included for log severity reason.
severityReasonAttributes_signalType :: SeverityReasonAttributes -> Maybe Text Source #
Included for signal severity reason. See Signal Codes.
severityReasonAttributes_violationType :: SeverityReasonAttributes -> Maybe Text Source #
Included for strictMode severity reason. See Strict Mode.
severityReasonAttributes_errorClass :: SeverityReasonAttributes -> Maybe Text Source #
Included for errorClass severity reason. Specifies the error class that is automatically sent.
User
Information about the user affected by the error. These fields are optional but highly recommended. To display custom user data alongside these standard fields on the Bugsnag website, the custom data should be included in the metaData object in a user object.
Instances
Show User Source # | |
Generic User Source # | |
ToJSON User Source # | |
Defined in Network.Bugsnag | |
FromJSON User Source # | |
type Rep User Source # | |
Defined in Network.Bugsnag type Rep User = D1 ('MetaData "User" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'False) (C1 ('MetaCons "User" 'PrefixI 'True) (S1 ('MetaSel ('Just "user_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "user_name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "user_email") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))))) |
defaultUser :: User Source #
A default user.
user_id :: User -> Maybe Text Source #
A unique identifier for a user affected by this event. This could be any distinct identifier that makes sense for your application/platform.
App
Information about the app where the error occurred. These fields are optional but highly recommended. To display custom app data alongside these standard fields on the Bugsnag website, the custom data should be included in the metaData object in an app object.
Instances
defaultApp :: App Source #
A default app.
app_version :: App -> Maybe Text Source #
The version number of the application which generated the error.
app_versionCode :: App -> Maybe Int Source #
The version code of the application (Android only)
app_bundleVersion :: App -> Maybe Text Source #
The bundle version/build number of the application (iOSmacOStvOS only)
app_codeBundleId :: App -> Maybe Text Source #
A unique identifier to identify a code bundle release when using tools like CodePush (mobile only).
app_buildUUID :: App -> Maybe Text Source #
A build ID that is required to identify a specific build when the version and version code are the same.
app_releaseStage :: App -> Maybe Text Source #
The release stage that this error occurred in, for example "development", "staging" or "production".
app_type :: App -> Maybe Text Source #
A specialized type of the application, such as the worker queue or web framework used, like "rails", "mailman", or "celery".
app_dsymUUIDs :: App -> Maybe [Text] Source #
The UUIDs of the debug symbols file corresponding to this application, if any.
app_durationInForeground :: App -> Maybe Int Source #
How long the app has been in the foreground of the device in milliseconds.
app_inForeground :: App -> Maybe Bool Source #
Whether or not the app was in the foreground when the error occurred.
app_binaryArch :: App -> Maybe BinaryArch Source #
The architecture of the running binary (Android only).
Device
Information about the computer/device running the app. These fields are optional but highly recommended. To display custom device data alongside these standard fields on the Bugsnag website, the custom data should be included in the metaData object in a device object.
Instances
defaultDevice :: Device Source #
A default device.
device_hostname :: Device -> Maybe Text Source #
The hostname of the server running your code, if applicable.
device_freeDisk :: Device -> Maybe Int Source #
The number of unused bytes on the drive running the application.
device_browserName :: Device -> Maybe Text Source #
If a web application, the web browser used by the device.
device_browserVersion :: Device -> Maybe Text Source #
If a web application, the version of the browser used by the device.
device_jailBroken :: Device -> Maybe Bool Source #
Whether or not the device has been modified to give users root access.
device_orientation :: Device -> Maybe Text Source #
The orientation of the device at the time of the error.
device_time :: Device -> Maybe Text Source #
The time at which the error occurred, in ISO 8601 format.
device_runtimeVersions :: Device -> Maybe RuntimeVersions Source #
The versions of the relevant runtimes, languages and/or frameworks for the platform.
RuntimeVersions
data RuntimeVersions Source #
The versions of the relevant runtimes, languages and/or frameworks for the platform.
Instances
defaultRuntimeVersions :: RuntimeVersions Source #
A default runtimeVersions.
runtimeVersions_androidApi :: RuntimeVersions -> Maybe Text Source #
The Android API level (Android only).
runtimeVersions_bottle :: RuntimeVersions -> Maybe Text Source #
Bottle framework version (Python only).
runtimeVersions_celery :: RuntimeVersions -> Maybe Text Source #
Celery task queue version (Python only).
runtimeVersions_clangVersion :: RuntimeVersions -> Maybe Text Source #
Clang compiler version (iOStvOSmacOS only).
runtimeVersions_cocos2dx :: RuntimeVersions -> Maybe Text Source #
Cocos2d-x framework version (Cocos2d-x only).
runtimeVersions_delayedJob :: RuntimeVersions -> Maybe Text Source #
Delayed Job framework version (Ruby only).
runtimeVersions_django :: RuntimeVersions -> Maybe Text Source #
Django framework version (Python only).
runtimeVersions_dotnet :: RuntimeVersions -> Maybe Text Source #
Description of the framework (.NET only).
runtimeVersions_dotnetApiCompatibility :: RuntimeVersions -> Maybe Text Source #
.NET API compatibility level (Unity only).
runtimeVersions_dotnetClr :: RuntimeVersions -> Maybe Text Source #
Version of .NET Common Language Runtime (.NET only).
runtimeVersions_dotnetScriptingRuntime :: RuntimeVersions -> Maybe Text Source #
.NET scripting runtime version (Unity only).
runtimeVersions_eventMachine :: RuntimeVersions -> Maybe Text Source #
EventMachine library version (Ruby only).
runtimeVersions_expoApp :: RuntimeVersions -> Maybe Text Source #
Expo app version (Expo only).
runtimeVersions_expoSdk :: RuntimeVersions -> Maybe Text Source #
Expo SDK version (Expo only).
runtimeVersions_flask :: RuntimeVersions -> Maybe Text Source #
Flask framework version (Python only).
runtimeVersions_gin :: RuntimeVersions -> Maybe Text Source #
Gin framework version (Go only).
runtimeVersions_go :: RuntimeVersions -> Maybe Text Source #
Go language version (Go only).
runtimeVersions_javaType :: RuntimeVersions -> Maybe Text Source #
Java platform implementation type (Java only).
runtimeVersions_javaVersion :: RuntimeVersions -> Maybe Text Source #
Java platform implementation type (Java only).
runtimeVersions_jruby :: RuntimeVersions -> Maybe Text Source #
Version of JRuby (Ruby only).
runtimeVersions_laravel :: RuntimeVersions -> Maybe Text Source #
Laravel framework version (PHP only).
runtimeVersions_lumen :: RuntimeVersions -> Maybe Text Source #
Lumen framework version (PHP only).
runtimeVersions_magento :: RuntimeVersions -> Maybe Text Source #
Magento platform version (PHP only).
runtimeVersions_mailman :: RuntimeVersions -> Maybe Text Source #
Mailman framework version (Ruby only).
runtimeVersions_martini :: RuntimeVersions -> Maybe Text Source #
Martini framework version (Go only).
runtimeVersions_negroni :: RuntimeVersions -> Maybe Text Source #
Negroni framework version (Go only).
runtimeVersions_node :: RuntimeVersions -> Maybe Text Source #
Node.js version (Javascript only).
runtimeVersions_osBuild :: RuntimeVersions -> Maybe Text Source #
Build number of the OS (iOStvOSmacOS only).
runtimeVersions_php :: RuntimeVersions -> Maybe Text Source #
Version of PHP (PHP only).
runtimeVersions_python :: RuntimeVersions -> Maybe Text Source #
Version of Python (Python only).
runtimeVersions_que :: RuntimeVersions -> Maybe Text Source #
Que job queue version (Ruby only).
runtimeVersions_rack :: RuntimeVersions -> Maybe Text Source #
Rack webserver version (Ruby only).
runtimeVersions_rails :: RuntimeVersions -> Maybe Text Source #
Ruby on Rails version (Ruby only).
runtimeVersions_rake :: RuntimeVersions -> Maybe Text Source #
Rake tool version (Ruby only).
runtimeVersions_reactNative :: RuntimeVersions -> Maybe Text Source #
Version of React Native (React Native/Expo only).
runtimeVersions_reactNativeJsEngine :: RuntimeVersions -> Maybe Text Source #
Javascript engine type (React Native/Expo only).
runtimeVersions_resque :: RuntimeVersions -> Maybe Text Source #
Resque library version (Ruby only).
runtimeVersions_revel :: RuntimeVersions -> Maybe Text Source #
Revel framework version (Go only).
runtimeVersions_ruby :: RuntimeVersions -> Maybe Text Source #
Version of Ruby (Ruby only).
runtimeVersions_shoryoken :: RuntimeVersions -> Maybe Text Source #
Shoryoken framework version (Ruby only).
runtimeVersions_sidekiq :: RuntimeVersions -> Maybe Text Source #
Sidekiq scheduler version (Ruby only).
runtimeVersions_silex :: RuntimeVersions -> Maybe Text Source #
Silex framework version (PHP only).
runtimeVersions_sinatra :: RuntimeVersions -> Maybe Text Source #
Sinatra DSL version (Ruby only).
runtimeVersions_springBoot :: RuntimeVersions -> Maybe Text Source #
Spring Boot framework version (Java only).
runtimeVersions_springFramework :: RuntimeVersions -> Maybe Text Source #
Spring framework version (Java only).
runtimeVersions_swift :: RuntimeVersions -> Maybe Text Source #
Swift language version (iOStvOSmacOS only).
runtimeVersions_symfony :: RuntimeVersions -> Maybe Text Source #
Symfony framework version (PHP only).
runtimeVersions_tornado :: RuntimeVersions -> Maybe Text Source #
Tornado framework version (Python only).
runtimeVersions_unity :: RuntimeVersions -> Maybe Text Source #
Version of Unity.
runtimeVersions_unityScriptingBackend :: RuntimeVersions -> Maybe Text Source #
The Unity scripting backend - Mono or IL2CPP (Unity only).
runtimeVersions_wordpress :: RuntimeVersions -> Maybe Text Source #
Wordpress version (PHP only).
Session
Details of any session information associated with the event. This can be used alongside the Bugsnag Session Tracking API to associate the event with a session so that a release's crash rate can be determined.
Instances
Show Session Source # | |
Generic Session Source # | |
ToJSON Session Source # | |
Defined in Network.Bugsnag | |
FromJSON Session Source # | |
type Rep Session Source # | |
Defined in Network.Bugsnag type Rep Session = D1 ('MetaData "Session" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'False) (C1 ('MetaCons "Session" 'PrefixI 'True) (S1 ('MetaSel ('Just "session_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Just "session_startedAt") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "session_events") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SessionEvents)))) |
defaultSession :: Session Source #
A default session.
session_id :: Session -> Text Source #
The unique identifier of the session.
session_startedAt :: Session -> Text Source #
The time (in ISO 8601 format) at which the session started.
session_events :: Session -> SessionEvents Source #
Details of the number of handled and unhandled events that have occurred so far in this session.
SessionEvents
data SessionEvents Source #
Details of the number of handled and unhandled events that have occurred so far in this session.
Instances
defaultSessionEvents :: SessionEvents Source #
A default sessionEvents.
sessionEvents_handled :: SessionEvents -> Int Source #
Details of the number of handled and unhandled events that have occurred so far in this session.
sessionEvents_unhandled :: SessionEvents -> Int Source #
The number of unhandled events that have occurred in this session (including this event)
PayloadVersion
data PayloadVersion Source #
The version number of the payload. This is currently 5. The Bugsnag-Payload-Version header should be included as well, for compatibility reasons.
Instances
payloadVersion5 :: PayloadVersion Source #
This API only supports payload version 5.
Notifier
Describes the notifier itself. These properties are used within Bugsnag to track error rates from a notifier.
Instances
Show Notifier Source # | |
Generic Notifier Source # | |
ToJSON Notifier Source # | |
Defined in Network.Bugsnag | |
FromJSON Notifier Source # | |
type Rep Notifier Source # | |
Defined in Network.Bugsnag type Rep Notifier = D1 ('MetaData "Notifier" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'False) (C1 ('MetaCons "Notifier" 'PrefixI 'True) (S1 ('MetaSel ('Just "notifier_name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Just "notifier_version") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "notifier_url") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))) |
thisNotifier :: Notifier Source #
Information describing the notifier in this module.
ExceptionType
data ExceptionType Source #
This should be set for the following platforms so that the stacktrace can be parsed correctly:
Instances
cocoaExceptionType :: ExceptionType Source #
For cocoa (iOStvOSmacOS)
androidExceptionType :: ExceptionType Source #
For android
browserjsExceptionType :: ExceptionType Source #
For browser-based JavaScript
expojsExceptionType :: ExceptionType Source #
For JavaScript in Expo
nodejsExceptionType :: ExceptionType Source #
For JavaScript in Node
BreadcrumbType
data BreadcrumbType Source #
A category which describes the breadcrumb, from the list of allowed values.
Instances
navigationBreadcrumbType :: BreadcrumbType Source #
Changing screens or content being displayed, with a defined destination and optionally a previous location.
requestBreadcrumbType :: BreadcrumbType Source #
Sending and receiving requests and responses.
processBreadcrumbType :: BreadcrumbType Source #
Performing an intensive task or query.
logBreadcrumbType :: BreadcrumbType Source #
Messages and severity sent to a logging platform.
userBreadcrumbType :: BreadcrumbType Source #
Actions performed by the user, like text input, button presses, or confirming/cancelling an alert dialog.
stateBreadcrumbType :: BreadcrumbType Source #
Changing the overall state of an app, such as closing, pausing, or being moved to the background, as well as device state changes like memory or battery warnings and network connectivity changes.
errorBreadcrumbType :: BreadcrumbType Source #
An error which was reported to Bugsnag encountered in the same session.
manualBreadcrumbType :: BreadcrumbType Source #
User-defined, manually added breadcrumbs.
Thread
data ThreadType Source #
Used for parsing the stack trace correctly.
Instances
Show ThreadType Source # | |
Defined in Network.Bugsnag Methods showsPrec :: Int -> ThreadType -> ShowS # show :: ThreadType -> String # showList :: [ThreadType] -> ShowS # | |
Generic ThreadType Source # | |
Defined in Network.Bugsnag Associated Types type Rep ThreadType :: Type -> Type # | |
ToJSON ThreadType Source # | |
Defined in Network.Bugsnag Methods toJSON :: ThreadType -> Value # toEncoding :: ThreadType -> Encoding # toJSONList :: [ThreadType] -> Value # toEncodingList :: [ThreadType] -> Encoding # | |
FromJSON ThreadType Source # | |
Defined in Network.Bugsnag | |
type Rep ThreadType Source # | |
Defined in Network.Bugsnag type Rep ThreadType = D1 ('MetaData "ThreadType" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'True) (C1 ('MetaCons "ThreadType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))) |
cocoaThreadType :: ThreadType Source #
For cocoa (iOStvOSmacOS)
androidThreadType :: ThreadType Source #
For android
browserjsThreadType :: ThreadType Source #
For browser-based JavaScript
Severity
The severity of the error
errorSeverity :: Severity Source #
The default for unhandled errors.
warningSeverity :: Severity Source #
The default when Bugsnag.notify is called.
infoSeverity :: Severity Source #
Can be used in manual Bugsnag.notify calls.
SeverityReasonType
data SeverityReasonType Source #
A type key that represents the reason for the assigned severity.
Instances
unhandledExceptionSeverityReasonType :: SeverityReasonType Source #
Whenever an uncaught exception is discovered (generic).
unhandledErrorSeverityReasonType :: SeverityReasonType Source #
When an error is discovered (PHP).
logSeverityReasonType :: SeverityReasonType Source #
Whenever a log message is sent (generic).
signalSeverityReasonType :: SeverityReasonType Source #
Whenever a "fatal" signal is discovered (iOS).
strictModeSeverityReasonType :: SeverityReasonType Source #
Whenever a strictMode issue is discovered (Android).
unhandledPromiseRejectionSeverityReasonType :: SeverityReasonType Source #
Whenever an unhandled promise rejection is discovered (JSNode JSReact Native).
callbackErrorInterceptSeverityReasonType :: SeverityReasonType Source #
callbackErrorIntercept (Node JS).
errorClassSeverityReasonType :: SeverityReasonType Source #
Whenever an exception with a particular class is automatically sent (Ruby).
unhandledPanicSeverityReasonType :: SeverityReasonType Source #
When a panic is unhandled and crashes the app (Go).
userCallbackSetSeveritySeverityReasonType :: SeverityReasonType Source #
Whenever a callback changes a report's severity (generic).
userSpecifiedSeveritySeverityReasonType :: SeverityReasonType Source #
Whenever a severity is set through a manual notify call (generic).
handledExceptionSeverityReasonType :: SeverityReasonType Source #
Whenever a handled exception is sent through (generic).
handledErrorSeverityReasonType :: SeverityReasonType Source #
Whenever a handled error is sent through (PHP).
handledPanicSeverityReasonType :: SeverityReasonType Source #
Whenever a panic is handled through AutoNotify or Recover (Go).
userContextSetSeveritySeverityReasonType :: SeverityReasonType Source #
Whenever a panic is handled through AutoNotify or Recover (Go).
anrErrorSeverityReasonType :: SeverityReasonType Source #
Whenever an ANR is detected (Android).
outOfMemorySeverityReasonType :: SeverityReasonType Source #
When an app is terminated because it used too much memory (Cocoa).
BinaryArch
data BinaryArch Source #
The architecture of the running binary (Android only).
Instances
Show BinaryArch Source # | |
Defined in Network.Bugsnag Methods showsPrec :: Int -> BinaryArch -> ShowS # show :: BinaryArch -> String # showList :: [BinaryArch] -> ShowS # | |
Generic BinaryArch Source # | |
Defined in Network.Bugsnag Associated Types type Rep BinaryArch :: Type -> Type # | |
ToJSON BinaryArch Source # | |
Defined in Network.Bugsnag Methods toJSON :: BinaryArch -> Value # toEncoding :: BinaryArch -> Encoding # toJSONList :: [BinaryArch] -> Value # toEncodingList :: [BinaryArch] -> Encoding # | |
FromJSON BinaryArch Source # | |
Defined in Network.Bugsnag | |
type Rep BinaryArch Source # | |
Defined in Network.Bugsnag type Rep BinaryArch = D1 ('MetaData "BinaryArch" "Network.Bugsnag" "bugsnag-hs-0.2.0.12-FAjjmS4ZRDm5QLcMjcRGRP" 'True) (C1 ('MetaCons "BinaryArch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))) |
x86BinaryArch :: BinaryArch Source #
x86/i386 (32-bit).
x86_64BinaryArch :: BinaryArch Source #
x86 (64-bit).
arm32BinaryArch :: BinaryArch Source #
armeabi/armeabi-v7a (32-bit).
arm64BinaryArch :: BinaryArch Source #
arm64-v8a (64-bit).