Has anyone integrated with a bug reporting API into their apps?

I am looking to allow my users to report bugs and feature requests right in their Retool App.

Has anyone done this and integrated with a bug tracking API? (Zoho, BugHerd, JIRA)

:wave: Heya,

Funny, I started looking into an error monitoring / bug reporting solution a couple of weeks back and started this setup:

I'm using clickup as my project management tool. Each app has it's own "feedback" modal with a simple form (type, priority, screenshots, etc) that sends data directly to clickup. I pass app, user and metadata with the request to better manage/sort/assign stories. It's getting more and more automated nowadays.

As time passed I noticed that people really only submitted feedback or reported bugs for really important things. Slowly submission rates declined after the initial buzz of the feature had passed.

Errors were still popping up.. I tried making the bug report form more "intelligent" by triggering it when a query failed and passing the error payload along with the form but that still left me with a huge bottleneck, the user.

Long story short, I started working on my own "Error monitor" and hooked it up to a few biz-critical apps. Currently active for ~ 10 days and it's going great!!

Whenever a query fails I send App/Query/User/Context data to a backend that standardizes and processes it.

Bit chunky, still building/thinking it out. But so far I missed 0 errors in my apps :stuck_out_tongue:

With "Retool DB" this could become insanely easy to implement (If only used for one account).

Today I started playing with query performance monitoring on my more important queries by saving timing metrics to localStorage and bulk ingesting it when the records hit a certain count.

Very keen to look at the data after some volume has come through.

But yeah, these are my two cents :stuck_out_tongue:

1 Like

This is good. Thanks for sharing your experience!

I got impatient and spooled up my own solution after dinner last night (my full name is Brad Reinvent-The-Wheel Mathews, don't we all think we can do it better?). I used Supabase so all of my clients can report to the same place. I built a UI where I could see and manage everything. I then built a widget (a bug icon) that pops up a modal where the user can report a problem or make a feature request. The widget also lets the user see past bugs/suggestions for that app and their status.

A couple of things I will modify based on your experience: I will include full app context. I am not entirely sure how helpful that will be yet, but it's cheap to do. I will probably only keep the bug reporting during beta and early deployment phase if usage fades. And need to add uploads for screenshots and such.

Also I had not seriously considered adding central error logging, but you illustrate that it is only a short step further to achieve this.

Nice :metal:

Loved the past submission history and status indicator. Just built it in by getting the tasks of a current_user via clickup and report updates.

For screenshots I'm attaching .downloadPage to the tasks, the PDF is surprisingly light and shows a clean state of the whole page. It doesn't include any overlaying components like notifications/confetti/etc.

I use xano mainly for the public endpoints and "easier" function stack management but would loooove to have DB access to my data. Just created a supabase account and started pushing data over.

Oh, .downloadPage for the screenshot - brilliant.

Damn, I just implemented file uploads on the client and image viewing in the management platform and now I have to go back and make some more changes. Looking at it a bit further, I am storing the base64 of the file right in the database - no file storage in sight. I guess I have to let the user take the .downloadPage screen cap which will download to their computer, and have them upload it.

I wonder if there is a way to get the screen cap into base64. (Tangent time) Ok back, I tried getDisplayMedia but Retool won't allow it yet.

What would be really sweet is if you could take a screencap and then allow the user to mark it up.

Yesss, that was my initial idea. Take a screenshot -> label/draw on it -> direct upload. getDisplayMedia would be a sweeet addition!

How are you getting data into supabase? Directly via DB query? I'm trying to add some public endpoints so I can use it with external apps as well. Any ideas?

A quick workaround would be to use something like make/zapier/n8n to act as the public endpoint and just propagate data to the DB but seems a bit clunky.

Two ways to use Supabase. The first is the one that gets first class citizen status is their API. Never used it, seems way too complicated but maybe useful if you can do full SQL on the back end and use the API to serve JSON to your end points where SQL is not practical or available.

Second is standard database connection like any other, they do hide the settings you need for that and I have to go hunting every time.

Got to Settings...Database and then scroll down to fid the connection info.

Edit: I use pgAdmin to create the tables, indexes, queries, manage dataand such even though most of that can be done in the Supabase website. It's what I know and is more powerful and flexible. You could can also use Retool Grid (in beta still I believe) to do all of that.

1 Like

how did you connected supabase to pgadmin4? im getting timeout with ssl and no ssl, but if i add it to my retool, it works

I just used the most basic of settings and it just worked.

Everything else is defaults.

Have you successfully connected to any other external Postgres instances from your computer? If not I would check to make sure there are no local or router firewall issues with port 5432, or whatever port you used. it has been quite a while, but I do dimly remember having to punch firewall holes.

1 Like

got it, was my firewall thank you!