From 67554cbde961825aa025a81414af0d2b30456fe0 Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Mon, 16 Sep 2024 20:18:06 -0400 Subject: [PATCH] Fix broken vulcan tests (backport #2268) (#2270) Co-authored-by: roy-dydx <133032749+roy-dydx@users.noreply.github.com> --- .../handlers/order-place-handler.test.ts | 5 +++-- .../handlers/order-remove-handler.test.ts | 6 +++--- .../handlers/order-update-handler.test.ts | 6 +++++- .../vulcan/__tests__/lib/on-message.test.ts | 19 +++++++++++++------ .../__tests__/lib/send-message-helper.test.ts | 1 + .../services/vulcan/src/handlers/handler.ts | 3 ++- 6 files changed, 27 insertions(+), 13 deletions(-) diff --git a/indexer/services/vulcan/__tests__/handlers/order-place-handler.test.ts b/indexer/services/vulcan/__tests__/handlers/order-place-handler.test.ts index f4c139b7f2..71dd5b0a9a 100644 --- a/indexer/services/vulcan/__tests__/handlers/order-place-handler.test.ts +++ b/indexer/services/vulcan/__tests__/handlers/order-place-handler.test.ts @@ -1147,15 +1147,16 @@ function expectStats(orderWasReplaced: boolean = false): void { expect(stats.timing).toHaveBeenCalledWith( `vulcan.${STATS_FUNCTION_NAME}.timing`, expect.any(Number), - { className: 'OrderPlaceHandler', fnName: 'place_order_cache_update' }, + { className: 'OrderPlaceHandler', fnName: 'place_order_cache_update', instance: '' }, ); if (orderWasReplaced) { - expect(stats.increment).toHaveBeenCalledWith('vulcan.place_order_handler.replaced_order', 1); + expect(stats.increment).toHaveBeenCalledWith('vulcan.place_order_handler.replaced_order', 1, { instance: '' }); } else { expect(stats.increment).not.toHaveBeenCalledWith( 'vulcan.place_order_handler.replaced_order', expect.any(Number), + { instance: '' }, ); } } diff --git a/indexer/services/vulcan/__tests__/handlers/order-remove-handler.test.ts b/indexer/services/vulcan/__tests__/handlers/order-remove-handler.test.ts index e4fa565578..9f94b58bc8 100644 --- a/indexer/services/vulcan/__tests__/handlers/order-remove-handler.test.ts +++ b/indexer/services/vulcan/__tests__/handlers/order-remove-handler.test.ts @@ -1989,7 +1989,7 @@ describe('OrderRemoveHandler', () => { ); expect(producerSendSpy).not.toHaveBeenCalled(); - expect(stats.increment).toHaveBeenCalledWith('vulcan.indexer_expired_order_not_found', 1); + expect(stats.increment).toHaveBeenCalledWith('vulcan.indexer_expired_order_not_found', 1, { instance: '' }); await Promise.all([ expectOrderStatus(expectedOrderUuid, OrderStatus.OPEN), @@ -2132,7 +2132,7 @@ describe('OrderRemoveHandler', () => { expect(producerSendSpy).not.toHaveBeenCalled(); expect( stats.increment, - ).toHaveBeenCalledWith('vulcan.indexer_expired_order_is_not_expired', 1); + ).toHaveBeenCalledWith('vulcan.indexer_expired_order_is_not_expired', 1, { instance: '' }); await Promise.all([ expectOrderStatus(expectedOrderUuid, OrderStatus.OPEN), @@ -2297,6 +2297,6 @@ function expectTimingStat(fnName: string) { expect(stats.timing).toHaveBeenCalledWith( `vulcan.${STATS_FUNCTION_NAME}.timing`, expect.any(Number), - { className: 'OrderRemoveHandler', fnName }, + { className: 'OrderRemoveHandler', fnName, instance: '' }, ); } diff --git a/indexer/services/vulcan/__tests__/handlers/order-update-handler.test.ts b/indexer/services/vulcan/__tests__/handlers/order-update-handler.test.ts index d887143b8b..061acf6347 100644 --- a/indexer/services/vulcan/__tests__/handlers/order-update-handler.test.ts +++ b/indexer/services/vulcan/__tests__/handlers/order-update-handler.test.ts @@ -353,6 +353,7 @@ describe('OrderUpdateHandler', () => { expect(stats.increment).toHaveBeenCalledWith( 'vulcan.order_update_total_filled_exceeds_size', 1, + { instance: '' }, ); expect(logger.info).toHaveBeenCalledWith(expect.objectContaining({ at: 'OrderUpdateHandler#getCappedNewTotalFilledQuantums', @@ -423,6 +424,7 @@ describe('OrderUpdateHandler', () => { expect(stats.increment).toHaveBeenCalledWith( 'vulcan.order_update_old_total_filled_exceeds_size', 1, + { instance: '' }, ); expectTimingStats(); }, @@ -545,6 +547,7 @@ describe('OrderUpdateHandler', () => { 1, { orderFlags: String(redisTestConstants.orderUpdate.orderUpdate.orderId!.orderFlags), + instance: '', }, ); }); @@ -581,6 +584,7 @@ describe('OrderUpdateHandler', () => { 1, { orderFlags: String(statefulOrderUpdate.orderUpdate.orderId!.orderFlags), + instance: '', }, ); }); @@ -610,7 +614,7 @@ function expectTimingStat(fnName: string) { expect(stats.timing).toHaveBeenCalledWith( `vulcan.${STATS_FUNCTION_NAME}.timing`, expect.any(Number), - { className: 'OrderUpdateHandler', fnName }, + { className: 'OrderUpdateHandler', fnName, instance: '' }, ); } diff --git a/indexer/services/vulcan/__tests__/lib/on-message.test.ts b/indexer/services/vulcan/__tests__/lib/on-message.test.ts index 254d781dc2..6fa1164793 100644 --- a/indexer/services/vulcan/__tests__/lib/on-message.test.ts +++ b/indexer/services/vulcan/__tests__/lib/on-message.test.ts @@ -67,13 +67,14 @@ describe('onMessage', () => { expect(handleUpdateMock).toHaveBeenCalledWith(update, message.headers ?? {}); expect(handleUpdateMock).toHaveBeenCalledTimes(1); - expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1); + expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1, { instance: '' }); expect(stats.timing).toHaveBeenCalledWith( 'vulcan.message_time_in_queue', expect.any(Number), 1, { topic: KafkaTopics.TO_VULCAN, + instance: '', }, ); expect(stats.timing).toHaveBeenCalledWith( @@ -83,6 +84,7 @@ describe('onMessage', () => { { success: 'true', messageType, + instance: '', }, ); @@ -104,13 +106,14 @@ describe('onMessage', () => { expect(mockHandler).not.toHaveBeenCalled(); }); - expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1); + expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1, { instance: '' }); expect(stats.timing).toHaveBeenCalledWith( 'vulcan.message_time_in_queue', expect.any(Number), 1, { topic: KafkaTopics.TO_VULCAN, + instance: '', }, ); expect(logger.crit).toHaveBeenCalledWith( @@ -131,13 +134,14 @@ describe('onMessage', () => { expect(mockHandler).not.toHaveBeenCalled(); }); - expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1); + expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1, { instance: '' }); expect(stats.timing).toHaveBeenCalledWith( 'vulcan.message_time_in_queue', expect.any(Number), 1, { topic: KafkaTopics.TO_VULCAN, + instance: '', }, ); expect(stats.timing).toHaveBeenCalledWith( @@ -147,6 +151,7 @@ describe('onMessage', () => { { success: 'false', messageType: 'unknown', + instance: '', }, ); expect(logger.crit).toHaveBeenCalledWith( @@ -164,13 +169,14 @@ describe('onMessage', () => { ); await expect(onMessage(message)).rejects.toEqual(unexpectedError); - expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1); + expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1, { instance: '' }); expect(stats.timing).toHaveBeenCalledWith( 'vulcan.message_time_in_queue', expect.any(Number), 1, { topic: KafkaTopics.TO_VULCAN, + instance: '', }, ); expect(stats.timing).toHaveBeenCalledWith( @@ -180,6 +186,7 @@ describe('onMessage', () => { { success: 'false', messageType: 'orderPlace', + instance: '', }, ); expect(logger.error).toHaveBeenCalledWith( @@ -192,8 +199,8 @@ describe('onMessage', () => { it('logs error and does not process message if message is empty', async () => { await onMessage(undefined as any as KafkaMessage); - expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1); - expect(stats.increment).toHaveBeenCalledWith('vulcan.empty_kafka_message', 1); + expect(stats.increment).toHaveBeenCalledWith('vulcan.received_kafka_message', 1, { instance: '' }); + expect(stats.increment).toHaveBeenCalledWith('vulcan.empty_kafka_message', 1, { instance: '' }); expect(logger.error).toHaveBeenCalledWith( expect.objectContaining({ message: 'Empty message', diff --git a/indexer/services/vulcan/__tests__/lib/send-message-helper.test.ts b/indexer/services/vulcan/__tests__/lib/send-message-helper.test.ts index 8979ffdcc1..82ad90048c 100644 --- a/indexer/services/vulcan/__tests__/lib/send-message-helper.test.ts +++ b/indexer/services/vulcan/__tests__/lib/send-message-helper.test.ts @@ -228,6 +228,7 @@ function expectStats( const tags: {[name: string]: string} = { topic, success: success.toString(), + instance: '', }; expect(timingSpy).toHaveBeenCalledWith(timingStat, expect.any(Number), STATS_NO_SAMPLING, tags); expect(histogramSpy).toHaveBeenCalledWith(sizeStat, size, STATS_NO_SAMPLING, tags); diff --git a/indexer/services/vulcan/src/handlers/handler.ts b/indexer/services/vulcan/src/handlers/handler.ts index 5c1a859b4b..3c7b0f8150 100644 --- a/indexer/services/vulcan/src/handlers/handler.ts +++ b/indexer/services/vulcan/src/handlers/handler.ts @@ -1,4 +1,4 @@ -import { logger, ParseMessageError } from '@dydxprotocol-indexer/base'; +import { getInstanceId, logger, ParseMessageError } from '@dydxprotocol-indexer/base'; import { ORDERBOOKS_WEBSOCKET_MESSAGE_VERSION, } from '@dydxprotocol-indexer/kafka'; @@ -65,6 +65,7 @@ export abstract class Handler { return { className: this.constructor.name, fnName, + instance: getInstanceId(), }; } }