[Feature request] Export Shopify Function failures to external observability tools

Hi Shopify Functions team,

Could Shopify expose failed Function runs to external observability tools?

Today, Function failures are only available in the Dev Dashboard. That creates an operational blind spot: merchants can be notified that a Function failed while developers may not see a corresponding actionable log, and there is no supported way to forward these failures to systems such as Sentry, GlitchTip, Datadog, or Grafana.

I am not proposing that Shopify Functions load a Sentry SDK inside the WASM runtime. A platform-level export would be more reliable because it could report failures that occur before or outside application code, including runtime exceptions, timeouts, memory or instruction-count limits, invalid modules, and invalid output schemas.

A useful implementation could provide one or more of:

  • A configurable HTTPS webhook for failed Function runs
  • A Sentry-compatible event or envelope destination
  • An OpenTelemetry-compatible export
  • Alert thresholds by Function, error type, or failure rate

The event could contain non-sensitive metadata by default:

  • Function and extension identifiers
  • App and Function version
  • Run ID and timestamp
  • Shop identifier
  • Error type
  • Duration, memory usage, and instruction count where available

Full Function input should remain excluded by default, with sensitive fields redacted. Delivery should support deduplication, rate limiting, and retries.

This would let app developers detect production failures quickly without polling the Dev Dashboard, while keeping observability independent from the Function’s own execution path.

Would Shopify consider adding a platform-level failure event or observability export for Functions?

Won’t work because Shopify decided to break function logs:

Somehow there are some apps with 3.000+ reviews that depend on this, but they haven’t come here to talk about this.

I think this is a separate but related issue. This proposal does not require exporting the full Function input or exposing fields restricted by missing scopes. Shopify could emit a sanitized platform-level failure event containing only non-sensitive metadata such as the Function ID, version, error type, timestamp, duration, and instruction count.

The current scope-based restrictions on Function logs are actually another reason why an independent failure notification channel would be useful: developers could at least know that a production failure occurred, even when the detailed log cannot be accessed.

A mockup about what I have in mind