Skip to main content

App error reporting and observability

Monitor Retool apps by connecting with Datadog or Sentry.

Retool supports monitoring and reporting of app errors using Datadog or Sentry. Once configured, app errors include a callstack and descriptive tags. Retool then reports any app errors in the production environment to a connected observability provider when interacting with an app in preview or public (end-user) mode.

You can create custom error reporting workflows with Retool Events if you want to use any other observability provider.

1. Configure observability provider

To configure Datadog:

  1. Create a Datadog pipeline to consume logs. Retool app errors will stream as error logs from service:retool-error-monitor.
  2. Create a Datadog API key to use in the next step.

2. Connect providers to Retool

Next, configure your Retool organization to connect to your observability provider. You can configure the connection by either:

  • Navigating to Settings > Observability.
  • Using the Retool API to programmatically configure observability provider connections.

Configure the API key setting with the Datadog API key you created in the previous step.

Error types

Retool reports the following error types and includes a callstack.

DescriptionTypeAdditional trace contents
Resource not foundQueryMissing resource name.
Error processing queryQueryQuery input values, context lines.
Query with failure responseQueryQuery input values, API request.
JS Code errorQueryContext lines, additional scope values.
Transformer errorTransformerContext lines.
Component errorComponentContext lines.
Page load errorServerModule UUID.

Error tags

Tags can be used to filter, categorize or route errors to different owners, using the following format tag:value.

Here is the updated table with the specified changes:

Error detailDatadog tagSentry tagExample
Nameapp_nameapp_nameMy App Name
Pathapp_pathapp_pathJenny/My App Name
Release tagapp_releaseapp_release0.1.0
App IDapp_uuidapp_uuida031dff4-1d38-11ef-8787-b7ac527da581
Browserbrowserbrowserchrome
Browser versionbrowser_versionbrowser_version124.0.0
Embed app Imported (if is_embedded is true)embed_uuidembed_uuid612dc16d-9230-4133-bf22-cfcac703a036
Environmentenvenvironmentproduction (only)
Whether or not app was loaded using an embed URLis_embeddedis_embeddedfalse
Log level (always error)levellevelerror
Module ID (if error originated from module)module_uuidmodule_uuid68ec78b2-f20b-11ee-bb14-13ef186a41a6
Organization IDorg_sidorg_sidorg_9848411250f241939b5092af3714b4c5
Imported query ID (if error originated from a query imported from the Query Library)playground_query_uuidplayground_query_uuid9ba338f8-ef18-4c83-8606-2bf775168ad0
Origin (either runtime or server)sourcesourceruntime
Operating systemososMac OS
Plugin ID for the widget, query, or function that triggered the errorplugin_idplugin_idbutton1
Retool versionreleaserelease3.58.0
Resource ID (if error originated from a query)resource_idresource_id526a6aa4-c237-4711-bc12-4a0c7a5fa276 or resource display name
Full URL used to access the app including any string and hash parametersurlurlhttps://example.retool.com/app/my-app?_releaseVersion=...
Email of the user who experienced the erroruseruser.emailjenny@retool.com
View mode (either presentation for apps in view mode or public for embedded apps).view_modeview_modepresentation

Filtering and routing

You can configure observability providers to filter and route errors reported for Retool apps.

Datadog errors are sent as logs. You can filter for all Retool app errors by setting service:retool-error-monitor, or any additional tags. Refer to Datadog's error tracking documentation to create rules for Retool app errors using service:retool-error-monitor.