@bugfender/capacitor
Remote logging, crash reporting and in-app user feedback with Bugfender and Capacitor.
This module is a plugin for Capacitor since version 4. You can use @bugfender/capacitor
in Ionic projects for iOS, Android, web and electron platforms.
Installation
npm install @bugfender/capacitor @bugfender/sdk @bugfender/common
npx cap sync
Usage
Import Bugfender like this:
import { Bugfender } from '@bugfender/capacitor';
Note: in an Ionic/Capacitor project, always import @bugfender/capacitor
instead of @bugfender/sdk
.
This will enable the native features of the SDK that you wouldn't get otherwise.
API
Please check the following URL for a complete API reference: https://js.bugfender.com.
init(...)
init(options: SDKOptions) => Promise<void>
Param | Type |
---|
options | SDKOptions |
forceSendOnce()
forceSendOnce() => void
getDeviceURL()
getDeviceURL() => Promise<string>
Returns: Promise<string>
getSessionURL()
getSessionURL() => Promise<string>
Returns: Promise<string>
getUserFeedback(...)
getUserFeedback(options?: UserFeedbackOptions | undefined) => Promise<UserFeedbackResult>
Param | Type |
---|
options | UserFeedbackOptions |
Returns: Promise<UserFeedbackResult>
log(...)
log(obj: unknown, ...objs: unknown[]) => void
Param | Type |
---|
obj | unknown |
objs | unknown[] |
log(...)
log(msg: string, ...subst: unknown[]) => void
Param | Type |
---|
msg | string |
subst | unknown[] |
warn(...)
warn(obj: unknown, ...objs: unknown[]) => void
Param | Type |
---|
obj | unknown |
objs | unknown[] |
warn(...)
warn(msg: string, ...subst: unknown[]) => void
Param | Type |
---|
msg | string |
subst | unknown[] |
error(...)
error(obj: unknown, ...objs: unknown[]) => void
Param | Type |
---|
obj | unknown |
objs | unknown[] |
error(...)
error(msg: string, ...subst: unknown[]) => void
Param | Type |
---|
msg | string |
subst | unknown[] |
trace(...)
trace(obj: unknown, ...objs: unknown[]) => void
Param | Type |
---|
obj | unknown |
objs | unknown[] |
trace(...)
trace(msg: string, ...subst: unknown[]) => void
Param | Type |
---|
msg | string |
subst | unknown[] |
info(...)
info(obj: unknown, ...objs: unknown[]) => void
Param | Type |
---|
obj | unknown |
objs | unknown[] |
info(...)
info(msg: string, ...subst: unknown[]) => void
Param | Type |
---|
msg | string |
subst | unknown[] |
fatal(...)
fatal(obj: unknown, ...objs: unknown[]) => void
Param | Type |
---|
obj | unknown |
objs | unknown[] |
fatal(...)
fatal(msg: string, ...subst: unknown[]) => void
Param | Type |
---|
msg | string |
subst | unknown[] |
removeDeviceKey(...)
removeDeviceKey(key: string) => void
sendLog(...)
sendLog(log: LogEntry) => void
sendIssue(...)
sendIssue(title: string, text: string) => Promise<string>
Param | Type |
---|
title | string |
text | string |
Returns: Promise<string>
sendCrash(...)
sendCrash(title: string, text: string) => Promise<string>
Param | Type |
---|
title | string |
text | string |
Returns: Promise<string>
sendUserFeedback(...)
sendUserFeedback(title: string, text: string) => Promise<string>
Param | Type |
---|
title | string |
text | string |
Returns: Promise<string>
setDeviceKey(...)
setDeviceKey(key: string, value: DeviceKeyValue) => void
Param | Type |
---|
key | string |
value | DeviceKeyValue |
setForceEnabled(...)
setForceEnabled(state: boolean) => void
Interfaces
SDKOptions
Prop | Type | Description |
---|
appKey | string | The app key to log into |
apiURL | string | Base URL to Bugfender API |
build | string | App build identifier |
baseURL | string | Base URL to Bugfender web dashboard |
debug | boolean | Set SDK in debug mode |
deviceName | string | Device name, this will be shown on the dashboard devices list. Defaults to browser + OS. |
overrideConsoleMethods | boolean | Override default window.console so it also logs to Bugfender. Defaults to true . |
printToConsole | boolean | Print also with window.console when Bugfender logging methods are called. Defaults to true . |
logBrowserEvents | boolean | Register a handler for most common browser events to report them to Bugfender. Defaults to true . |
logUIEvents | boolean | Register a handler for most common UI events to report them to Bugfender. Defaults to true . |
registerErrorHandler | boolean | Register error handler for uncaught errors that reports a crash to Bugfender. Defaults to true . |
version | string | App version identifier |
maximumLocalStorageSize | number | Set the maximum size to store local log files in bytes. Range accepted is from 1MB to 50MB. Defaults to 5MB. iOS & Android only. |
enableLogcatLogging | boolean | Logs all logs written via Logcat. Defaults to false . Android only. |
UserFeedbackResultSuccess
Prop | Type | Description |
---|
isSent | true | The user has sent the feedback. |
feedbackURL | string | Bugfender URL for the feedback. |
UserFeedbackResultCancel
Prop | Type | Description |
---|
isSent | false | The user has closed the modal without sending it. |
UserFeedbackOptions
Options object for Bugfender.getUserFeedback
with customised modal strings.
Prop | Type | Description |
---|
title | string | Default: Feedback . |
hint | string | Default: Please insert your feedback here and click send . |
subjectPlaceholder | string | Default: Subject… . |
feedbackPlaceholder | string | Default: Your feedback… . |
submitLabel | string | Default: Send . |
closeLabel | string | Default: Close . iOS only. |
LogEntry
Log Entry object interface
Prop | Type | Description |
---|
line | number | The line number where the log was triggered from |
level | LogLevel | The log's level based on LogLevel constant |
tag | string | The log's tag |
method | string | The method name where the log was triggered from |
file | string | The file name where the log was triggered from |
text | string | unknown[] | Text can be either: - string with the content - unknown[] array compatible with console.* signature |
url | string | The log's origin URL. This attribute is ignored on Android & iOS |
Type Aliases
UserFeedbackResult
UserFeedbackResultSuccess | UserFeedbackResultCancel
DeviceKeyValue
string | number | boolean
Enums
LogLevel
Members | Value |
---|
Debug | 0 |
Warning | 1 |
Error | 2 |
Trace | 3 |
Info | 4 |
Fatal | 5 |