function unpackErrorFromField()

in src/extension/src/telemetry/parseError.ts [58:76]


function unpackErrorFromField(error: any, prop: string): any {
  // Handle objects from Azure SDK that contain the error information in a "body" field (serialized or not)
  let field: any = error && error[prop];
  if (field) {
    if (typeof field === "string" && field.indexOf("{") >= 0) {
      try {
        field = JSON.parse(field);
      } catch (err) {
        // Ignore
      }
    }

    if (typeof field === "object") {
      return field;
    }
  }

  return error;
}