diff --git a/src/events/CommandHandler.ts b/src/events/CommandHandler.ts index 583314e..3760624 100644 --- a/src/events/CommandHandler.ts +++ b/src/events/CommandHandler.ts @@ -13,6 +13,10 @@ export default class CommandHandler extends Event { } public async run(message: Message) { + const transaction = Sentry.startTransaction({ name: 'command-handler' }); + Sentry.configureScope((scope) => { + scope.setSpan(transaction); + }); try { this.client.db.mongo.Stat.updateOne({ name: 'messages' }, { $inc: { value: 1 } }).exec(); if (message.author.bot) return; @@ -28,12 +32,9 @@ export default class CommandHandler extends Event { } this.client.util.signale.log(`User '${message.author.username}#${message.author.discriminator}' ran command '${resolved.cmd.name}' in '${message.channel.id}'.`); try { - const transaction = Sentry.startTransaction({ name: 'command-handler' }); - Sentry.configureScope((scope) => { - scope.setSpan(transaction); - }); + const span = transaction.startChild({ op: 'Command.run' }); await resolved.cmd.run(message, resolved.args); - transaction.finish(); + span.finish(); } catch (err) { this.client.util.handleError(err, message, resolved.cmd); } finally { @@ -42,5 +43,6 @@ export default class CommandHandler extends Event { } catch (err) { this.client.util.handleError(err, message); } + transaction.finish(); } }