@takaro/gameserver 0.3.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gameservers/7d2d/emitter.js +1 -1
- package/dist/gameservers/7d2d/emitter.js.map +1 -1
- package/dist/gameservers/7d2d/sdtdAPIClient.d.ts +1 -0
- package/dist/gameservers/7d2d/sdtdAPIClient.d.ts.map +1 -1
- package/dist/gameservers/7d2d/sdtdAPIClient.js +4 -24
- package/dist/gameservers/7d2d/sdtdAPIClient.js.map +1 -1
- package/dist/gameservers/generic/connectorClient.d.ts.map +1 -1
- package/dist/gameservers/generic/connectorClient.js +8 -32
- package/dist/gameservers/generic/connectorClient.js.map +1 -1
- package/package.json +1 -1
- package/src/gameservers/7d2d/__tests__/7d2dEventDetection.unit.test.ts +30 -1
- package/src/gameservers/7d2d/emitter.ts +1 -1
- package/src/gameservers/7d2d/sdtdAPIClient.ts +9 -29
- package/src/gameservers/generic/connectorClient.ts +15 -49
|
@@ -24,7 +24,7 @@ const EventRegexMap = {
|
|
|
24
24
|
[GameEvents.PLAYER_DISCONNECTED]: /(Player disconnected: )/,
|
|
25
25
|
[GameEvents.CHAT_MESSAGE]: /Chat \(from '(?<platformId>[\w\d-]+)', entity id '(?<entityId>[-\d]+)', to '(?<channel>\w+)'\): ('(?<playerName>.+)':)?(?<message>.+)/,
|
|
26
26
|
[GameEvents.PLAYER_DEATH]: /GMSG: Player '(?<name1>.+)' died|\[CSMM_Patrons\]playerDied: (?<name2>.+) \((?<steamOrXboxId>.+)\) died @ (?<xCoord>[-\d]+) (?<yCoord>[-\d]+) (?<zCoord>[-\d]+)/,
|
|
27
|
-
[GameEvents.ENTITY_KILLED]: /\[CSMM_Patrons\]entityKilled: (?<killerName>.+) \((?<steamOrXboxId>.+)\) killed (?<entityType>\w+) (?<entityName>[\w\s\u00C0-\u024F]+) with (?<weapon>.+)|Entity (?<entityName2>[\w\s\u00C0-\u024F]+) \d+ killed by (?<killerName2>.+) \d+/,
|
|
27
|
+
[GameEvents.ENTITY_KILLED]: /\[CSMM_Patrons\]entityKilled: (?<killerName>.+) \((?<steamOrXboxId>.+)\) killed (?<entityType>\w+) (?<entityName>[\w\s\u00C0-\u024F\[\]-]+) with (?<weapon>.+)|Entity (?<entityName2>[\w\s\u00C0-\u024F]+) \d+ killed by (?<killerName2>.+) \d+/,
|
|
28
28
|
};
|
|
29
29
|
export class SevenDaysToDieEmitter extends TakaroEmitter {
|
|
30
30
|
constructor(config) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../../src/gameservers/7d2d/emitter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../../src/gameservers/7d2d/emitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdtdAPIClient.d.ts","sourceRoot":"","sources":["../../../src/gameservers/7d2d/sdtdAPIClient.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"sdtdAPIClient.d.ts","sourceRoot":"","sources":["../../../src/gameservers/7d2d/sdtdAPIClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,aAAa,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,aAAa,EACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,aAAa;IAIZ,OAAO,CAAC,MAAM;IAH1B,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,GAAG,CAAsB;gBAEb,MAAM,EAAE,kBAAkB;IAqB9C,OAAO,KAAK,GAAG,GAEd;IAEK,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAIjD,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;IAI/E,kBAAkB,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAInE,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAIvE,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAIzE,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAajC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAOnE"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { addCounterToAxios, errors } from '@takaro/util';
|
|
1
|
+
import { addCounterToAxios, createAxios, logger } from '@takaro/util';
|
|
3
2
|
import { MapInfoDTO } from '../../main.js';
|
|
4
3
|
export class SdtdApiClient {
|
|
5
4
|
constructor(config) {
|
|
6
5
|
this.config = config;
|
|
7
|
-
this.
|
|
6
|
+
this.log = logger('7d2d:api');
|
|
7
|
+
this.client = createAxios({
|
|
8
8
|
baseURL: this.url,
|
|
9
|
-
});
|
|
9
|
+
}, { logger: this.log });
|
|
10
10
|
addCounterToAxios(this.client, {
|
|
11
11
|
name: 'sdtd_api_requests_total',
|
|
12
12
|
help: 'Total number of requests to the 7D2D API',
|
|
@@ -16,26 +16,6 @@ export class SdtdApiClient {
|
|
|
16
16
|
req.headers['X-SDTD-API-SECRET'] = config.adminToken;
|
|
17
17
|
return req;
|
|
18
18
|
});
|
|
19
|
-
this.client.interceptors.response.use(function (response) {
|
|
20
|
-
return response;
|
|
21
|
-
}, function (error) {
|
|
22
|
-
// Any status codes that falls outside the range of 2xx cause this function to trigger
|
|
23
|
-
if (error.response) {
|
|
24
|
-
const simplifiedError = new errors.BadRequestError('Axios error', {
|
|
25
|
-
extra: 'A request to the 7D2D server failed',
|
|
26
|
-
status: error.response.status,
|
|
27
|
-
statusText: error.response.statusText,
|
|
28
|
-
url: error.config.url,
|
|
29
|
-
});
|
|
30
|
-
return Promise.reject(simplifiedError);
|
|
31
|
-
}
|
|
32
|
-
const simplifiedError = new errors.BadRequestError('Axios error', {
|
|
33
|
-
extra: 'A request to the 7D2D server failed',
|
|
34
|
-
message: error.message,
|
|
35
|
-
url: error.config.url,
|
|
36
|
-
});
|
|
37
|
-
return Promise.reject(simplifiedError);
|
|
38
|
-
});
|
|
39
19
|
}
|
|
40
20
|
get url() {
|
|
41
21
|
return `${this.config.useTls ? 'https' : 'http'}://${this.config.host}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdtdAPIClient.js","sourceRoot":"","sources":["../../../src/gameservers/7d2d/sdtdAPIClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sdtdAPIClient.js","sourceRoot":"","sources":["../../../src/gameservers/7d2d/sdtdAPIClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectorClient.d.ts","sourceRoot":"","sources":["../../../src/gameservers/generic/connectorClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"connectorClient.d.ts","sourceRoot":"","sources":["../../../src/gameservers/generic/connectorClient.ts"],"names":[],"mappings":"AA6BA,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAgB;;IAKxB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAsB5E,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAehD"}
|
|
@@ -1,45 +1,21 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { isAxiosError } from 'axios';
|
|
2
2
|
import { config } from '../../config.js';
|
|
3
|
-
import { errors, logger } from '@takaro/util';
|
|
3
|
+
import { errors, logger, createAxios } from '@takaro/util';
|
|
4
4
|
function getConnectorClient() {
|
|
5
5
|
const log = logger('client:connector');
|
|
6
|
-
const connectorClient =
|
|
6
|
+
const connectorClient = createAxios({
|
|
7
7
|
baseURL: config.get('connector.host'),
|
|
8
8
|
headers: {
|
|
9
9
|
'Content-Type': 'application/json',
|
|
10
10
|
'User-Agent': 'Takaro',
|
|
11
11
|
},
|
|
12
|
-
});
|
|
12
|
+
}, { logger: log });
|
|
13
|
+
// Add custom interceptor for operation logging
|
|
13
14
|
connectorClient.interceptors.request.use((request) => {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
url: request.url,
|
|
17
|
-
operation: request.data?.operation,
|
|
18
|
-
});
|
|
19
|
-
return request;
|
|
20
|
-
});
|
|
21
|
-
connectorClient.interceptors.response.use((response) => {
|
|
22
|
-
log.debug(`⬅️ ${response.request.method?.toUpperCase()} ${response.request.path} ${response.status} ${response.statusText}`, {
|
|
23
|
-
status: response.status,
|
|
24
|
-
method: response.request.method,
|
|
25
|
-
url: response.request.url,
|
|
26
|
-
operation: response.config.data?.operation,
|
|
27
|
-
});
|
|
28
|
-
return response;
|
|
29
|
-
}, (error) => {
|
|
30
|
-
let details = {};
|
|
31
|
-
if (error.response?.data) {
|
|
32
|
-
const data = error.response.data;
|
|
33
|
-
details = JSON.stringify(data.error_description);
|
|
15
|
+
if (request.data?.operation) {
|
|
16
|
+
log.debug(`Operation: ${request.data.operation}`);
|
|
34
17
|
}
|
|
35
|
-
|
|
36
|
-
status: error.response?.status,
|
|
37
|
-
statusText: error.response?.statusText,
|
|
38
|
-
method: error.config?.method,
|
|
39
|
-
url: error.config?.url,
|
|
40
|
-
response: error.response?.data,
|
|
41
|
-
});
|
|
42
|
-
return Promise.reject(error);
|
|
18
|
+
return request;
|
|
43
19
|
});
|
|
44
20
|
return connectorClient;
|
|
45
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectorClient.js","sourceRoot":"","sources":["../../../src/gameservers/generic/connectorClient.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"connectorClient.js","sourceRoot":"","sources":["../../../src/gameservers/generic/connectorClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3D,SAAS,kBAAkB;IACzB,MAAM,GAAG,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAEvC,MAAM,eAAe,GAAG,WAAW,CACjC;QACE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACrC,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,YAAY,EAAE,QAAQ;SACvB;KACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAC;IAEF,+CAA+C;IAC/C,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACnD,IAAI,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;YAC5B,GAAG,CAAC,KAAK,CAAC,cAAc,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,OAAO,eAAe;IAE1B;QACE,IAAI,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,EAAU,EAAE,SAAiB,EAAE,IAAY;QACjE,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrF,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBAC/D,MAAM,IAAI,MAAM,CAAC,eAAe,CAC9B,mFAAmF,CACpF,CAAC;gBACJ,CAAC;gBAED,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;oBAC3B,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,EAAE,CAAC;wBAClE,MAAM,IAAI,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC5E,CAAC;gBACH,CAAC;YACH,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU;QAC9B,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBAC/D,MAAM,IAAI,MAAM,CAAC,eAAe,CAC9B,mFAAmF,CACpF,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -28,13 +28,25 @@ const mockGamePlayer = new IGamePlayer({
|
|
|
28
28
|
steamId: '76561198028175941',
|
|
29
29
|
});
|
|
30
30
|
|
|
31
|
+
const mockGamePlayerWithBrackets = new IGamePlayer({
|
|
32
|
+
name: '[ptz]stoun',
|
|
33
|
+
ping: undefined,
|
|
34
|
+
gameId: '0002b5d970954287afdcb5dc35af0425',
|
|
35
|
+
steamId: '76561198013829487',
|
|
36
|
+
});
|
|
37
|
+
|
|
31
38
|
describe('7d2d event detection', () => {
|
|
32
39
|
let emitStub = sandbox.stub(SevenDaysToDieEmitter.prototype, 'emit');
|
|
33
40
|
|
|
34
41
|
beforeEach(() => {
|
|
35
42
|
sandbox.restore();
|
|
36
43
|
emitStub = sandbox.stub(SevenDaysToDieEmitter.prototype, 'emit');
|
|
37
|
-
sandbox.stub(SevenDaysToDie.prototype, 'steamIdOrXboxToGameId').
|
|
44
|
+
sandbox.stub(SevenDaysToDie.prototype, 'steamIdOrXboxToGameId').callsFake(async (id: string) => {
|
|
45
|
+
if (id === '76561198013829487' || id === 'Steam_76561198013829487') {
|
|
46
|
+
return mockGamePlayerWithBrackets;
|
|
47
|
+
}
|
|
48
|
+
return mockGamePlayer;
|
|
49
|
+
});
|
|
38
50
|
});
|
|
39
51
|
|
|
40
52
|
it('[PlayerConnected]: Can detect simple player connected', async () => {
|
|
@@ -340,4 +352,21 @@ describe('7d2d event detection', () => {
|
|
|
340
352
|
expect((emitStub.getCalls()[1].args[1] as EventEntityKilled).player.name).to.equal(mockGamePlayer.name);
|
|
341
353
|
expect((emitStub.getCalls()[1].args[1] as EventEntityKilled).weapon).to.equal('Molotov Cocktail');
|
|
342
354
|
});
|
|
355
|
+
|
|
356
|
+
it('[EntityKilled] Can detect entity killed with color codes in name', async () => {
|
|
357
|
+
const emitter = new SevenDaysToDieEmitter(await mockConnectionInfo({ useCPM: true }));
|
|
358
|
+
|
|
359
|
+
await emitter.parseMessage({
|
|
360
|
+
msg: `[CSMM_Patrons]entityKilled: [ptz]stoun (Steam_76561198013829487) killed zombie [94CBFF]ELITE[-] Hazmat with Stun Baton`,
|
|
361
|
+
});
|
|
362
|
+
|
|
363
|
+
expect(emitStub).to.have.been.calledTwice;
|
|
364
|
+
|
|
365
|
+
expect(emitStub.getCalls()[0].args[0]).to.equal(GameEvents.ENTITY_KILLED);
|
|
366
|
+
expect(emitStub.getCalls()[1].args[0]).to.equal(GameEvents.LOG_LINE);
|
|
367
|
+
|
|
368
|
+
expect((emitStub.getCalls()[0].args[1] as EventEntityKilled).entity).to.equal('[94CBFF]ELITE[-] Hazmat');
|
|
369
|
+
expect((emitStub.getCalls()[0].args[1] as EventEntityKilled).player.name).to.equal('[ptz]stoun');
|
|
370
|
+
expect((emitStub.getCalls()[0].args[1] as EventEntityKilled).weapon).to.equal('Stun Baton');
|
|
371
|
+
});
|
|
343
372
|
});
|
|
@@ -46,7 +46,7 @@ const EventRegexMap = {
|
|
|
46
46
|
[GameEvents.PLAYER_DEATH]:
|
|
47
47
|
/GMSG: Player '(?<name1>.+)' died|\[CSMM_Patrons\]playerDied: (?<name2>.+) \((?<steamOrXboxId>.+)\) died @ (?<xCoord>[-\d]+) (?<yCoord>[-\d]+) (?<zCoord>[-\d]+)/,
|
|
48
48
|
[GameEvents.ENTITY_KILLED]:
|
|
49
|
-
/\[CSMM_Patrons\]entityKilled: (?<killerName>.+) \((?<steamOrXboxId>.+)\) killed (?<entityType>\w+) (?<entityName>[\w\s\u00C0-\u024F]+) with (?<weapon>.+)|Entity (?<entityName2>[\w\s\u00C0-\u024F]+) \d+ killed by (?<killerName2>.+) \d+/,
|
|
49
|
+
/\[CSMM_Patrons\]entityKilled: (?<killerName>.+) \((?<steamOrXboxId>.+)\) killed (?<entityType>\w+) (?<entityName>[\w\s\u00C0-\u024F\[\]-]+) with (?<weapon>.+)|Entity (?<entityName2>[\w\s\u00C0-\u024F]+) \d+ killed by (?<killerName2>.+) \d+/,
|
|
50
50
|
};
|
|
51
51
|
|
|
52
52
|
export class SevenDaysToDieEmitter extends TakaroEmitter {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Axios, AxiosResponse } from 'axios';
|
|
2
2
|
import { SdtdConnectionInfo } from './connectionInfo.js';
|
|
3
3
|
import {
|
|
4
4
|
CommandResponse,
|
|
@@ -7,16 +7,20 @@ import {
|
|
|
7
7
|
PlayerLocation,
|
|
8
8
|
StatsResponse,
|
|
9
9
|
} from './apiResponses.js';
|
|
10
|
-
import { addCounterToAxios,
|
|
10
|
+
import { addCounterToAxios, createAxios, logger } from '@takaro/util';
|
|
11
11
|
import { MapInfoDTO } from '../../main.js';
|
|
12
12
|
|
|
13
13
|
export class SdtdApiClient {
|
|
14
14
|
private client: Axios;
|
|
15
|
+
private log = logger('7d2d:api');
|
|
15
16
|
|
|
16
17
|
constructor(private config: SdtdConnectionInfo) {
|
|
17
|
-
this.client =
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
this.client = createAxios(
|
|
19
|
+
{
|
|
20
|
+
baseURL: this.url,
|
|
21
|
+
},
|
|
22
|
+
{ logger: this.log },
|
|
23
|
+
);
|
|
20
24
|
|
|
21
25
|
addCounterToAxios(this.client, {
|
|
22
26
|
name: 'sdtd_api_requests_total',
|
|
@@ -29,30 +33,6 @@ export class SdtdApiClient {
|
|
|
29
33
|
|
|
30
34
|
return req;
|
|
31
35
|
});
|
|
32
|
-
|
|
33
|
-
this.client.interceptors.response.use(
|
|
34
|
-
function (response) {
|
|
35
|
-
return response;
|
|
36
|
-
},
|
|
37
|
-
function (error) {
|
|
38
|
-
// Any status codes that falls outside the range of 2xx cause this function to trigger
|
|
39
|
-
if (error.response) {
|
|
40
|
-
const simplifiedError = new errors.BadRequestError('Axios error', {
|
|
41
|
-
extra: 'A request to the 7D2D server failed',
|
|
42
|
-
status: error.response.status,
|
|
43
|
-
statusText: error.response.statusText,
|
|
44
|
-
url: error.config.url,
|
|
45
|
-
});
|
|
46
|
-
return Promise.reject(simplifiedError);
|
|
47
|
-
}
|
|
48
|
-
const simplifiedError = new errors.BadRequestError('Axios error', {
|
|
49
|
-
extra: 'A request to the 7D2D server failed',
|
|
50
|
-
message: error.message,
|
|
51
|
-
url: error.config.url,
|
|
52
|
-
});
|
|
53
|
-
return Promise.reject(simplifiedError);
|
|
54
|
-
},
|
|
55
|
-
);
|
|
56
36
|
}
|
|
57
37
|
|
|
58
38
|
private get url() {
|
|
@@ -1,63 +1,29 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { AxiosInstance, isAxiosError } from 'axios';
|
|
2
2
|
import { config } from '../../config.js';
|
|
3
|
-
import { errors, logger } from '@takaro/util';
|
|
3
|
+
import { errors, logger, createAxios } from '@takaro/util';
|
|
4
4
|
|
|
5
5
|
function getConnectorClient() {
|
|
6
6
|
const log = logger('client:connector');
|
|
7
7
|
|
|
8
|
-
const connectorClient =
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
const connectorClient = createAxios(
|
|
9
|
+
{
|
|
10
|
+
baseURL: config.get('connector.host'),
|
|
11
|
+
headers: {
|
|
12
|
+
'Content-Type': 'application/json',
|
|
13
|
+
'User-Agent': 'Takaro',
|
|
14
|
+
},
|
|
13
15
|
},
|
|
14
|
-
|
|
16
|
+
{ logger: log },
|
|
17
|
+
);
|
|
15
18
|
|
|
19
|
+
// Add custom interceptor for operation logging
|
|
16
20
|
connectorClient.interceptors.request.use((request) => {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
operation: request.data?.operation,
|
|
21
|
-
});
|
|
21
|
+
if (request.data?.operation) {
|
|
22
|
+
log.debug(`Operation: ${request.data.operation}`);
|
|
23
|
+
}
|
|
22
24
|
return request;
|
|
23
25
|
});
|
|
24
26
|
|
|
25
|
-
connectorClient.interceptors.response.use(
|
|
26
|
-
(response) => {
|
|
27
|
-
log.debug(
|
|
28
|
-
`⬅️ ${response.request.method?.toUpperCase()} ${response.request.path} ${response.status} ${
|
|
29
|
-
response.statusText
|
|
30
|
-
}`,
|
|
31
|
-
{
|
|
32
|
-
status: response.status,
|
|
33
|
-
method: response.request.method,
|
|
34
|
-
url: response.request.url,
|
|
35
|
-
operation: response.config.data?.operation,
|
|
36
|
-
},
|
|
37
|
-
);
|
|
38
|
-
|
|
39
|
-
return response;
|
|
40
|
-
},
|
|
41
|
-
(error: AxiosError) => {
|
|
42
|
-
let details = {};
|
|
43
|
-
|
|
44
|
-
if (error.response?.data) {
|
|
45
|
-
const data = error.response.data as Record<string, unknown>;
|
|
46
|
-
details = JSON.stringify(data.error_description);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
log.warn(`☠️ Request errored: [${error.response?.status}] ${details}`, {
|
|
50
|
-
status: error.response?.status,
|
|
51
|
-
statusText: error.response?.statusText,
|
|
52
|
-
method: error.config?.method,
|
|
53
|
-
url: error.config?.url,
|
|
54
|
-
response: error.response?.data,
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
return Promise.reject(error);
|
|
58
|
-
},
|
|
59
|
-
);
|
|
60
|
-
|
|
61
27
|
return connectorClient;
|
|
62
28
|
}
|
|
63
29
|
|