diff --git a/src/modules/configuration/couch/data/services/couch.service.ts b/src/modules/configuration/couch/data/services/couch.service.ts index c2f8115..3054cd8 100644 --- a/src/modules/configuration/couch/data/services/couch.service.ts +++ b/src/modules/configuration/couch/data/services/couch.service.ts @@ -3,7 +3,7 @@ import { DatabaseListen } from '../../constants'; import { EventBus } from '@nestjs/cqrs'; import { ChangeDocEvent } from '../../domain/events/change-doc.event'; import { ConfigService } from '@nestjs/config'; - +import { apm } from 'src/core/apm'; import * as Nano from 'nano'; @Injectable() @@ -49,7 +49,10 @@ export class CouchService { const nano = this.nanoInstance; const db = nano.use(database); return await db.insert(data); - } catch (error) {} + } catch (error) { + console.log(error); + apm.captureError(error); + } } public async deleteDoc(data, database) { @@ -58,7 +61,10 @@ export class CouchService { const db = nano.use(database); const result = await db.get(data.id); await db.destroy(data.id, result._rev); - } catch (error) {} + } catch (error) { + console.log(error); + apm.captureError(error); + } } public async updateDoc(data, database) { @@ -70,7 +76,10 @@ export class CouchService { ...data, _rev: result._rev, }); - } catch (error) {} + } catch (error) { + console.log(error); + apm.captureError(error); + } } public async getDoc(id: string, database: string) { @@ -80,6 +89,8 @@ export class CouchService { const result = await db.get(id); return result; } catch (error) { + console.log(error); + apm.captureError(error); return null; } } diff --git a/src/modules/transaction/transaction/domain/usecases/handlers/midtrans-transaction-callback.handler.ts b/src/modules/transaction/transaction/domain/usecases/handlers/midtrans-transaction-callback.handler.ts index cdab14b..987f16d 100644 --- a/src/modules/transaction/transaction/domain/usecases/handlers/midtrans-transaction-callback.handler.ts +++ b/src/modules/transaction/transaction/domain/usecases/handlers/midtrans-transaction-callback.handler.ts @@ -11,6 +11,7 @@ import { TransactionChangeStatusEvent } from '../../entities/event/transaction-c import * as _ from 'lodash'; import { TABLE_NAME } from 'src/core/strings/constants/table.constants'; import { generateInvoiceCodeHelper } from '../managers/helpers/generate-invoice-code.helper'; +import { apm } from 'src/core/apm'; @EventsHandler(MidtransCallbackEvent) export class MidtransCallbackHandler @@ -22,6 +23,11 @@ export class MidtransCallbackHandler ) {} async handle(event: MidtransCallbackEvent) { + const apmTransactions = apm.startTransaction( + `callback-midtrans`, + 'handler', + ); + const data_id = event.data.id; const data = event.data.data; let old_data = undefined; @@ -33,6 +39,8 @@ export class MidtransCallbackHandler }); old_data = _.cloneDeep(transaction); + apmTransactions.setLabel('status', data.transaction_status); + if (['capture', 'settlement'].includes(data.transaction_status)) { Object.assign(transaction, { status: STATUS.SETTLED, @@ -69,5 +77,7 @@ export class MidtransCallbackHandler op: OPERATION.UPDATE, }), ); + + apmTransactions.end(); } }