Skip to content

Uploading iOS crash reports with send-envelope no longer works #3151

@ghugues

Description

@ghugues

CLI Version

3.2.1

Operating System and Architecture

  • macOS (arm64)
  • macOS (x86_64)
  • Linux (i686)
  • Linux (x86_64)
  • Linux (armv7)
  • Linux (aarch64)
  • Windows (i686)
  • Windows (x86_64)

Operating System Version

macOS Sequoia 15.7.2

Link to reproduction repository

No response

CLI Command

sentry-cli send-envelope /path/to/envelope-file

Exact Reproduction Steps

  • Create a valid envelop from an iOS crash report (documentation here).
  • Upload it to Sentry with the command line tool: sentry-cli send-envelope /path/to/envelope-file

Typically, the payload of an envelope looks like this:

{"event_id":"<event-id>"}
{"type":"event","length":<event-size>}
{"level":"fatal","platform":"cocoa","environment":"<environment>","release":"<release>"}
{"type":"attachment","attachment_type":"event.applecrashreport","content_type":"text/plain","length":<attachement-size>}
<crash-report>

The values in <> must be properly replaced.

Expected Results

The symbolicated crash report appears in Sentry's web interface.

Actual Results

Although the command itself still works and exits successfully (after printing /path/to/envelope-file dispatched), the backend processing of the crash report fails. In the web interface, it says "Invalid Apple Crash Report" although the crash report is valid.

There are 3 possible formats for crash reports (none of them work):

  • The historical textual format (.crash files). This is what Xcode Organizer provides when doing right click, show in Finder.
  • The JSON format (.ips files, not actually JSON because it's 2 JSON concatenated together). This is what can be extracted from a device or what Apple attaches to App Store rejections.
  • The "full report" (concatenation of the textual format and the JSON format). This is what the Console app shows when opening an ips file.

Examples:

Image

Logs

n/a

Metadata

Metadata

Assignees

No one assigned

    Projects

    Status

    Waiting for: Product Owner

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions