1+ import * as vscode from "vscode" ;
12import { GraphQLClient } from "graphql-request" ;
2- import { GRAPHQL_ENDPOINT_STAGING , GRAPHQL_ENDPOINT_PROD } from "../constants" ;
3+ import {
4+ GRAPHQL_ENDPOINT_PROD ,
5+ API_TOKEN_HEADER_KEY ,
6+ USER_AGENT_HEADER_KEY ,
7+ USER_AGENT_HEADER_PRODUCT ,
8+ } from "../constants" ;
39import { getApiToken } from "./configuration" ;
10+ import { getExtensionVersion } from "../utils/extensionUtils" ;
11+ import { rollbarLogger } from "../utils/rollbarUtils" ;
412
513let client : GraphQLClient ;
614
@@ -15,16 +23,25 @@ export function initializeClient(): void {
1523function generateHeaders ( ) : Record < string , string > {
1624 const apiToken = getApiToken ( ) ;
1725
26+ const userAgentHeader = {
27+ [ USER_AGENT_HEADER_KEY ] : `${ USER_AGENT_HEADER_PRODUCT } /${
28+ getExtensionVersion ( ) || ""
29+ } `,
30+ } ;
31+
1832 /**
1933 * First, check if there is a token. If that is the case,
2034 * prioritize its use.
2135 */
2236 if ( apiToken && apiToken . length > 20 ) {
2337 return {
24- "X-Api-Token" : apiToken ,
38+ ...userAgentHeader ,
39+ [ API_TOKEN_HEADER_KEY ] : apiToken ,
2540 } ;
2641 }
27- return { } ;
42+ return {
43+ ...userAgentHeader ,
44+ } ;
2845}
2946
3047/**
@@ -45,6 +62,10 @@ export function doQuery(
4562 . catch ( ( e ) => {
4663 console . log ( "exception when querying the GraphQL API" ) ;
4764 console . log ( e ) ;
65+ // ignore user-not-logged errors
66+ if ( ! e . message . includes ( "user-not-logged" ) ) {
67+ rollbarLogger ( e , { variables } ) ;
68+ }
4869 return undefined ;
4970 } ) ;
5071 return query ;
@@ -65,6 +86,7 @@ export function doMutation(
6586 . catch ( ( e ) => {
6687 console . error ( "exception" ) ;
6788 console . debug ( e ) ;
89+ rollbarLogger ( e , { variables } ) ;
6890 return undefined ;
6991 } ) ;
7092 return query ;
0 commit comments