( metric: 'cpu' | 'memory', packageName: string, error: unknown, )
| 351 | } |
| 352 | |
| 353 | function annotateAndroidPerfSamplingError( |
| 354 | metric: 'cpu' | 'memory', |
| 355 | packageName: string, |
| 356 | error: unknown, |
| 357 | ): AppError { |
| 358 | if (error instanceof AppError) { |
| 359 | return new AppError( |
| 360 | error.code, |
| 361 | error.message, |
| 362 | { |
| 363 | ...(error.details ?? {}), |
| 364 | metric, |
| 365 | package: packageName, |
| 366 | }, |
| 367 | error, |
| 368 | ); |
| 369 | } |
| 370 | |
| 371 | return new AppError( |
| 372 | 'COMMAND_FAILED', |
| 373 | `Failed to sample Android ${metric} for ${packageName}`, |
| 374 | { |
| 375 | metric, |
| 376 | package: packageName, |
| 377 | }, |
| 378 | error, |
| 379 | ); |
| 380 | } |
| 381 | |
| 382 | function matchesAndroidPackageProcess(processName: string, packageName: string): boolean { |
| 383 | return processName === packageName || processName.startsWith(`${packageName}:`); |
no outgoing calls
no test coverage detected