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.
npm install @bugfender/capacitor @bugfender/sdk @bugfender/common
npx cap sync
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.
Please check the following URL for a complete API reference: https://js.bugfender.com.
init(options: SDKOptions) => Promise<void>
getDeviceURL() => Promise<string>
Returns: Promise<string>
getSessionURL() => Promise<string>
Returns: Promise<string>
getUserFeedback(options?: UserFeedbackOptions | undefined) => Promise<UserFeedbackResult>
Returns: Promise<UserFeedbackResult>
log(obj: unknown, ...objs: unknown[]) => void
Param |
Type |
obj |
unknown |
objs |
unknown[] |
log(msg: string, ...subst: unknown[]) => void
Param |
Type |
msg |
string |
subst |
unknown[] |
warn(obj: unknown, ...objs: unknown[]) => void
Param |
Type |
obj |
unknown |
objs |
unknown[] |
warn(msg: string, ...subst: unknown[]) => void
Param |
Type |
msg |
string |
subst |
unknown[] |
error(obj: unknown, ...objs: unknown[]) => void
Param |
Type |
obj |
unknown |
objs |
unknown[] |
error(msg: string, ...subst: unknown[]) => void
Param |
Type |
msg |
string |
subst |
unknown[] |
trace(obj: unknown, ...objs: unknown[]) => void
Param |
Type |
obj |
unknown |
objs |
unknown[] |
trace(msg: string, ...subst: unknown[]) => void
Param |
Type |
msg |
string |
subst |
unknown[] |
info(obj: unknown, ...objs: unknown[]) => void
Param |
Type |
obj |
unknown |
objs |
unknown[] |
info(msg: string, ...subst: unknown[]) => void
Param |
Type |
msg |
string |
subst |
unknown[] |
fatal(obj: unknown, ...objs: unknown[]) => void
Param |
Type |
obj |
unknown |
objs |
unknown[] |
fatal(msg: string, ...subst: unknown[]) => void
Param |
Type |
msg |
string |
subst |
unknown[] |
removeDeviceKey(key: string) => void
sendLog(log: LogEntry) => void
sendIssue(title: string, text: string) => Promise<string>
Param |
Type |
title |
string |
text |
string |
Returns: Promise<string>
sendCrash(title: string, text: string) => Promise<string>
Param |
Type |
title |
string |
text |
string |
Returns: Promise<string>
sendUserFeedback(title: string, text: string) => Promise<string>
Param |
Type |
title |
string |
text |
string |
Returns: Promise<string>
setDeviceKey(key: string, value: DeviceKeyValue) => void
setForceEnabled(state: boolean) => void
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. |
Prop |
Type |
Description |
isSent |
false |
The user has closed the modal without sending it. |
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. |
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 |
UserFeedbackResultSuccess | UserFeedbackResultCancel
string | number | boolean
Members |
Value |
Debug |
0 |
Warning |
1 |
Error |
2 |
Trace |
3 |
Info |
4 |
Fatal |
5 |