Skip to content
View as Markdown

Report

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L83-L193

Field Type Description
errors array of bitdrift.public.unary.issues.v1.Report.Error
device_metrics bitdrift.public.unary.issues.v1.Report.DeviceMetrics
thread_details bitdrift.public.unary.issues.v1.Report.ThreadDetails State of the thread when the event was reported.
app_metrics bitdrift.public.unary.issues.v1.Report.AppMetrics
fields array of bitdrift.public.unary.issues.v1.Report.Field Additional report fields captured from the client report payload.

Example

JSON
{
  "app_metrics": {
    "app_id": "com.example.app",
    "bundle_version": "1024",
    "version": "2.1.0"
  },
  "device_metrics": {
    "architecture": "ARM64",
    "battery_level": 72,
    "manufacturer": "Apple",
    "model": "iPhone15,2",
    "os": "iOS",
    "os_version": "17.4.1",
    "power_state": "RUNNING_ON_BATTERY",
    "time": "2024-01-15T09:30:00Z",
    "user_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  "errors": [
    {
      "details": "Attempted to dereference a null pointer",
      "frames": [
        {
          "frame_address": 4376830024,
          "frame_type": "DWARF",
          "image_id": "8c4e2a1b-3f56-4d89-a012-bc345678def0",
          "image_load_address": 4376829952,
          "image_path": "/usr/lib/libSystem.dylib",
          "in_app": false,
          "original_index": 3,
          "source_file": {
            "column": 5,
            "lineno": 42,
            "path": "src/main.rs"
          },
          "state": [
            "crashed"
          ],
          "status": "SYMBOLICATED",
          "symbol_address": 4376829952,
          "symbol_name": "_ZN5alloc5alloc18handle_alloc_error17h123456789abcdef0E",
          "symbolicated_name": "alloc::alloc::handle_alloc_error"
        }
      ],
      "reason": "EXC_BAD_ACCESS"
    }
  ],
  "fields": [
    {
      "key": "device_orientation",
      "value": "portrait"
    }
  ],
  "thread_details": {
    "threads": [
      {
        "active": true,
        "frames": [
          {
            "frame_address": 4376830024,
            "frame_type": "DWARF",
            "image_id": "8c4e2a1b-3f56-4d89-a012-bc345678def0",
            "image_load_address": 4376829952,
            "image_path": "/usr/lib/libSystem.dylib",
            "in_app": false,
            "original_index": 3,
            "source_file": {
              "column": 5,
              "lineno": 42,
              "path": "src/main.rs"
            },
            "state": [
              "crashed"
            ],
            "status": "SYMBOLICATED",
            "symbol_address": 4376829952,
            "symbol_name": "_ZN5alloc5alloc18handle_alloc_error17h123456789abcdef0E",
            "symbolicated_name": "alloc::alloc::handle_alloc_error"
          }
        ],
        "index": 0,
        "name": "com.apple.main-thread",
        "priority": 47.0,
        "quality_of_service": 33,
        "state": "TH_STATE_WAITING"
      }
    ],
    "total_threads": 12
  }
}

Report.Field

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L84-L88

Field Type Description
key string
at least 1 char
value string
at least 1 char

Example

JSON
{
  "key": "device_orientation",
  "value": "portrait"
}

Report.Error

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L90-L96

Field Type Description
reason string
at least 1 char
details string
at least 1 char
frames array of bitdrift.public.unary.issues.v1.Frame
at least 1 item

Example

JSON
{
  "details": "Attempted to dereference a null pointer",
  "frames": [
    {
      "frame_address": 4376830024,
      "frame_type": "DWARF",
      "image_id": "8c4e2a1b-3f56-4d89-a012-bc345678def0",
      "image_load_address": 4376829952,
      "image_path": "/usr/lib/libSystem.dylib",
      "in_app": false,
      "original_index": 3,
      "source_file": {
        "column": 5,
        "lineno": 42,
        "path": "src/main.rs"
      },
      "state": [
        "crashed"
      ],
      "status": "SYMBOLICATED",
      "symbol_address": 4376829952,
      "symbol_name": "_ZN5alloc5alloc18handle_alloc_error17h123456789abcdef0E",
      "symbolicated_name": "alloc::alloc::handle_alloc_error"
    }
  ],
  "reason": "EXC_BAD_ACCESS"
}

Report.AppMetrics

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L98-L108

Field Type Description
app_id string
at least 1 char
version string
at least 1 char
bundle_version string(Only one of bundle_version, or version_code can be set)
version_code int64(Only one of version_code, or bundle_version can be set)

Example

JSON
{
  "app_id": "com.example.app",
  "bundle_version": "1024",
  "version": "2.1.0"
}

Report.DeviceMetrics

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L110-L150

Field Type Description
time google.protobuf.Timestamp
at least 1 char
manufacturer string
at least 1 char
model string
at least 1 char
architecture bitdrift.public.unary.issues.v1.Report.DeviceMetrics.Architecture
must be a defined enum value
os string
at least 1 char
OS metrics
os_version string
at least 1 char
power_state bitdrift.public.unary.issues.v1.Report.DeviceMetrics.PowerState
must be a defined enum value
Power metrics
battery_level uint32
between 0 and 100
user_id string
at least 1 char
The unique identifier for the user/device that generated the report.

Example

JSON
{
  "architecture": "ARM64",
  "battery_level": 72,
  "manufacturer": "Apple",
  "model": "iPhone15,2",
  "os": "iOS",
  "os_version": "17.4.1",
  "power_state": "RUNNING_ON_BATTERY",
  "time": "2024-01-15T09:30:00Z",
  "user_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}

Report.DeviceMetrics.Architecture Enum

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L111-L117

Name Number Description
UNKNOWN_ARCH 0
ARM32 1
ARM64 2
X86 3
X86_64 4

Report.DeviceMetrics.PowerState Enum

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L119-L125

Name Number Description
UNKNOWN_POWER_STATE 0
RUNNING_ON_BATTERY 1
PLUGGED_IN_NO_BATTERY 2
PLUGGED_IN_CHARGING 3
PLUGGED_IN_CHARGED 4

Report.ThreadDetails

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L152-L180

Field Type Description
total_threads uint32
threads array of bitdrift.public.unary.issues.v1.Report.ThreadDetails.Thread

Example

JSON
{
  "threads": [
    {
      "active": true,
      "frames": [
        {
          "frame_address": 4376830024,
          "frame_type": "DWARF",
          "image_id": "8c4e2a1b-3f56-4d89-a012-bc345678def0",
          "image_load_address": 4376829952,
          "image_path": "/usr/lib/libSystem.dylib",
          "in_app": false,
          "original_index": 3,
          "source_file": {
            "column": 5,
            "lineno": 42,
            "path": "src/main.rs"
          },
          "state": [
            "crashed"
          ],
          "status": "SYMBOLICATED",
          "symbol_address": 4376829952,
          "symbol_name": "_ZN5alloc5alloc18handle_alloc_error17h123456789abcdef0E",
          "symbolicated_name": "alloc::alloc::handle_alloc_error"
        }
      ],
      "index": 0,
      "name": "com.apple.main-thread",
      "priority": 47.0,
      "quality_of_service": 33,
      "state": "TH_STATE_WAITING"
    }
  ],
  "total_threads": 12
}

Report.ThreadDetails.Thread

Source definition: src/bitdrift/public/unary/issues/v1/crash.proto#L153-L175

Field Type Description
active bool true if this thread is reporting the problem
name string The name of the thread.
index optional uint32 The ID of the thread.
state string Platform specific state of the thread.
priority float Platform specific priority of the thread. See https://github.com/bitdriftlabs/api/blob/main/src/bitdrift_public/fbs/issue-reporting/v1/report.fbs#L263-L266
quality_of_service optional int32 Apple specific quality of service.
frames array of bitdrift.public.unary.issues.v1.Frame The frames of the stacktrace.

Example

JSON
{
  "active": true,
  "frames": [
    {
      "frame_address": 4376830024,
      "frame_type": "DWARF",
      "image_id": "8c4e2a1b-3f56-4d89-a012-bc345678def0",
      "image_load_address": 4376829952,
      "image_path": "/usr/lib/libSystem.dylib",
      "in_app": false,
      "original_index": 3,
      "source_file": {
        "column": 5,
        "lineno": 42,
        "path": "src/main.rs"
      },
      "state": [
        "crashed"
      ],
      "status": "SYMBOLICATED",
      "symbol_address": 4376829952,
      "symbol_name": "_ZN5alloc5alloc18handle_alloc_error17h123456789abcdef0E",
      "symbolicated_name": "alloc::alloc::handle_alloc_error"
    }
  ],
  "index": 0,
  "name": "com.apple.main-thread",
  "priority": 47.0,
  "quality_of_service": 33,
  "state": "TH_STATE_WAITING"
}