Skip to content

Commit 16573c9

Browse files
alexr00Copilot
andauthored
Try to get error code better from failure to get PR (#8694)
* Try to get error code better from failure to get PR Co-authored-by: Copilot <copilot@github.com> * Also for assignable users Co-authored-by: Copilot <copilot@github.com> --------- Co-authored-by: Copilot <copilot@github.com>
1 parent 0464f76 commit 16573c9

1 file changed

Lines changed: 21 additions & 8 deletions

File tree

src/github/githubRepository.ts

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,21 @@ export function isRateLimitError(e: unknown): boolean {
144144
return false;
145145
}
146146

147+
export function getErrorCode(e: any): string | undefined {
148+
if (e.status !== undefined) {
149+
return String(e.status);
150+
} else if (e.networkError?.statusCode !== undefined) {
151+
return String(e.networkError.statusCode);
152+
} else if (e.graphQLErrors?.[0]?.extensions?.code) {
153+
return String(e.graphQLErrors[0].extensions.code);
154+
} else if (e.code !== undefined) {
155+
return String(e.code);
156+
} else if (e.name) {
157+
return e.name;
158+
}
159+
return undefined;
160+
}
161+
147162
export enum TeamReviewerRefreshKind {
148163
None,
149164
Try,
@@ -1255,10 +1270,9 @@ export class GitHubRepository extends Disposable {
12551270
succeededInOtherRepo: String(succeededInOtherRepo),
12561271
callerName
12571272
};
1258-
if (e.status !== undefined) {
1259-
properties.errorCode = String(e.status);
1260-
} else if (e.graphQLErrors?.[0]?.extensions?.code) {
1261-
properties.errorCode = String(e.graphQLErrors[0].extensions.code);
1273+
const errorCode = getErrorCode(e);
1274+
if (errorCode) {
1275+
properties.errorCode = errorCode;
12621276
}
12631277
/* __GDPR__
12641278
"pr.getPullRequestFailed" : {
@@ -1581,10 +1595,9 @@ export class GitHubRepository extends Disposable {
15811595
const properties: { errorCode?: string; usedSuggestedActors: string } = {
15821596
usedSuggestedActors: String(!!schema.GetSuggestedActors),
15831597
};
1584-
if (e.status !== undefined) {
1585-
properties.errorCode = String(e.status);
1586-
} else if (e.graphQLErrors?.[0]?.extensions?.code) {
1587-
properties.errorCode = String(e.graphQLErrors[0].extensions.code);
1598+
const errorCode = getErrorCode(e);
1599+
if (errorCode) {
1600+
properties.errorCode = errorCode;
15881601
}
15891602
/* __GDPR__
15901603
"pr.getAssignableUsersFailed" : {

0 commit comments

Comments
 (0)